ABAP Objects: Urgent issue

Hi,
I have a BADI ZSGL_SDP_SELECT_PROD which has a implementing class ZCL_IM_SGL_SDP_SELECTOR1.
Within this I have a method: LOC_PROD_VALUE_LIST
data: lv_value_list_ref TYPE REF TO data,
" Line of CT_VALUE_LIST
Here there is a changing parameter ct_value_list defined as type standard table.
In the BADI there is a statement:
create data lv_line like line of ct_value_list.
lv_line is defined as type ref to data.
Create values list reference
  CREATE DATA lv_value_list_ref LIKE LINE OF ct_value_list.
  ASSIGN lv_value_list_ref->* TO <lfs_value_list>.
Definition:
field-symbols: <lfs_value_list>      TYPE ANY.
CT_VALUE_LIST TYPE  ANY TABLE.
I need to figure out where the ct_value_list is populated in the BADI Implementation as it is not in the code but seems to have data based on the selection parameters. For some variants the data is populated with what is entered in the selection parameters but for some it returns abrupt data.
Any inputs will be apprciated.
cheers
Aveek

Hi,
ZSGL_SDP_SELECT_PROD and ZCL_IM_SGL_SDP_SELECTOR1 are in the customer name range. I can't find anything comparable so I can't analyze the code.
You may finc out where the BADI class is created, if it populates the field in the CONSTRUCTOR method or if the values are passed from outside.
Hope it helps,
Clemens

Similar Messages

  • ALV tree without using abap objects---------urgent

    hi
    can anybody send  me code for making alv tree without using ABAP objects.
    thanks in advance
    Aditya

    HI
    goto this link
    you will get all ALV TREE programs
    follow that code you can understand very easily
    http://www.sapdev.co.uk/reporting/alv/alvtree.htm
    <b>Reward if usefull</b>

  • ABAP Object Oriented issue

    Hello,
    The codes below works fine from a stand alone ABAP program.
    TYPES: BEGIN OF v_level_text,
                level type /BI0/HPROD_HIER-tlevel,
                text  type /BI0/TPROD_HIER-txtlg,
               END OF v_level_text.
    DATA: i_level_text type table of v_level_text.
    DATA: wa_level_text like line of i_level_text.   ***** error is from this line *******
    However, when put in a method, I get the error
    E:Within classes and interfaces, you can only use "TYPE" to refer to ABAP Dictionary types, not "LIKE" or "STRUCTURE'.
      When I changed 'LIKE' to 'TYPE', I get the error as below:
    E:The type "I_LEVEL_TEXT" is unknown, but there is a type with the similar name "V_LEVEL_TEXT". "V_LEVEL_TEXT. 
    Please advise the correct way to rewrite this code so can work in OO.
    Thanks,
    Ravi

    >
    sri Ramya Goparaju wrote:
    > Hello,
    >
    > Why don't you declare it as DATA: wa_level_text type v_level_text?
    >
    > Thanks.
    > Ramya.
    Quote!
    Types: begin of lvt_testvariable,
                end of lv_testvariable.
    DATA: lv_testvariable type lvt_testvariable.

  • Abap objects  ( urgent )

    hi
    which contents can come under abapobjects?
    plz explain .
    regds
    venky.

    Hi,
    check this link....
    http://help.sap.com/saphelp_erp2004/helpdata/en/ce/b518b6513611d194a50000e8353423/frameset.htm
    reward points for helpfull answers and close the thread if your question is solved.
    regards,
    venu.

  • ABAP Objects Design/Organization Issues

    Hi,
    I'm trying to design and implement reusable components using ABAP Objects. I'm familliar with OO concepts and have developed a few applications using C++ and Java.
    I'm trying to organize my classes into separate source files (include program in ABAP).
    ie.
    <b>include program a</b>
    CLASS a DEFINITION.
    ENDCLASS.
    <b>include program b</b>
    INCLUDE a.
    CLASS b DEFINITION.
    data x TYPE REF TO a.
    ENDCLASS.
    Lets say I want to write a report that uses both objects a and b. That means I have to include both programs. but since program b includes program a. including both programs a and b in my report would produce redeclarations of class a.
    <b>executable program c</b>
    REPORT c.
    INCLUDE a.
    INCLUDE b.   " error: redeclaration of class a
    DATA: x TYPE REF TO a.
          y TYPE REF TO b.
    This bothers me. Although it would be possible to <b>just include program b</b>, it would be a bit awkward since, i dont care if class a was used in the implementation of class b. Implementation should be abstracted from the user. Besides, everything should be explicit.
    Is there a way to organize things as such? Would importing these classes globally would solve the problem.
    Thanks.

    Emir,
    The way we do OO Programming in ABAP and other languages differ.
    In your case, it might be a better option to create these classes as global classes, so that you will not have this issue. You can SE24 to do the same.
    Regards,
    Ravi

  • ABAP Objects issue

    when calling to method in abap objects we can write
    CALL METHOD method_name
                 EXPORTING
                  param =: value1 , value2 , .... ,valuen .
    but how can i call method if it get 2 parameters ?
    means like
    CALL METHOD method_name
                EXPORTING
                 param1 =: ???????
                 param2 =: ??????? .

    Example
    CALL METHOD object=>method
        EXPORTING
          param1              = 'PARAM1'
          param2              = 'PARAM2'.
    Another example:
      CALL METHOD cl_gui_frontend_services=>file_open_dialog
        CHANGING
          file_table              = filetable
          rc                      = rc
        EXCEPTIONS
          file_open_dialog_failed = 1
          cntl_error              = 2
          error_no_gui            = 3
          not_supported_by_gui    = 4
          OTHERS                  = 5.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                   WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    Please give points if it helps.
    Message was edited by: Fuat Ulugay

  • Logical Database in Abap Objects

    Hi to All
    I want do it a program report using a Logical Database.
    Is this possible ??? But when I make a GET <node>, occurs the following error:
             "" Statement "ENDMETHOD" missing.  ""
    I'm doing the following:
    CLASS MONFIN IMPLEMENTATION.
           METHOD TRAER_DATOS.
                   GET VBRK.
           ENDMETHOD.
    ENDCLASS.
    Please, somebody tell me how I use the logical database in Abap Objects.
    Thank you very much
    Regards
    Dario R.

    Hi there
    Logical databases whilst of "some use" are not really part of OO.
    If you want to use a logical database in an abap OO program I would create a special class which just does the get data from your DB and pass this either at record or table level.
    Techniques such as GET XXXX LATE aren't really part of any OO type of application since at Object Instantiation time you should be able to access ALL the attributes of that object.
    As far as OO is concerned Logical databases are a throwback to "Dinosaur Technology".
    Since however modules such as SD and FI are still heavily reliant on relational structures (i.e linked tables etc)  then there is still some limited life in this stuff but for OO try and solve it by another method.
    If you really must use this stuff in OO then do it via a FMOD call and save the data in a table which your method will pass back to your application program.
    You can't issue a GET command directly in a method.
    Cheers
    Jimbo

  • ABAP list processing statements in ABAP Objects

    Hi,
    Based on the Online help "The ABAP statements used for list processing are not yet fully available in ABAP Objects".
    Is there any chnage planned about this for the next WAS release?
    Thanks,
    Peter

    Hi Peter
    I believe, most of the measures taken are for some compatibility and performance issues. So, there is no need to expect great changes about this.
    *--Serdar

  • Parallel processing using ABAP objects

    Hello friends,
                        I had posted in the performance tuning forum , regarding a performance issue problem , I am reposting it as it involves OO concept .
    the link for the previous posting
    Link: [Independent processing of elements inside internal table;
    Here is the scenario,
    I have a internal table with 10 records(indepentent) , and i need to process them .The processing of one record doesnt have any influence on the another . When we go for loop , the performance issue is that , the 10 th record has to wait until the 9 records get processed even though there is no dependency on the output.
    Could some one tell a way out to improve the performance..
    If i am not clear with the question , i would explain it still clearer...
    A internal table has 5 numbers , say( 1,3,4,6,7)
    we are trying to find square of each number ,,,
    If it is a loop the finding of suare of 7 has to wait until 6 is getting completed and it is waste of time ...
    This is related to parallel processing , I have refered to parallel processing documents,But I want to do this conceptually ..
    I am not using conventional procedural paradigm but Object orientedness...I am having a method which is performing this action .What am I supposed to do in that regard.
    Comradely ,
    K.Sibi

    Hi,
    As examplified by Edward, there is no RFC/asynchronous support for Methods of ABAP Objects as such. You would indeed need to "wrap" your method or ABAP Object in a Function Module, that you can then call with the addition "STARTING NEW TASK". Optionally, you can define a Method that will process the results of the Function Module that is executed asynchronously, as demonstrated as well in Edward's program.
    You do need some additional code to avoid the situation where your program takes all the available resources on the Application Server. Theoretically, you cannot bring the server or system down, as there is a system profile parameter that determines the maximum number of asynchronous tasks that the system will allow. However, in a productive environment, it would be a good idea to limit the number of asynchronous tasks started from your program so that other programs can use some as well.
    Function Group SPBT contains a set of Function Modules to manage parallel processing. In particular, FM SPBT_INITIALIZE will "initialize" a Server Group and return the maximum number of Parallel Tasks, as well as the number of free ones at the time of the initialization. The other FM of interest is SPBT_GET_CURR_RESOURCE_INFO, that can be called after the Server Group has been initialized, whenever you want to "fork" a new asynchronous task. This FM will give you the number of free tasks available for Parallel Processing at the time of calling the Function Module.
    Below is a code snippet showing how these Function Modules could be used, so that your program always leaves a minimum of 2 tasks for Parallel Processing, that will be available for other programs in the system.
          IF md_parallel IS NOT INITIAL.
            IF md_parallel_init IS INITIAL.
    *----- Server Group not initialized yet => Initialize it, and get the number of tasks available
              CALL FUNCTION 'SPBT_INITIALIZE'
              EXPORTING
                GROUP_NAME                           = ' '
                IMPORTING
                  max_pbt_wps                          = ld_max_tasks
                  free_pbt_wps                         = ld_free_tasks
                EXCEPTIONS
                  invalid_group_name                   = 1
                  internal_error                       = 2
                  pbt_env_already_initialized          = 3
                  currently_no_resources_avail         = 4
                  no_pbt_resources_found               = 5
                  cant_init_different_pbt_groups       = 6
                  OTHERS                               = 7.
              md_parallel_init = 'X'.
            ELSE.
    *----- Server Group initialized => check how many free tasks are available in the Server Group
          for parallel processing
              CALL FUNCTION 'SPBT_GET_CURR_RESOURCE_INFO'
                IMPORTING
                  max_pbt_wps                 = ld_max_tasks
                  free_pbt_wps                = ld_free_tasks
                EXCEPTIONS
                  internal_error              = 1
                  pbt_env_not_initialized_yet = 2
                  OTHERS                      = 3.
            ENDIF.
            IF ld_free_tasks GE 2.
    *----- We have at leasr 2 remaining available tasks => reserve one
              ld_taskid = ld_taskid + 1.
            ENDIF.
        ENDIF.
    You may also need to program a WAIT statement, to wait until all asynchronous tasks "forked" from your program have completed their processing. Otherwise, you might find yourself in the situation where your main program has finished its processing, but some of the asynchronous tasks that it started are still running. If you do not need to report on the results of these asynchronous tasks, then that is not an issue. But, if you need to report on the success/failure of the processing performed by the asynchronous tasks, you would most likely report incomplete results in your program.
    In the example where you have 10 entries to process asynchronously in an internal table, if you do not WAIT until all asynchronous tasks have completed, your program might report success/failure for only 8 of the 10 entries, because your program has completed before the asynchronous tasks for entries 9 and 10 in your internal table.
    Given the complexity of Parallel Processing, you would only consider it in a customer program for situations where you have many (ie, thousands, if not tens of thousands) records to process, that the processing for each record tends to take a long time (like creating a Sales Order or Material via BAPI calls), and that you have a limited time window to process all of these records.
    Well, whatever your decision is, good luck.

  • [b]MiniSap and the ABAP OBJECTS book [/b]

    Hello,
    I have purchased the book "ABAP Objects" by Keller and Kruger.  I attempted to install Minisap and ran into a lot of problems. I suspect that I need the most recent version of this product that runs on Windows XP. Can anyone direct me to place where I may download Minisap without having to pay for it again!  I really have to say that it shouldn't be this difficult to install a product that is used for training and education. So far I've spent more time trying to install than learning ABAP.

    Most of the issues with trying to install this are either answered by the html documents on the kernel disc or by the FAQ doc at www.IT-minds.com search on ABAP and look for the resources.
    One issue these documents will not solve is, if you have / had a version of SQLserver installed. As the disc only uses the MSinstaller_01 and can only use the default instance of MS SQLserver2000 desktop engine (MSDE2000).

  • Urgent issue, Suddenly no data is extracted Once I create new infopack

    Hi,
    I have an urgent issue and need help.
    We were loading data after activating business content. Every thing worked fine and the delta load was also smooth.
    However, in order to start everything afresh, I deleted all the info package, deleted the "Intialization option for the source system" AND then created my infopackage for Full upload with initialize option.
    In this case the extractor didn't find any data. Please see the following log from the monitor "status " Tab.
    "No data available
    Diagnosis
    The data request was a full update.
    In this case, the corresponding table in the source system does not
    contain any data.
    System response
    Info IDoc received with status 8.
    Procedure
    Check the data basis in the source system."
    This is not correct since we were loading data ( full and delta ) successfully before and there are data in the system. This is most probably to do with the delta queue initialization in the source system.
    We were looading data from datassource 0CRM_SALES_ORDER_I.
    Please help, we are really stuck.
    Thanks
    Arunava

    hi Anurava,
    take a look oss note 692195, i think authorization issue
    Activities : 0CRM_SALES_ACT_1
    oss 692195
    Question 2 : On executing transaction RSA3 I get records but I find 0
    records when I load data from BW request.(No Data Available).
    How can I extract data in this case?
    Suggestion 2: First check if there are any entries in the table
    CRMD_ORDER_INDEX.Only if there are entries in this table you can
    extract records.
    If this is not the case then,
    It is possible that the user does not have sufficient
    authorities for extraction of  the relevant objects.
    Additionally, please review and implement the following notes
    615670
    161570
    150315
    618953
    If you are in the release 4.0 then
    To do BW extraction with the user please see that the following
    authorization object exists(display mode is enough):
    CRM_ACT, CRM_OPP, CRM_LEAD, CRM_SAO, CRM_SEO, CRM_CO_SE, CRM_CO_SC
    CRM_CO_SA, CRM_CON_SE, CRM_CMP, CRM_ORD_OP, CRM_ORD_LP, CRM_ORD_PR
    CRM_ORD_OE, CRM_CO_PU, CRM_CO_PD, CRM_ORD_PO
    (all these objects are linked to transaction crmd_order).

  • ABAP memory performance issue

    Dear experts:
        I got a problem with ABAP memory performance issue. I need to export an internal table to ABAP memory, and it's ID is sales order number. So, I will bulid too many ABAP memory in SAP...
        Does it will couse performance issue or will it be lost?
    tyrolu

    Hi Tyrolu,
    There are some settings in basis which decides size of your abap memory.
    If you are consuming most of the abap memory by exporting heavy objects to abap memory then
    you may face a problem as many standard sap program aslo uses abap memory and
    if there is no free abap memory then they will start thowing short dumps like "Page allocation error"
    or "Could not allocate shared memory" or something like that, I don't remember exact term now.
    In some cases you won't have any problem if users are less, but as the no of concurrent users
    running your program increased then every user who runs the program would consume abap memory
    and if there is no free abap memory then this may again lead to above mentioned problem.
    Also ensure FREE MEMORY ID is used which clears abap memory immediatly.
    Other wise abap memory is cleared by the garbage collector on random basis and by that time
    your memory remains consumed and not available for other programs to use
    which may again lead to above mentioned problem.
    Regards,
    Vishal

  • Using new namespace for existing abap objects

    Hi,
    We have just reserved a namespace and want to move existing code (tabels, data-elements, ...) to this namespace. The issue we notice is that the namespace is added to the name of the abap-object, so that every code-reference to that object must be changed. This leads to a lot of work. Can this somehow be avoided?
    Regards,
    Jurgen

    Hi Jurgen!
    This can't be avoided, that's the very core of the names. Different question is: can this be automated. Not completely.
    Fastest way (and it's really not so terrible as it seems):
    - copy the objects to new names
    - make where-used list to all objects (e.g. table name)
    - search and replace in each object (e.g. include)
    - generate new version
    - delete old object
    - check all objects for missed references
    Still will take several days for one person. For very large developments you can think about a program to do the mentioned list - but this will take a lot of time to program, too.
    Regards,
    Christian

  • Adding leading zeros in abap objects.

    Can anyone explain me
    1. How to add leading zeros to a field in abap objects.
    For eg:
    data: dmb(6) type c value '123456',
    actually the output value of c should have leading zeros added to it for length 16.
    i.e '0000000000123456' . If the length of dmb is less than 16 then leading zeros should be added to that value to make it 16 as length.
    Please tell me how to do it in ABAP Objects.

    Hi Camila
    Try to use the statement
    DATA: ALPHABET(15) VALUE '     ABCDEFGHIJ',
          M1(4)        VALUE 'ABCD',
          M2(6)        VALUE 'BJJCA '.
    SHIFT ALPHABET LEFT DELETING LEADING M1.
    The field
    ALPHABET
    remains unchanged.
    SHIFT ALPHABET LEFT DELETING LEADING SPACE.
    The field ALPHABET now has the following contents:
    'ABCDEFGHIJ     '.
    SHIFT ALPHABET RIGHT DELETING TRAILING M2.
    <b>ALPHABET</b> now has the following contents:
    '      ABCDEFGHI'.
    <u><b>IN CHARACTER MODE</b></u>
    <b>Effect</b>
    This is the default setting (see above), and the addition is therefore optional.
    <b>Note
    Performance:</b>
    For performance reasons, you should avoid using SHIFT in WHILE loops.
    The runtime required to shift a field with length 10 by one character to the right or left requires about 5 msn (standardized microseconds). A cyclical shift requires around 7 msn. The runtime for the ...
    LEFT DELETING LEADING
    ... variant is around 3.5 msn, for ...
    RIGHT DELETING TRAILING
    ... around 4.5 msn.
    Reward all helpfull answers
    Regards
    Pavan

  • Significance of Interfaces in ABAP Objects

    Hi Guys, here I have a query -
    Why do we use Interfaces in ABAP Objects?, and what is the significance of Interfaces in ABAP Objects?
    Please clarify the above with a suitable example.

    Moderator message - Welcome to SCN.
    But
    Moderator message - But this isn't a training forum. Please ask a specific question - post locked

Maybe you are looking for

  • Unable to Load DLL (oci.dll)

    I am trying to connect to Oracle 10g database using Visual Studio.Net 2003, System.Data.OracleClient namespace. I have created a Web service running on my workstation's local web server, that uses a connection to an Oracle database (my connctionStrin

  • COPA unable to create as charac data element with LIFNR as domain HELP ASAP

    Hi We had a data element created with KUNNR as domain. We added to PAPARTNER STRUCUTRE and created as characteristics in our operating concern. Now there is a need to change to LIFNR as domain instead of KUNNR. There we created a new dala element wit

  • What TVs are compatible with Air Drop?

    We are shopping for a new TV but want to make sure it is a device that is compatible with using Air Drop from our iPads/iPhones. What feature should we look for in a new TV that would ensure it is a capable device with Air Drop?

  • APEX and BI Publisher - chart not displayed in html

    Hi All, I have created a report using BI Publisher and created a report query and uploaded the RTF template into APEX. The report contains a chart then a table. When I run the report in HTML format the chart is not rendered, but the table is. The bro

  • InsertXML() query construction

    Hi, is there any possibility of getting additional information about what happens when calling the method insertXML() from class OracleXMLSave? In particular I would be interested in seeing the query that XSU constructs in order to insert XML documen