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

how to create bdc with table control

Former Member
0 Likes
604

hi all.

please some body tell me how to create bdc with table control

or suggest any www with screen shots

thanks in advance ,

aparna

hi all.

please some body tell me how to create bdc with table control

or suggest any www with screen shots

thanks in advance ,

aparna

4 REPLIES 4
Read only

Former Member
Read only

0 Likes
575

Hi AParna,

Its very Simple.

ALl you have to do is set up a counter based on the number of lines in the tabke. when the counter reaches the number of lines in the table hit the next page button which is at the top of every screen in SAP.

Please refer to the following BDC program I had developed using Table control,

this is for ME01 transaction.


  LOOP AT T_EORD_HED.
    SELECT SINGLE * FROM MARA WHERE MATNR = T_EORD_HED-MATNR.
    IF SY-SUBRC = 0.

      PERFORM BDC_DYNPRO      USING 'SAPLMEOR' '0200'.
      PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                    'EORD-MATNR'.
      PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                    '/00'.
      PERFORM BDC_FIELD       USING 'EORD-MATNR'
                                    T_EORD_HED-MATNR.       "'58335'.
      PERFORM BDC_FIELD       USING 'EORD-WERKS'
                                    T_EORD_HED-WERKS.       "'0253'.

      L_COUNT = 1.
      LOOP AT T_EORD WHERE MATNR = T_EORD_HED-MATNR
                       AND WERKS = T_EORD_HED-WERKS.

        SELECT SINGLE * FROM LFA1 WHERE LIFNR = T_EORD-LIFNR.
        IF SY-SUBRC = 0.
* Look into the if condition below
          IF L_COUNT = 010.
            L_COUNT = 1.
            PERFORM BDC_DYNPRO      USING 'SAPLMEOR' '0205'.
            PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                  'EORD-MATNR'.
            PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                   '=NS'.
            L_COUNT = L_COUNT + 1.

          ENDIF.

          PERFORM BDC_DYNPRO      USING 'SAPLMEOR' '0205'.
          PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                        'EORD-AUTET(01)'.
          PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                        '/00'.

          CONCATENATE 'EORD-VDATU' '(' L_COUNT ')' INTO OPR_FIELD.
          WRITE SY-DATUM TO T_EORD-VDATU.
          PERFORM BDC_FIELD       USING OPR_FIELD
                                        T_EORD-VDATU.

          CONCATENATE 'EORD-BDATU' '(' L_COUNT ')' INTO OPR_FIELD.
          WRITE T_EORD-BDATU TO V_BDATU.
          PERFORM BDC_FIELD       USING OPR_FIELD
                                        V_BDATU.

          CONCATENATE 'EORD-LIFNR' '(' L_COUNT ')' INTO OPR_FIELD.
          PERFORM BDC_FIELD       USING OPR_FIELD
                                        T_EORD-LIFNR.

          CONCATENATE 'EORD-EKORG' '(' L_COUNT ')' INTO OPR_FIELD.
          PERFORM BDC_FIELD       USING OPR_FIELD
                                        '0001'.

          CONCATENATE 'EORD-RESWK' '(' L_COUNT ')' INTO OPR_FIELD.
          PERFORM BDC_FIELD       USING OPR_FIELD
                                        T_EORD-RESWK.

          WRITE T_EORD-MEINS TO V_MEINS.
          CONCATENATE 'EORD-MEINS' '(' L_COUNT ')' INTO OPR_FIELD.
          PERFORM BDC_FIELD       USING OPR_FIELD
                                        V_MEINS.

*          CONCATENATE 'EORD-EBELN' '(' L_COUNT ')' INTO OPR_FIELD.
*          PERFORM BDC_FIELD       USING 'OPR_FIELD'
*                                        T_EORD-EBELN.

          CONCATENATE 'EORD-EBELP' '(' L_COUNT ')' INTO OPR_FIELD.
          PERFORM BDC_FIELD       USING OPR_FIELD
                                        T_EORD-EBELP.

          IF T_EORD-FLIFN NE SPACE OR T_EORD-FRESW NE SPACE OR
             T_EORD-FEBEL NE SPACE.
            CONCATENATE 'RM06W-FESKZ' '(' L_COUNT ')' INTO OPR1_FIELD.
            PERFORM BDC_FIELD       USING OPR1_FIELD
                                          'X'.
          ENDIF.

          IF T_EORD-NOTKZ <> ''.
            CONCATENATE 'EORD-NOTKZ' '(' L_COUNT ')' INTO OPR_FIELD.
            PERFORM BDC_FIELD       USING OPR_FIELD
                                          'X'.
          ENDIF.

          CONCATENATE 'EORD-AUTET' '(' L_COUNT ')' INTO OPR_FIELD.
          PERFORM BDC_FIELD       USING OPR_FIELD
                                        T_EORD-AUTET.

          L_COUNT = L_COUNT + 1.
        ENDIF.
      ENDLOOP.

      PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                    'EORD-MATNR'.
      PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                    '=BU'.
      CALL TRANSACTION 'ME01' USING I_BDCDATA
                    MODE UP_MODE
*                     optIONS  FROM l_opt
                    MESSAGES INTO I_BDCMSGCOLL.

      PERFORM FORMAT_OUTPUT.
    ENDIF.
  ENDLOOP.

Read only

Former Member
0 Likes
575

hi,

refer to the following link.

http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm

reward if useful,

thanks and regards

Read only

Former Member
0 Likes
575