Regarding ABAP-HR Code

Hi Friends
I am new to ABAP-HR.I am trying to analyze below peace of code but not yet succeeded till.
So any one please illustrates me the below peace of code step-by-step.
DATA: is_i77pr LIKE  t77pr.
  DATA: temp1 LIKE result_struc_obj.
  DATA: temp2 LIKE result_struc_obj.
  DATA: tmp_pnext LIKE struc-pnext.
  DATA: mgr_name LIKE objec-stext.
  DATA: tmp_sytabx LIKE sy-tabix.
  CLEAR: result_tab_obj.
  REFRESH: result_tab_obj.
evpath = 'ZPXO_GEN'.
  CALL FUNCTION 'RH_STRUC_GET_MULTIPLE_ROOTS'
    EXPORTING
      act_wegid                  = evpath
  ACT_INT_FLAG               =
  ACT_PLVAR                  = ' '
     act_svect                  = '1'
     act_begda                  = sy-datum
     act_endda                  = sy-datum
     act_tdepth                 = 0
     act_tflag                  = 'X'
     act_vflag                  = 'X'
     act_sflag                  = 'X'
     act_recurs                 = 'X'
     act_text_buffer_fill       = 'X'
     authority_check            = 'X'
  BUFFER_MODE                = ' '
     keep_order                 = 'X'
IMPORTING
  ACT_PLVAR                  =
  ROOT_COPY                  =
    TABLES
      root_objects               = root_objects
     result_objec               = result_objec_obj
     result_struc               = result_struc_obj
   EXCEPTIONS
     no_plvar_found             = 1
     no_entry_found             = 2
     path_not_found             = 3
     root_not_found             = 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.
Delete Root Org Unit's Chief Personnel No.
  LOOP AT root_objects.
    REFRESH: result_tab_obj.
    CLEAR: result_tab_obj.
    CALL FUNCTION 'RH_STRUC_GET'
      EXPORTING
        act_otype      = 'O'
        act_objid      = root_objects-objid
        act_wegid      = 'ZPX_CFPN'
        act_begda      = begda
        act_endda      = endda
      TABLES
        result_tab     = result_tab_obj
      EXCEPTIONS
        no_plvar_found = 1
        no_entry_found = 2
        OTHERS         = 3.
    LOOP AT result_tab_obj WHERE otype = 'P'.
    Append Root Org Unit's Mgr Name into Description...
      CLEAR: mgr_name.
      LOOP AT result_objec_obj WHERE otype = 'P' AND objid = result_tab_obj-objid.
        mgr_name = result_objec_obj-stext.
        CONCATENATE mgr_name ')' INTO mgr_name.
        CONCATENATE '(Mgr:' mgr_name INTO mgr_name
        SEPARATED BY space.
        EXIT.
      ENDLOOP.
      IF sy-subrc = 0.
        LOOP AT result_objec_obj WHERE otype = 'O' AND objid = root_objects-objid.
          CONCATENATE result_objec_obj-stext mgr_name INTO result_objec_obj-stext
          SEPARATED BY space.
          MODIFY result_objec_obj. CLEAR result_objec_obj.
        ENDLOOP.
      ENDIF.
      CLEAR: temp1, temp2.
    Get references of Chief person...
      LOOP AT result_struc_obj
              WHERE otype =  result_tab_obj-otype
              AND objid = result_tab_obj-objid.
        MOVE-CORRESPONDING result_struc_obj TO  temp1.
      ENDLOOP.
    Get reference of Root Org.Unit...
      LOOP AT result_struc_obj
              WHERE otype =  root_objects-otype
              AND objid = root_objects-objid.
        MOVE-CORRESPONDING result_struc_obj TO  temp2.
      ENDLOOP.
      CLEAR : tmp_sytabx .
      LOOP AT result_struc_obj
               WHERE otype =  result_tab_obj-otype
               AND objid = result_tab_obj-objid
               AND pup = temp2-seqnr.
        tmp_sytabx  = sy-tabix.
      ENDLOOP.
      LOOP AT result_objec_obj
             WHERE otype =  result_tab_obj-otype
             AND objid = result_tab_obj-objid.
        IF sy-tabix = tmp_sytabx.
          DELETE result_objec_obj.
          EXIT.
        ENDIF.
      ENDLOOP.
      DELETE result_struc_obj
             WHERE otype =  result_tab_obj-otype
             AND objid = result_tab_obj-objid
             AND pup = temp2-seqnr.
    1. If the value in field STRUCS-PDOWN for object U, which is
    located above D, corresponds to the value STRUCS-SEQNR for D,
    set the value of U STRUCS-PDOWN to the value of D STRUCS-PNEXT.
    Reduce the value of U STRUCS-VCOUNT by 1.
      CLEAR: tmp_pnext.
      tmp_pnext = temp1-pup.
      LOOP AT result_struc_obj WHERE seqnr = tmp_pnext.
        result_struc_obj-vcount = result_struc_obj-vcount - 1.
        MODIFY result_struc_obj. CLEAR result_struc_obj.
      ENDLOOP.
      CLEAR: tmp_pnext.
      tmp_pnext = temp1-seqnr.
      LOOP AT result_struc_obj WHERE pdown = tmp_pnext.
        result_struc_obj-pdown = temp1-pnext.
        MODIFY result_struc_obj. CLEAR result_struc_obj.
      ENDLOOP.
    2. If an object P exists, for which the value STRUCS-PNEXT corresponds
    to the value of D STRUCS-SEQNR, set the value of P STRUCS-PNEXT
    to the value of D STRUCS-PNEXT.
      CLEAR: tmp_pnext.
      tmp_pnext = temp1-seqnr.
      LOOP AT result_struc_obj WHERE pnext = tmp_pnext.
        result_struc_obj-pnext = temp1-pnext.
        MODIFY  result_struc_obj. CLEAR result_struc_obj.
      ENDLOOP.
    3. If an object N exists, for which the value STRUCS-PREV corresponds to
    the value of D STRUCS-SEQNR, set the value of N STRUCS-PPREV to the value
    of D STRUCS-PPREV.
      CLEAR: tmp_pnext.
      tmp_pnext = temp1-seqnr.
      LOOP AT result_struc_obj WHERE pprev = tmp_pnext.
        result_struc_obj-pprev = temp1-pprev.
        MODIFY  result_struc_obj. CLEAR result_struc_obj.
      ENDLOOP.
    ENDLOOP.
  ENDLOOP.
@ start of code - vinay golchha
Data declarations
  data : root_orgid type realo.
  DATA : root_mgr_pernr TYPE realo.
  DATA : emp_pernr TYPE realo.
  DATA : mgr_pernr TYPE realo.
  DATA : org_unit_id TYPE realo.
  DATA : pernr_tabix LIKE sy-tabix.
  DATA : struc_tabix LIKE sy-tabix.
  DATA: leading_pos LIKE hrobject OCCURS 0 WITH HEADER LINE.
  DATA : direct_emp_flag TYPE c VALUE ' '.
  DATA: i1001       LIKE  hri1001 OCCURS 0 WITH HEADER LINE.
  DATA : root_mgr_pernr1 TYPE sobid.
  DATA : result_objec_obj1 LIKE STANDARD TABLE OF result_objec_obj WITH HEADER LINE.
  DATA : org_seqnr TYPE sseqnr.
Loop through all the root org units
  LOOP AT root_objects.
    result_objec_obj1[] = result_objec_obj[].
  Get the Root Org Unit
    root_orgid = root_objects-objid.
  Get the Manager of the Root Org Unit
    CALL FUNCTION 'RH_GET_LEADER'
      EXPORTING
        plvar                     = '01'
        keydate                   = sy-datum
        otype                     = 'O'
        objid                     = root_orgid
      IMPORTING
        leader_id                 = root_mgr_pernr
      EXCEPTIONS
        no_leader_found           = 1
        no_leading_position_found = 2
        OTHERS                    = 3.
    IF sy-subrc <> 0.
     MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
             WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
  Looping through the Employees for Root Org Unit
    LOOP AT result_objec_obj1 WHERE otype = 'P'.
      emp_pernr = result_objec_obj1-objid.
    Set thye direct employee flag to blank
      direct_emp_flag = ' '.
    Get the leading positions
      REFRESH leading_pos.
      CALL FUNCTION 'RH_GET_LEADING_POSITION'
        EXPORTING
          plvar             = '01'
          otype             = 'P'
          sobid             = emp_pernr
        TABLES
          leading_pos       = leading_pos
        EXCEPTIONS
          no_lead_pos_found = 1
          OTHERS            = 2.
      IF sy-subrc <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    Loop through the leading positions if there are
    multiple leading positions
      LOOP AT leading_pos.
        org_unit_id = leading_pos-objid.
      Get the Manager
        REFRESH i1001.
        CALL FUNCTION 'RHOM_READ_RELAT_BUFFERED'
          EXPORTING
            otype           = 'S'
            objid           = leading_pos-objid
            plvar           = '01'
            subty           = 'A008'
          TABLES
            i1001           = i1001
          EXCEPTIONS
            no_active_plvar = 1
            OTHERS          = 2.
        IF sy-subrc <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
        root_mgr_pernr1 = root_mgr_pernr.
        READ TABLE i1001 WITH KEY sobid = root_mgr_pernr1.
      If manager found set directly reporting flag as 'X'
        IF sy-subrc = 0.
          direct_emp_flag = 'X'.
          EXIT.
        ENDIF.
      ENDLOOP.
    If the current Employee manager is NOT equal to Root Org Unit's Manager
      IF direct_emp_flag = ' '.
      Get sequence number of org unit
        READ TABLE result_struc_obj
          WITH KEY otype = root_objects-otype
          objid = root_objects-objid.
        org_seqnr = result_struc_obj-seqnr.
       Remove entry from result_struc_obj and modify the table accordingly
        CLEAR : temp1, temp2,tmp_sytabx.
        LOOP AT result_struc_obj
                WHERE otype = 'P'
                AND objid = emp_pernr
                AND pup = org_seqnr.
          MOVE-CORRESPONDING result_struc_obj TO temp1.
        ENDLOOP.
        LOOP AT result_struc_obj
                 WHERE otype = root_objects-otype
                 AND objid = root_objects-objid.
          MOVE-CORRESPONDING result_struc_obj TO temp2.
        ENDLOOP.
        CLEAR struc_tabix.
        LOOP AT result_struc_obj
                WHERE otype = 'P'
                AND objid = emp_pernr
                AND pup = temp2-seqnr.
          struc_tabix = sy-tabix.
        ENDLOOP.
        LOOP AT result_objec_obj
          WHERE otype ='P'
          AND objid = emp_pernr.
       Delete entry for directly reporting employee
          IF sy-tabix = struc_tabix.
            DELETE result_objec_obj.
            EXIT.
          ENDIF.
        ENDLOOP.
        DELETE result_struc_obj
        WHERE otype = 'P'
        AND objid = emp_pernr
        AND pup = temp2-seqnr.
      Delete count of vertically related objects by 1
      if record deleted
        CLEAR tmp_pnext.
        tmp_pnext = temp1-pup.
        LOOP AT result_struc_obj WHERE seqnr = tmp_pnext.
          result_struc_obj-vcount = result_struc_obj-vcount - 1.
          MODIFY result_struc_obj.
          CLEAR result_struc_obj.
        ENDLOOP.
      Set the down pointer of the record previous to the
      deleted one to the next pointer of the deleted one
        CLEAR tmp_pnext.
        tmp_pnext = temp1-seqnr.
        LOOP AT result_struc_obj WHERE pdown = tmp_pnext.
          result_struc_obj-pdown = temp1-pnext.
          MODIFY result_struc_obj.
          CLEAR result_struc_obj.
        ENDLOOP.
      Set the next pointer of the record previous to the deleted
      one to the next pointer of the deleted one
        CLEAR tmp_pnext.
        tmp_pnext = temp1-seqnr.
        LOOP AT result_struc_obj WHERE pnext = tmp_pnext.
          result_struc_obj-pnext = temp1-pnext.
          MODIFY result_struc_obj.
          CLEAR result_struc_obj.
        ENDLOOP.
      Set the value of previous pointer
        CLEAR tmp_pnext.
        tmp_pnext = temp1-seqnr.
        LOOP AT result_struc_obj WHERE pprev = tmp_pnext.
          result_struc_obj-pprev = temp1-pprev.
          MODIFY result_struc_obj.
          CLEAR result_struc_obj.
        ENDLOOP.
      ENDIF.
    ENDLOOP.
  ENDLOOP.
@ End of Code - Vinay Golchha
  REFRESH: result_objec, result_struc.
  CLEAR: result_objec, result_struc.
  result_objec[] = result_objec_obj[].
  result_struc[] = result_struc_obj[].
Regards,
Sree

Hi,
1) DATA: temp1 LIKE result_struc_obj.-
   it declares temp1 as a internal table of  result_struc_obj table that means temp1 posses all functionality, attributes of result_struc_obj.
and we are not directly make any changes to database table for that we must have create internal table.
2)  In the HR ABAP, there are function modules for everything.
like in your code 'RH_GET_LEADER' FM gives manager ID of that person.
If you want to know how this function module works just go to
SE37->give function module name->display-> on the Toolbar you will see ' Function module Documentation' option.
3) IF sy-subrc = 0.
sy-subrc 0 means your Function module worked out and get output. otherwise there must be some error.
4) CLEAR- clears header line of the internal table.
    REFRESH- clears contents or body of the table.
5) LOOP AT root_objects.
   ENDLOOP.
it will go through each record of the table root_objects. it will help when you want to check each record of the table. we can give any conditon after loop at. on that basis loop will execute.
6) READ TABLE -
it reads one record of the table at a time.
7) MOVE-CORRESPONDING - it will move all record to respective fields.
reward if useful.

Similar Messages

  • ABAP proxy code using internal table

    Hi XI guru's,
    Good Afternoon,
    My Scenario is ABAP Proxy to file using ztable.
    i am getting data from Sap R/3 data base as Ztable. using this Ztable i have to write ABAP Proxy code. I generated ABAP Proxy and mentioned all below.Please send me ABAP Proxy code using this details. This is very urgent. Please help me.
    ABAP proxy class:   zco_mioa_tata
    structure              :   zmt_tata
    structure                :   zdt_tata
    structure                :   zdt_tata_employee
    Table                :   zdt_tata_employee_tab
    Ztable                :   zcnu_proxy_table
    outbound structure:
    mt_tata
        employee
    thanks and regards
    sai

    Sai,
    I guess this will help you.
    1. Proxies can be a server proxy or client proxy. In our scenarios we require proxies to send or upload the data from/into SAP system.
    2. One more thing proxies can be used if your WAS &#8805; 6.2.
    3. Use Tcode SPROXY into R/3 system for proxy use.
    4. To send the data from R/3 system we use OUTBOUND PROXY. In Outbound proxy you will simply write an abap code to fetch the data from R/3 tables and then send it to XI. Below is the sample code to send the data from R/3 to XI.
    REPORT zblog_abap_proxy.
    DATA prxy TYPE REF TO zblogco_proxy_interface_ob.
    CREATE OBJECT prxy.
    DATA it TYPE zblogemp_profile_msg.
    TRY.
    it-emp_profile_msg-emp_name = 'Sarvesh'.
    it-emp_profile_msg-empno = '01212'.
    it-emp_profile_msg-DEPARTMENT_NAME = 'NetWeaver'.
    CALL METHOD prxy->execute_asynchronous
    EXPORTING
    output = it.
    commit work.
    CATCH cx_ai_system_fault .
    DATA fault TYPE REF TO cx_ai_system_fault .
    CREATE OBJECT fault.
    WRITE :/ fault->errortext.
    ENDTRY.
    Receiver adapter configurations should be done in the integration directory and the necessary sender/receiver binding should be appropriately configured. We need not do any sender adapter configurations as we are using proxies.
    5. To receive data into R/3 system we use INBOUND PROXY. In this case data is picked up by XI and send it to R/3 system via XI adapter into proxy class. Inside the inbound proxy we careate an internal table to take the data from XI and then simply by using the ABAP code we update the data inot R/3 table. BAPI can also be used inside the proxy to update the data into r/3.
    I hope this will clear few doubts in proxy.
    Just go through these links:
    http://help.sap.com/saphelp_nw04/helpdata/en/14/555f3c482a7331e10000000a114084/frameset.htm
    ABAP Server Proxies By Siva Maranani
    /people/siva.maranani/blog/2005/04/03/abap-server-proxies
    /people/sravya.talanki2/blog/2006/07/28/smarter-approach-for-coding-abap-proxies
    /people/vijaya.kumari2/blog/2006/01/26/how-do-you-activate-abap-proxies
    /people/ravikumar.allampallam/blog/2005/03/14/abap-proxies-in-xiclient-proxy
    File to R/3 via ABAP Proxy with good example
    /people/prateek.shah/blog/2005/06/14/file-to-r3-via-abap-proxy
    http://help.sap.com/saphelp_nw2004s/helpdata/en/48/d5a1fe5f317a4e8e35801ed2c88246/frameset.htm
    Generating java proxies..
    /people/prasad.ulagappan2/blog/2005/06/27/asynchronous-inbound-java-proxy
    /people/rashmi.ramalingam2/blog/2005/06/25/an-illustration-of-java-server-proxy
    Synchronous Proxies:
    Outbound Synchronous Proxy
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/profile/abap%2bproxy%2boutbound%2bprogram%2b-%2bpurchase%2border%2bsend
    Inbound Synchronous Proxy
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/profile/abap%2bproxy%2binbound%2bprogram%2b-%2bsales%2border%2bcreation
    Regards,
    Sarvesh

  • Debugging ABAP Proxy code

    Hi,
    I have problem in ABAP Proxy. When i upload a XML and test the ABAP Proxy code it is working fine, but when i trigger the change from sender, its updating the wrong value in the database.
    I checked the incoming and the converted XML, everything is correct and there is no prob in the XI.
    Please tell me is there any way to debug the ABAP Proxy during the actual proccessing i,e. when the change is triggered from the sender.
    Thanks and Regards,
    Arunsri

    I've had the same problem before...everything seemed fine but the xml was not updating the desired values - you have 2 choices - 1. Enable the debugging, but if you have a high volume scenario, then it may cause some issues. Also, I am not sure if you plan to do this in production - as you know, debugging in production is a big No-No.
    Option 2 is to just take the stream and store it as a file in the OS. This is what we followed and we were able to figure out the issue with the xml. Make sure you write it in such a way that you can turn it off immediately. In our case, it worked fine for all suppliers but one and this one supplier was sending a double spaced character in between, which was causing the issue.
    Regards,
    Srini

  • Regarding ABAP Query authorization group

    Hi Team,
    This is regarding ABAP Query!
    I have created one authorization group, for testing i have assigned my id in authorization group.
    After creation of ABAP query,standard program got generated. Now i have created one transaction code at the last for the ABAP Query.
    Now the isse is even though i have deleted my id from the authorization group. I am able to execute the query from SQ01 and with the Transaction code .
    It should not happen...i want who soever id is mapped to the transaction code ...that member should only be able to run that query, otherwise there is no use of authorization group.
    Please help me out in this case.
    Thanks & Regards,
    Anil Kumar Sahni

    Are you sure that you don't have access to that authorisation group? Execute report RSUSR002. In the 'Authorization Object 1' block inform  S_TABU_DIS in 'Auth.Object' and accept. Then inform Activity=03 and Auth.Gruop= your group.
    You will get a list of all the users which, theoretically, will be able to execute the query. If you press 'Roles' or 'Profiles' in the toolbar of the listing you will get to know why you have authorisation. May be you have the SAP_ALL profile.
    Also, one more thing to take into account: how have you created your transaction? Is it referring directly to the generated report? Then it is an error, you should execute program SAP_QUERY_CALL. Read this post: [Relate transaction to query;

  • Observer Design Pattern: Looking for redesign ABAP OO code example

    Hello folks,
    I am looking for an example for ABAP OO code that has been redesigned by applying the Observer Design Pattern. I would be very interested in both the code before as well as the code after the pattern is being applied.
    Thanks in advance and kind regards, Alex

    Observer can be implemented using the EVENTS.
    I had recently implemented the observer at one of my client's place. I had screen with so many ALVs. One ALV was kind of editable and other were just showing the information of the current row as well as some total information. So, initially I started with the Main ALV and SUB(1 and 2) for other ALVs. Now, when I need to refresh my ALVs based on the main ALV data, I had to explicitly update the data of the each Sub ALV. The code was kind of static and requirement was not yet fixed.
    Later on we need to add one more ALV on the same screen. It was easy to change the existing method where I was doing the explicit refresh of each ALV. But I thought of using the Events.
    I created an event REFRESH_DETAILS for main ALV. so, when data gets changed (which I was catching by DATA_CHANGED event of ALV), I raise the event.
      RAISE EVENT REFRESH_DETAILS
        exporting new_data = it_Data.
    In Sub ALVs, I created the event handler method to handle the event REFRESH_DETAILS of the main ALV.
      methods: handle_refresh_details
          for event REFRESH_DETAILS of ZCL_MAIN_ALV.
    I also had to register the Handler.
      SET HANDLER me->handle_refresh_details FOR ALL INSTANCES.
    I'll soon write a post on my [ABAP Help blog|http://help-abap.zevolving.com/] with all the details.
    Regards,
    Naimesh Patel

  • ABAP mapping code in XI or SAP

    Hi All,
             Where do I need to write the ABAP mapping code, in XI or SAP. CAn it be written at either of them and used in interface mapping?
    Regards,
    XIer

    Hi,
    These are some of the weblogs which they have used ABAP mapping. In all of them they have used it in XI only. Also I have never seen the way you have mentioned.
    /people/r.eijpe/blog/2005/11/04/using-abap-xslt-extensions-for-xi-mapping
    /people/rahul.nawale2/blog/2006/11/01/dynamically-sending-a-mail-to-the-po-creator-using-xslt-abap-mapping
    /people/michal.krawczyk2/blog/2006/09/20/xi-abap-mapping-logs--more-standard-better-visibility
    Regards,
    ---Satish

  • ABAP SUDOKU code

    Hi plzz can anybody plzz send me the ABAP SUDOKU code (executable) plzz its very urgent plzzzz..
    points will be rewarded ...

    Hello,
    Go to these: [https://www.sdn.sap.com/irj/sdn/wiki?path=/display/snippets/abap%2bsolution%2bto%2bmedium%2band%2blow%2bcomplex%2bsudoku%2bpuzzles] and [https://wiki.sdn.sap.com/wiki/display/Community/ABAP+Games] to get more games!
    Regards,

  • How to document ABAP Source Code like doxygen

    Hi, all.
    Is there any way or tool to generate HTML from ABAP source code? Like doxygen?
    What i want to do is like the following.
    - Retrieve all the ABAP source code of a specified package.
    - Generate HTML(coloring of keywords or so) from the ABAP source code.
    Best Regards.
    Sejoon Ahn

    You dont need to check the source code to find whether program is moved to PRD.
    Just check the version management of program in development itself.
    Click on transport log of request to find it.

  • ABAP source code is written "by hand" or automatically?

    Hi all,
    I would like to modify the report "Open Items - Vendor Due Date Forecast" created by T. S_ALR_87012084. 
    With SE93 i found the name of the program RFKOFW00, which are referring to the T. S_ALR_87012084. T. S_ALR_87012084. (Parameter: D_SREPOVARI-REPORT = RFKOFW00) and with SE38 i have seen the ABAP source code of the program RFKOFW00.
    My questions are:
    1) The ABAP  source code of the program RFKOFW00 is written "by hand", or automatically by one of the SAP tools, for example Report Painter/Writer, SAP queryu2026..? It seems to me that it is written "by hand". Is this true?
    2) In general, how can i tell if a SAP ABAP program is written "by hand" or automatically by one of SAP tools? I know that one way to understand is that source code, written by hand is more clear.
    Is there a way to understand, more accurate, more secure?
    Thanks in advance
    Serena

    Hi ,
    if the code is automatically created, there will be a comment line in the beginning of the code which says
    Generated function module for ..........
    Please do not modify or copy this function module
    Regards

  • Function Module to get ABAP source code for a specific version

    Hi all
    Is there a function module that I can use to get the source code of another function module at a specific version?
    For example, can I call a function module passing in "FM_NAME" and "FM_VERSION" and have it return the lines of code associated with that object?
    Thanks in advance.
    Stuart

    Thanks guys
    That's incredibly helpful! I have one more question that I just thought of last night...
    Is there a way to hook into the code activation process? I want to be able to take a snapshot of the ABAP source code at each point when it is activated for use in another system, but need to be able to intercept this event and get the source code at that point in time.
    Any ideas?
    Thanks!

  • Abap mapping code

    Hi friends
    I am new to Abap mapping PLZ can any one helpme on abap mapping code
    with Source structure and target structure
    Message was edited by:
            Viswanadh Vadde

    Hi !!
    refer the below links
    BAP Mapping is used whenever you explicitly need to build your output XML structure . Its entirely depends on your call which approach you want to adopt i.e. JAVA mapping or ABAP mapping as in both the cases you need to explicitly build the output structure . ABAP Mapping however creates a DOM tree in the memory . Therefore it can be a performance issue whenever your source structure is complex . In case you need an idea of how to go about ABAP mapping here is a link which you can refer
    http://help.sap.com/saphelp_nw04/helpdata/en/47/b5413acdb62f70e10000000a114084/frameset.htm
    Also ABAP mappings have the handicap that they are separated from usual development in Repository. Additional there is more (ABAP, DOM) experience required as for example for XSLT or graphical mapping (my point of view). So they are used for special reasons like access to ABAP stack (transparent tables!).
    Refer to following SDN Demo which explains the need and how to do the ABAP mapping.
    https://www.sdn.sap.com/irj/sdn/docs?rid=/webcontent/uuid/110ff05d-0501-0010-a19d-958247c9f798#jdi [original link is broken] [original link is broken] [original link is broken]
    Comparing Performance of Mapping Programs
    /people/udo.martens/blog/2006/08/23/comparing-performance-of-mapping-programs
    ABAP Mapping Blogs
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/e3ead790-0201-0010-64bb-9e4d67a466b4
    /people/sameer.shadab/blog/2005/09/29/testing-abap-mapping
    How to Use ABAP Mapping
    https://wwwn.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5c46ab90-0201-0010-42bd-9d0302591383
    Some more
    ABAP Mapping
    I suggest you also go through these links to know more on ABAP Mapping:
    https://websmp101.sap-ag.de/~sapdownload/011000358700003082332004E/HowToABAPMapping.pdf
    /people/ravikumar.allampallam/blog/2005/02/10/different-types-of-mapping-in-xi
    /people/r.eijpe/blog
    ABAP Mapping Vs Java Mapping.
    Re: Message Mapping of type ABAP Class not being shown
    Refer to following SDN Demo which explains the need and how to do the ABAP mapping.
    https://www.sdn.sap.com/irj/sdn/docs?rid=/webcontent/uuid/110ff05d-0501-0010-a19d-958247c9f798#jdi [original link is broken] [original link is broken] [original link is broken]
    This document will help you to create ABAP Mapping.
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/3.0/how%20to%20use%20abap-mapping%20in%20xi%203.0.pdf
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5c46ab90-0201-0010-42bd-9d0302591383
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5c46ab90-0201-0010-42bd-9d0302591383
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/46759682-0401-0010-1791-bd1972bc0b8a
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5c46ab90-0201-0010-42bd-9d0302591383
    /people/sameer.shadab/blog/2005/09/29/testing-abap-mapping
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5c46ab90-0201-0010-42bd-9d0302591383
    /people/r.eijpe/blog/2005/11/04/using-abap-xslt-extensions-for-xi-mapping
    why Abap Mapping and how to acheive it
    https://www.sdn.sap.com/irj/sdn/docs?rid=/webcontent/uuid/110ff05d-0501-0010-a19d-958247c9f798#jdi [original link is broken] [original link is broken] [original link is broken]
    <b>Pls reward if useful</b>

  • How to retrieve Hidden ABAP program code

    Hi All,
    If a ABAP Source code is hidden by some special charaters or some other report.
    is there any way to retrieve the same.
    thanks
    Alexander

    Which release are you on and what is the name of the program?
    You first should find out how the code was hidden, and (possibly) why it was hidden (from you). Try to display the code from the ABAP Editor in the debugger. What is sy-subrc?
    Look in the attributes of the code (and it's package / transport request => go to the development system if applicable) and find out who is the author and released the transport and did the QA checks.
    Ask that person.
    If it is a $tmp program, then you will need to break it open or ask SAP to do it for you.
    Cheers,
    Julius

  • Double Click Navigation with ABAP Source Codes of Reports On ABAP Workbench

    Hi,
    i have a problem about double click on abap source code on abap workbench. double clicking doesn't work after first double clicked on abap codes. that is going to row of first double clicking.
    did anyone have the same problem? can somebody help me please?
    thanks.

    Nurullah RÜSTEM wrote:
    > isn't there any radical solution to solve this problem?
    > these are very kill-time
    You feel
    Source Code Editor --> Utilities --> Update Navigation Index
    is not radical & kill-time.
    Can you please define "radical" & "kill-time" ?
    BR,
    Suhas

  • How to find unused ABAP custom code?

    Hi,
    how can I identify the unused ABAP custom code  outside of  the SAP Solution Manager?
    Thanks in advance.
    Nora

    Like a Google for ABAP, the Salt Code Ferret app provides incredibly fast searching of custom ABAP programs or modified standard SAP programs across all your SAP systems. Sniffing out specific pieces of code, Code Ferret is a huge timesaver in locating multiple instances of potentially conflicting code, code errors, or code that developers want to access or replicate. www.saltapps.com
    Try Salt free for 90 days – it’s a suite of eight virtual appliances running on VMware or Hyper-V for understanding what’s happening in SAP systems and across SAP landscapes.

  • ABAP source code to connect to third party systems using web service calls?

    Hi all,
              can any one provide an example ABAP source code to connect to third party systems using web service calls? The base system is CRM.

    Do you want to call a web service in a remote system, or do you want to provide a web service?
    If you want to call a web service you should create a proxy object via SE80. Open your development package, right click on the tree entry and choose: Create -> Enterprise Service / Web Service -> Proxy Object and provide the needed information (including the WSDL description file). You may then use the proxy object to call the web service (if the connection and everything else works right).
    See [http://help.sap.com/saphelp_nw04/helpdata/en/9b/dad1ae3908ee44a5caf57e10918be9/content.htm|http://help.sap.com/saphelp_nw04/helpdata/en/9b/dad1ae3908ee44a5caf57e10918be9/content.htm]

Maybe you are looking for

  • How I fixed my conection problem

    Here's my setup: Wireless IP (Motorola canopy) The connection comes into the house as ethernet (I'm conected wirelessly to the ISP's router and it's using DHCP That's pluged into an airport express that acts as a bridge to the ISP's router iMac G4 wi

  • Photoshop CS6 for windows converted to a MAC version

    Is this possible? Thanks~

  • Error Message: Disk too slow or System Overload

    hey guys during playback i keep receiving an error message reading: Disk too slow or System Overload. I was wondering if anyone knew the cause of this? Thanks for any info

  • Driver uninstall/​re-install problems

    I'm using a DAQPad-6020E and a SC-2345 signal conditioning unit.  I configured the channels in one version of MAX, then had to instead use a different version so I uninsalled the one with my configurations in it.  The problem is that even after unins

  • Upgreading to Lion and new HDD

    I have an iMac that cam with Leopard and I have since upgraded to Snow Leopard. This week I will be upgreading my HDD (by myself, i know how to do it, did it before). I know i Need to have at least Snow Leopard on my syswtem to be able to upgrade to