Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Using BAPI table parameters

Former Member
0 Likes
847

Hello experts,

I am working on the program which is used to calculate renewal price of the equipments based on CPI. The renewal price is calculated at runtime and will be displayed on the ALV display. Further i have used custom button on the screen to START the update process which updated this calculated renewal price into the table. For this functionality i have used BAPI_EQUIPMENT_SAVEREPLICA. But it won't work out correctly, I have asked to one of my friend he asks me to link ct_data and ct_datax using field TA_GUID and have to use this field to link equnr (equipment number ) )between internal tables. He also asked me to create a guid for each loop that is used for all those tables. e.g. first equipment that ta_guid = 1. I don't understand how to achieve this If anybody have any idea regarding this issue please share it with me. Here is the code for the BAPI.


METHOD on_user_command.

     DATA: l_fieldname       TYPE lvc_fname,

           r_str_return      TYPE TABLE OF bapiret2.

*    CLEAR: gs_tab, gt_tab.

*    APPEND LINES OF gt_tab TO l_tab_equi.

       l_str_equi-ta_guid = 1.

     LOOP AT gt_tab INTO gs_tab.

       l_str_equi-ta_guid = l_str_equi-ta_guid + 1.

       MOVE gs_tab-equnr TO l_str_equi-EQUIPMENT_EXT.

       MOVE gs_tab-eqktx TO l_str_equi-DESCRIPT.

       MOVE gs_tab-invnr TO l_str_equi-INVENTORY.

       MOVE gs_tab-ansdt TO l_str_equi-ACQDATE.

*      MOVE gs_tab-answt TO l_str_equi-ACQUISVAL.

       MOVE gs_tab-newwt TO l_str_equi-ACQUISVAL.

       MOVE gs_tab-waers TO l_str_equi-CURRENCY.

       APPEND l_str_equi TO l_tab_equi.

     ENDLOOP.

*      l_str_equix-EQUIPMENT_EXT = 'X'.

*      l_str_equix-DESCRIPT = 'X'.

*      l_str_equix-INVENTORY = 'X'.

*      l_str_equix-ACQDATE = 'X'.

       l_str_equix-ACQUISVAL = 'X'.

*      l_str_equix-CURRENCY = 'X'.

       APPEND l_str_equix TO l_tab_equix.

     CASE e_salv_function.

       WHEN 'PROCESS'.

         CALL FUNCTION 'BAPI_EQUIPMENT_SAVEREPLICA'

           TABLES

             ct_data           = l_tab_equi

             ct_datax          = l_tab_equix

             it_descript       = l_tab_descp

             it_longtext       = l_tab_ltext

             return            = r_str_return.

     ENDCASE.



Thanks,

Avadhut

   ENDMETHOD.                    "on_function_selected

1 ACCEPTED SOLUTION
Read only

SharathYaralkattimath
Contributor
0 Likes
559

Hi Avadhut,

Pass equnr to ta_guid & try as shown in Line 02.


    LOOP AT gt_tab INTO gs_tab.

     MOVE gs_tab-equnr TO l_str_equi-TA_GUID.

      MOVE gs_tab-equnr TO l_str_equi-EQUIPMENT_INT.

      MOVE gs_tab-eqktx TO l_str_equi-DESCRIPT.

      MOVE gs_tab-invnr TO l_str_equi-INVENTORY.

      MOVE gs_tab-ansdt TO l_str_equi-ACQDATE.

      MOVE gs_tab-answt TO l_str_equi-ACQUISVAL.

*      MOVE gs_tab-newwt TO l_str_equi-ACQUISVAL.

      MOVE gs_tab-waers TO l_str_equi-CURRENCY.

      APPEND l_str_equi TO l_tab_equi.

    ENDLOOP.

Thanks,

Sharath

1 REPLY 1
Read only

SharathYaralkattimath
Contributor
0 Likes
560

Hi Avadhut,

Pass equnr to ta_guid & try as shown in Line 02.


    LOOP AT gt_tab INTO gs_tab.

     MOVE gs_tab-equnr TO l_str_equi-TA_GUID.

      MOVE gs_tab-equnr TO l_str_equi-EQUIPMENT_INT.

      MOVE gs_tab-eqktx TO l_str_equi-DESCRIPT.

      MOVE gs_tab-invnr TO l_str_equi-INVENTORY.

      MOVE gs_tab-ansdt TO l_str_equi-ACQDATE.

      MOVE gs_tab-answt TO l_str_equi-ACQUISVAL.

*      MOVE gs_tab-newwt TO l_str_equi-ACQUISVAL.

      MOVE gs_tab-waers TO l_str_equi-CURRENCY.

      APPEND l_str_equi TO l_tab_equi.

    ENDLOOP.

Thanks,

Sharath