<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic bdc using table control in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-using-table-control/m-p/2751883#M640104</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;any body send me the sample code for bdc using table control.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 03 Sep 2007 12:09:46 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-09-03T12:09:46Z</dc:date>
    <item>
      <title>bdc using table control</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-using-table-control/m-p/2751883#M640104</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;any body send me the sample code for bdc using table control.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Sep 2007 12:09:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-using-table-control/m-p/2751883#M640104</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-03T12:09:46Z</dc:date>
    </item>
    <item>
      <title>Re: bdc using table control</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-using-table-control/m-p/2751884#M640105</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Following is a sample code of handling table control in BDC. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT Y730_BDC5 .&lt;/P&gt;&lt;P&gt;*HANDLING TABLE CONTROL IN BDC&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF IT_DUMMY OCCURS 0,&lt;/P&gt;&lt;P&gt;       DUMMY(100) TYPE C,&lt;/P&gt;&lt;P&gt;       END OF IT_DUMMY.&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF IT_XK01 OCCURS 0,&lt;/P&gt;&lt;P&gt;       LIFNR(10) TYPE C,&lt;/P&gt;&lt;P&gt;       BUKRS(4)  TYPE C,&lt;/P&gt;&lt;P&gt;       EKORG(4)  TYPE C,&lt;/P&gt;&lt;P&gt;       KTOKK(4)  TYPE C,&lt;/P&gt;&lt;P&gt;       NAME1(30) TYPE C,&lt;/P&gt;&lt;P&gt;       SORTL(10) TYPE C,&lt;/P&gt;&lt;P&gt;       LAND1(3)  TYPE C,&lt;/P&gt;&lt;P&gt;       SPRAS(2)  TYPE C,&lt;/P&gt;&lt;P&gt;       AKONT(6)  TYPE C,&lt;/P&gt;&lt;P&gt;       FDGRV(2)  TYPE C,&lt;/P&gt;&lt;P&gt;       WAERS(3)  TYPE C,&lt;/P&gt;&lt;P&gt;       END OF IT_XK01,&lt;/P&gt;&lt;P&gt;       BEGIN OF IT_BANK OCCURS 0,&lt;/P&gt;&lt;P&gt;       BANKS(3)  TYPE C,&lt;/P&gt;&lt;P&gt;       BANKL(10) TYPE C,&lt;/P&gt;&lt;P&gt;       BANKN(10) TYPE C,&lt;/P&gt;&lt;P&gt;       KOINH(30) TYPE C,&lt;/P&gt;&lt;P&gt;       LIFNR(10) TYPE C,&lt;/P&gt;&lt;P&gt;       END OF IT_BANK.&lt;/P&gt;&lt;P&gt;DATA : IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;       IT_BDCMSGCOLL LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;P&gt; EXPORTING&lt;/P&gt;&lt;P&gt;   FILENAME                      = 'C:\VENDOR.TXT'&lt;/P&gt;&lt;P&gt;   FILETYPE                      = 'ASC'&lt;/P&gt;&lt;P&gt; TABLES&lt;/P&gt;&lt;P&gt;   DATA_TAB                      = IT_DUMMY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT IT_DUMMY.&lt;/P&gt;&lt;P&gt;  IF IT_DUMMY-DUMMY+0(2) = '11'.&lt;/P&gt;&lt;P&gt;    IT_XK01-LIFNR = IT_DUMMY-DUMMY+2(10).&lt;/P&gt;&lt;P&gt;    IT_XK01-BUKRS = IT_DUMMY-DUMMY+12(4).&lt;/P&gt;&lt;P&gt;    IT_XK01-EKORG = IT_DUMMY-DUMMY+16(4).&lt;/P&gt;&lt;P&gt;    IT_XK01-KTOKK = IT_DUMMY-DUMMY+20(4).&lt;/P&gt;&lt;P&gt;    IT_XK01-NAME1 = IT_DUMMY-DUMMY+24(30).&lt;/P&gt;&lt;P&gt;    IT_XK01-SORTL = IT_DUMMY-DUMMY+54(10).&lt;/P&gt;&lt;P&gt;    IT_XK01-LAND1 = IT_DUMMY-DUMMY+64(3).&lt;/P&gt;&lt;P&gt;    IT_XK01-SPRAS = IT_DUMMY-DUMMY+67(2).&lt;/P&gt;&lt;P&gt;    IT_XK01-AKONT = IT_DUMMY-DUMMY+69(6).&lt;/P&gt;&lt;P&gt;    IT_XK01-FDGRV = IT_DUMMY-DUMMY+75(2).&lt;/P&gt;&lt;P&gt;    IT_XK01-WAERS = IT_DUMMY-DUMMY+77(3).&lt;/P&gt;&lt;P&gt;    APPEND IT_XK01.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    IT_BANK-BANKS = IT_DUMMY-DUMMY+2(3).&lt;/P&gt;&lt;P&gt;    IT_BANK-BANKL = IT_DUMMY-DUMMY+5(10).&lt;/P&gt;&lt;P&gt;    IT_BANK-BANKN = IT_DUMMY-DUMMY+15(10).&lt;/P&gt;&lt;P&gt;    IT_BANK-KOINH = IT_DUMMY-DUMMY+25(30).&lt;/P&gt;&lt;P&gt;    IT_BANK-LIFNR = IT_DUMMY-DUMMY+55(10).&lt;/P&gt;&lt;P&gt;    APPEND IT_BANK.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT IT_XK01.&lt;/P&gt;&lt;P&gt;REFRESH IT_BDCDATA.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro      using 'SAPMF02K' '0100'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'RF02K-REF_LIFNR'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '/00'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'RF02K-LIFNR'&lt;/P&gt;&lt;P&gt;                              IT_XK01-LIFNR.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'RF02K-BUKRS'&lt;/P&gt;&lt;P&gt;                              IT_XK01-BUKRS.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'RF02K-EKORG'&lt;/P&gt;&lt;P&gt;                              IT_XK01-EKORG.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'RF02K-KTOKK'&lt;/P&gt;&lt;P&gt;                              IT_XK01-KTOKK.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro      using 'SAPMF02K' '0110'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'LFA1-TELX1'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '/00'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'LFA1-NAME1'&lt;/P&gt;&lt;P&gt;                              IT_XK01-NAME1.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'LFA1-SORTL'&lt;/P&gt;&lt;P&gt;                              IT_XK01-SORTL.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'LFA1-LAND1'&lt;/P&gt;&lt;P&gt;                              IT_XK01-LAND1.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'LFA1-SPRAS'&lt;/P&gt;&lt;P&gt;                              IT_XK01-SPRAS.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro      using 'SAPMF02K' '0120'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'LFA1-KUNNR'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '/00'.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro      using 'SAPMF02K' '0130'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'LFBK-KOINH(02)'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '=ENTR'.&lt;/P&gt;&lt;P&gt;DATA : FNAM(20) TYPE C,&lt;/P&gt;&lt;P&gt;       IDX      TYPE C.&lt;/P&gt;&lt;P&gt;  MOVE 1 TO IDX.&lt;/P&gt;&lt;P&gt;LOOP AT IT_BANK WHERE LIFNR = IT_XK01-LIFNR.&lt;/P&gt;&lt;P&gt;  CONCATENATE 'LFBK-BANKS(' IDX ')' INTO FNAM.&lt;/P&gt;&lt;P&gt;  perform bdc_field       using FNAM&lt;/P&gt;&lt;P&gt;                                IT_BANK-BANKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE 'LFBK-BANKL(' IDX ')' INTO FNAM.&lt;/P&gt;&lt;P&gt;  perform bdc_field       using FNAM&lt;/P&gt;&lt;P&gt;                                IT_BANK-BANKL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE 'LFBK-BANKN(' IDX ')' INTO FNAM.&lt;/P&gt;&lt;P&gt;  perform bdc_field       using FNAM&lt;/P&gt;&lt;P&gt;                                IT_BANK-BANKN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE 'LFBK-KOINH(' IDX ')' INTO FNAM.&lt;/P&gt;&lt;P&gt;  perform bdc_field       using FNAM&lt;/P&gt;&lt;P&gt;                                IT_BANK-KOINH.&lt;/P&gt;&lt;P&gt;  IDX = IDX + 1.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform bdc_dynpro      using 'SAPMF02K' '0130'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'LFBK-BANKS(01)'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '=ENTR'.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro      using 'SAPMF02K' '0210'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'LFB1-FDGRV'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '/00'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'LFB1-AKONT'&lt;/P&gt;&lt;P&gt;                              IT_XK01-AKONT.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'LFB1-FDGRV'&lt;/P&gt;&lt;P&gt;                              IT_XK01-FDGRV.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro      using 'SAPMF02K' '0215'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'LFB1-ZTERM'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '/00'.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro      using 'SAPMF02K' '0220'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'LFB5-MAHNA'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '/00'.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro      using 'SAPMF02K' '0310'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'LFM1-WAERS'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '/00'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'LFM1-WAERS'&lt;/P&gt;&lt;P&gt;                              IT_XK01-WAERS.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro      using 'SAPMF02K' '0320'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              'WYT3-PARVW(01)'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '=ENTR'.&lt;/P&gt;&lt;P&gt;perform bdc_dynpro      using 'SAPLSPO1' '0300'.&lt;/P&gt;&lt;P&gt;perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '=YES'.&lt;/P&gt;&lt;P&gt;CALL TRANSACTION 'XK01' USING IT_BDCDATA&lt;/P&gt;&lt;P&gt;                        MODE  'A'&lt;/P&gt;&lt;P&gt;                       UPDATE 'S'&lt;/P&gt;&lt;P&gt;                     MESSAGES INTO IT_BDCMSGCOLL.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BDC_DYNPRO USING PROG SCR.&lt;/P&gt;&lt;P&gt;  CLEAR IT_BDCDATA.&lt;/P&gt;&lt;P&gt;  IT_BDCDATA-PROGRAM = PROG.&lt;/P&gt;&lt;P&gt;  IT_BDCDATA-DYNPRO  = SCR.&lt;/P&gt;&lt;P&gt;  IT_BDCDATA-DYNBEGIN = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND IT_BDCDATA.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BDC_FIELD USING FNAM FVAL.&lt;/P&gt;&lt;P&gt;  CLEAR IT_BDCDATA.&lt;/P&gt;&lt;P&gt;  IT_BDCDATA-FNAM = FNAM.&lt;/P&gt;&lt;P&gt;  IT_BDCDATA-FVAL  = FVAL.&lt;/P&gt;&lt;P&gt;  APPEND IT_BDCDATA.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Seshu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Sep 2007 12:12:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-using-table-control/m-p/2751884#M640105</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-03T12:12:08Z</dc:date>
    </item>
    <item>
      <title>Re: bdc using table control</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-using-table-control/m-p/2751885#M640106</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Surya..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is a useful program for that..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;BDC program for Purchase Info Records&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REPORT zmm0069 NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;                                  MESSAGE-ID z0&lt;/P&gt;&lt;P&gt;                                  LINE-SIZE  132&lt;/P&gt;&lt;P&gt;                                  LINE-COUNT 65(2).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     Internal Tables                                 *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal table for the purchasing info records fields.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF i_inforecord OCCURS 0,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        matnr(18),&lt;/P&gt;&lt;P&gt;        lifnr(10),&lt;/P&gt;&lt;P&gt;        uom(3),&lt;/P&gt;&lt;P&gt;        ekgrp(3),&lt;/P&gt;&lt;P&gt;        planned_time(3),&lt;/P&gt;&lt;P&gt;        under_tol(3),&lt;/P&gt;&lt;P&gt;        over_tol(3),&lt;/P&gt;&lt;P&gt;        qty(10),&lt;/P&gt;&lt;P&gt;        price_cat(5),&lt;/P&gt;&lt;P&gt;        inco(3),&lt;/P&gt;&lt;P&gt;        designation(28),&lt;/P&gt;&lt;P&gt;        netpr(13),&lt;/P&gt;&lt;P&gt;        scale_qty1(10),&lt;/P&gt;&lt;P&gt;        scale_pr1(13),&lt;/P&gt;&lt;P&gt;        scale_qty2(10),&lt;/P&gt;&lt;P&gt;        scale_pr2(13),&lt;/P&gt;&lt;P&gt;        scale_qty3(13),&lt;/P&gt;&lt;P&gt;        scale_pr3(10),&lt;/P&gt;&lt;P&gt;        scale_qty4(13),&lt;/P&gt;&lt;P&gt;        scale_pr4(10),&lt;/P&gt;&lt;P&gt;        scale_qty5(13),&lt;/P&gt;&lt;P&gt;        scale_pr5(10),&lt;/P&gt;&lt;P&gt;        scale_qty6(13),&lt;/P&gt;&lt;P&gt;        scale_pr6(10),&lt;/P&gt;&lt;P&gt;        scale_qty7(13),&lt;/P&gt;&lt;P&gt;        scale_pr7(10),&lt;/P&gt;&lt;P&gt;        scale_qty8(13),&lt;/P&gt;&lt;P&gt;        scale_pr8(10),&lt;/P&gt;&lt;P&gt;        scale_qty9(13),&lt;/P&gt;&lt;P&gt;        scale_pr9(10),&lt;/P&gt;&lt;P&gt;        scale_qty10(13),&lt;/P&gt;&lt;P&gt;        scale_pr10(10),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        END OF i_inforecord.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Internal table for Old and New Vendor number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;  DATA : BEGIN OF i_lfb1 OCCURS 1,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         lifnr(10),&lt;/P&gt;&lt;P&gt;         altkn(10),&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;         END   OF i_lfb1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Declare internal table for Call Transaction and BDC Session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;  DATA: i_bdc_table LIKE bdcdata OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     Global Variables                                *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: g_counter(2) TYPE n,&lt;/P&gt;&lt;P&gt;        g_field_name(18) TYPE c,&lt;/P&gt;&lt;P&gt;        zc_yes  TYPE syftype VALUE 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     Selection Screen                                *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN BEGIN OF BLOCK a WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PARAMETERS: p_fname1 TYPE localfile .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN BEGIN OF BLOCK b WITH FRAME TITLE text-002.&lt;/P&gt;&lt;P&gt;  PARAMETERS: p_rloc1 AS CHECKBOX  DEFAULT 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN BEGIN OF BLOCK c WITH FRAME TITLE text-003.&lt;/P&gt;&lt;P&gt;  PARAMETERS p_group(12) OBLIGATORY DEFAULT 'ZPURCHINFO'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN END OF BLOCK c.&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN END OF BLOCK b.&lt;/P&gt;&lt;P&gt;  SELECTION-SCREEN END OF BLOCK a.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**WRITE the report header&lt;/P&gt;&lt;P&gt;  TOP-OF-PAGE.&lt;/P&gt;&lt;P&gt;    INCLUDE zheading.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     Start of selection                              *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Load Input file&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM f_load_input_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create BDC records.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM create_bdc_records .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  Create_BDC_records&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Perform the BDC for the records in the internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORM create_bdc_records .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT i_inforecord[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Open BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM open_bdc_session.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT lifnr altkn FROM lfb1 INTO TABLE i_lfb1&lt;/P&gt;&lt;P&gt;                          FOR ALL ENTRIES IN i_inforecord&lt;/P&gt;&lt;P&gt;                          WHERE altkn = i_inforecord-lifnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Sorting the Internal table for better performance&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SORT i_lfb1 BY altkn.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT i_inforecord.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***Mapping Old Vendor number to the new Vendor number&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        READ TABLE i_lfb1 WITH KEY altkn = i_inforecord-lifnr BINARY&lt;/P&gt;&lt;P&gt;                                                              SEARCH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;          i_inforecord-lifnr = i_lfb1-lifnr.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR i_bdc_table[].&lt;/P&gt;&lt;P&gt;        PERFORM insert_screen_header.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     call transaction 'ME11' using i_bdc_table&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                   mode 'A'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     CLEAR i_bdc_table.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;      CLEAR i_inforecord[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM close_bdc_session.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Release the BDC sessions created&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM release_bdc.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " open_group&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  bdc_dynpro_start&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Start the screen for the transfer of fields&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORM bdc_dynpro_start  USING    p_g_program_1&lt;/P&gt;&lt;P&gt;                                  p_g_screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR i_bdc_table.&lt;/P&gt;&lt;P&gt;    i_bdc_table-program  = p_g_program_1.&lt;/P&gt;&lt;P&gt;    i_bdc_table-dynpro   = p_g_screen.&lt;/P&gt;&lt;P&gt;    i_bdc_table-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;    APPEND i_bdc_table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " bdc_dynpro_start_start&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  bdc_insert_field&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Insert field                                                  *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORM bdc_insert_field USING f_name f_value.&lt;/P&gt;&lt;P&gt;    IF f_value &amp;lt;&amp;gt; space.&lt;/P&gt;&lt;P&gt;      CLEAR i_bdc_table.&lt;/P&gt;&lt;P&gt;      i_bdc_table-fnam = f_name.&lt;/P&gt;&lt;P&gt;      i_bdc_table-fval = f_value.&lt;/P&gt;&lt;P&gt;      APPEND i_bdc_table.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDFORM.                    "bdc_insert_field&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  open_bdc_session&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Open a BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORM open_bdc_session .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Open BDC session and create and update records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BDC_OPEN_GROUP'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        client                    = sy-mandt&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      DEST                      = FILLER8&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        group                     = p_group&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      HOLDDATE                  = FILLER8&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        keep                      = 'X'&lt;/P&gt;&lt;P&gt;        user                      = sy-uname&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      RECORD                    = FILLER1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      PROG                      = SY-CPROG&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      QID                       =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     client_invalid            = 1&lt;/P&gt;&lt;P&gt;     destination_invalid       = 2&lt;/P&gt;&lt;P&gt;     group_invalid             = 3&lt;/P&gt;&lt;P&gt;     group_is_locked           = 4&lt;/P&gt;&lt;P&gt;     holddate_invalid          = 5&lt;/P&gt;&lt;P&gt;     internal_error            = 6&lt;/P&gt;&lt;P&gt;     queue_error               = 7&lt;/P&gt;&lt;P&gt;     running                   = 8&lt;/P&gt;&lt;P&gt;     system_lock_error         = 9&lt;/P&gt;&lt;P&gt;     user_invalid              = 10&lt;/P&gt;&lt;P&gt;     OTHERS                    = 11&lt;/P&gt;&lt;P&gt;              .&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;      WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " create_bdc_session&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  insert_screen_header&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Screen flow for the transfer of fields&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORM insert_screen_header .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;First Screen 100&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_dynpro_start USING 'SAPMM06I' '0100'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_insert_field USING:'BDC_CURSOR' 'EINA-LIFNR',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                   'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                   'EINA-LIFNR' i_inforecord-lifnr,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                   'EINA-MATNR' i_inforecord-matnr,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                   'EINE-EKORG' '1000',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                   'RM06I-NORMB' zc_yes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;****&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------" /&gt;*******&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Next Screen 101&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_dynpro_start USING 'SAPMM06I' '0101'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_insert_field USING : 'BDC_CURSOR' 'EINA-MAHN1',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                     'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                     'EINA-MEINS' i_inforecord-uom.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;****&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------" /&gt;*******&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Next Screen 102&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_dynpro_start USING 'SAPMM06I' '0102'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_insert_field USING : 'BDC_CURSOR' 'EINE-INCO2',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                 'EINE-APLFZ' i_inforecord-planned_time,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                 'EINE-EKGRP' i_inforecord-ekgrp,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                 'EINE-NORBM' i_inforecord-qty.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_insert USING  'EINE-UEBTK' ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM bdc_insert_field USING:'EINE-PEINH' i_inforecord-scale_qty1,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                   'EINE-BPRME' i_inforecord-uom,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                   'EINE-UNTTO' '5',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                   'EINE-UEBTO' '25',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                   'EINE-MEPRF' i_inforecord-price_cat,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                   'EINE-NETPR' i_inforecord-netpr,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                   'EINE-INCO1' i_inforecord-inco,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                  'EINE-INCO2' i_inforecord-designation.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Checking for Scale quantities&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF i_inforecord-scale_qty2 = space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_insert_field  USING 'BDC_OKCODE' '=BU'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM insert_bdc_new.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_insert_field  USING 'BDC_OKCODE' '=KO'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;****&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------" /&gt;*******&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Next Screen 201&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro_start USING 'SAPMV13A' '0201'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_insert_field USING : 'BDC_CURSOR' 'RV13A-DATAB',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                        'BDC_OKCODE' '=PSTF'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;****&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------" /&gt;*******&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Next Screen 201&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro_start USING 'SAPMV13A' '0201'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_insert_field USING : 'BDC_CURSOR' 'KONP-KSCHL(01)',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                       'BDC_OKCODE' '=PSTF',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                       'RV130-SELKZ(01)' zc_yes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;****&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------" /&gt;*******&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;LAST SCREEN 303&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_dynpro_start USING 'SAPMV13A' '0303'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_insert_field USING : 'BDC_CURSOR' 'KONM-KBETR(03)',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                       'BDC_OKCODE' '=SICH'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;* Counter to Loop the Item level entry&lt;/P&gt;&lt;P&gt;      g_counter = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM scale_entry USING i_inforecord-scale_qty2&lt;/P&gt;&lt;P&gt;                                i_inforecord-scale_pr2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM scale_entry USING i_inforecord-scale_qty3&lt;/P&gt;&lt;P&gt;                                i_inforecord-scale_pr3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM scale_entry USING i_inforecord-scale_qty4&lt;/P&gt;&lt;P&gt;                                i_inforecord-scale_pr4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM scale_entry USING i_inforecord-scale_qty5&lt;/P&gt;&lt;P&gt;                                i_inforecord-scale_pr5.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM scale_entry USING i_inforecord-scale_qty6&lt;/P&gt;&lt;P&gt;                                i_inforecord-scale_pr6.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM scale_entry USING i_inforecord-scale_qty7&lt;/P&gt;&lt;P&gt;                                i_inforecord-scale_pr7.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM scale_entry USING i_inforecord-scale_qty8&lt;/P&gt;&lt;P&gt;                                i_inforecord-scale_pr8.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM scale_entry USING i_inforecord-scale_qty9&lt;/P&gt;&lt;P&gt;                                i_inforecord-scale_pr9.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM scale_entry USING  i_inforecord-scale_qty10&lt;/P&gt;&lt;P&gt;                                 i_inforecord-scale_pr10.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM insert_bdc_new.&lt;/P&gt;&lt;P&gt;&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " insert_screen_header&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  insert_bdc&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Insert BDC&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORM insert_bdc_new .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;         tcode                  = 'ME11'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      POST_LOCAL             = NOVBLOCAL&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      PRINTING               = NOPRINT&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      SIMUBATCH              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      CTUPARAMS              = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;         dynprotab              = i_bdc_table&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      internal_error         = 1&lt;/P&gt;&lt;P&gt;      not_open               = 2&lt;/P&gt;&lt;P&gt;      queue_error            = 3&lt;/P&gt;&lt;P&gt;      tcode_invalid          = 4&lt;/P&gt;&lt;P&gt;      printing_invalid       = 5&lt;/P&gt;&lt;P&gt;      posting_invalid        = 6&lt;/P&gt;&lt;P&gt;      OTHERS                 = 7&lt;/P&gt;&lt;P&gt;               .&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;      WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR i_bdc_table[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " insert_bdc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  close_bdc_session&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Close the BDC session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORM close_bdc_session .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BDC_CLOSE_GROUP'&lt;/P&gt;&lt;P&gt;         EXCEPTIONS&lt;/P&gt;&lt;P&gt;              not_open    = 1&lt;/P&gt;&lt;P&gt;              queue_error = 2&lt;/P&gt;&lt;P&gt;              OTHERS      = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " close_bdc_session&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  f_load_input_file&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Upload the file&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORM f_load_input_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Check always Local file for upload&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF p_rloc1 = zc_yes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'WS_UPLOAD'&lt;/P&gt;&lt;P&gt;           EXPORTING&lt;/P&gt;&lt;P&gt;                filename                = p_fname1&lt;/P&gt;&lt;P&gt;                filetype                = 'DAT'&lt;/P&gt;&lt;P&gt;           TABLES&lt;/P&gt;&lt;P&gt;                data_tab                = i_inforecord&lt;/P&gt;&lt;P&gt;           EXCEPTIONS&lt;/P&gt;&lt;P&gt;                conversion_error        = 1&lt;/P&gt;&lt;P&gt;                file_open_error         = 2&lt;/P&gt;&lt;P&gt;                file_read_error         = 3&lt;/P&gt;&lt;P&gt;                invalid_type            = 4&lt;/P&gt;&lt;P&gt;                no_batch                = 5&lt;/P&gt;&lt;P&gt;                unknown_error           = 6&lt;/P&gt;&lt;P&gt;                invalid_table_width     = 7&lt;/P&gt;&lt;P&gt;                gui_refuse_filetransfer = 8&lt;/P&gt;&lt;P&gt;                customer_error          = 9&lt;/P&gt;&lt;P&gt;                OTHERS                  = 10.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        STOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " f_load_input_file&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  release_bdc&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Release the session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORM release_bdc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SUBMIT rsbdcsub WITH mappe EQ p_group&lt;/P&gt;&lt;P&gt;                    WITH von EQ sy-datum&lt;/P&gt;&lt;P&gt;                    WITH bis EQ sy-datum&lt;/P&gt;&lt;P&gt;                    WITH fehler EQ '.'&lt;/P&gt;&lt;P&gt;                    EXPORTING LIST TO MEMORY&lt;/P&gt;&lt;P&gt;                    AND RETURN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " release_bdc&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  scale_entry&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Populate the Scale quantities&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_SCALE_QTY&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_SCALE_PRICE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORM scale_entry USING    p_scale_qty&lt;/P&gt;&lt;P&gt;                            p_scale_price.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Increment the Counter&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    g_counter = g_counter + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF p_scale_qty &amp;lt;&amp;gt; space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'KONM-KSTBM('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_insert_field USING g_field_name p_scale_qty.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'KONM-KBETR('  g_counter  ')' INTO g_field_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bdc_insert_field USING g_field_name p_scale_price.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  bdc_insert&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      To uncheck the Unlimited (UEBTK)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  FORM bdc_insert USING  f_name f_value.&lt;/P&gt;&lt;P&gt;    CLEAR i_bdc_table.&lt;/P&gt;&lt;P&gt;    i_bdc_table-fnam = f_name.&lt;/P&gt;&lt;P&gt;    i_bdc_table-fval = f_value.&lt;/P&gt;&lt;P&gt;    APPEND i_bdc_table.&lt;/P&gt;&lt;P&gt;  ENDFORM.                    " bdc_insert&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;reward if Helpful&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Sep 2007 12:28:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-using-table-control/m-p/2751885#M640106</guid>
      <dc:creator>varma_narayana</dc:creator>
      <dc:date>2007-09-03T12:28:35Z</dc:date>
    </item>
    <item>
      <title>Re: bdc using table control</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-using-table-control/m-p/2751886#M640107</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi surya, i suposed to be  this code is very useful to you. this bdc program for the  transaction &amp;lt;b&amp;gt;[ME01]&amp;lt;/b&amp;gt; (source list information).Please make some changes i used with header internal table you change that to with out header internal table. &lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;************************************************************************
*PARAMETERS Declarations
************************************************************************

PARAMETERS: file1 LIKE rlgrap-filename.

************************************************************************
*Internal Table Declarations
************************************************************************

DATA: BEGIN OF itab OCCURS 0,
      matnr(18) TYPE c,              "MaterialNumber
      werks(4) TYPE c,               "Plant
      vdatu(10) TYPE c,              "Valid From Date
      bdatu(10) TYPE c,              "Valid To Date
      lifnr(10) TYPE c,              "Vendor Number
      ekorg(4) TYPE c,               "Purchasing Organization
      feskz TYPE c,                  "Fixed
      autet TYPE c,                  "MRP Indicator
      END OF itab.

DATA: bdcdata LIKE TABLE OF bdcdata WITH HEADER LINE.

************************************************************************
*VARIABLES Declarations
************************************************************************
DATA: wa1 LIKE LINE OF itab.         "Workarea for ITAB
DATA: n TYPE i,                      "Check
      count TYPE i.
DATA: cnt(2),                        "Counter
      wa(15).                        "Workarea to hold concatenatedvalue
DATA v_msg(100).
DATA: flag.
DATA: file TYPE string.

************************************************************************
*Initialization event
************************************************************************

INITIALIZATION.

************************************************************************
*At-selection-screen event
************************************************************************

*To provide Input help for file name

AT SELECTION-SCREEN ON VALUE-REQUEST FOR file1.


  CALL FUNCTION 'F4_FILENAME'
       EXPORTING
            program_name  = syst-cprog
            dynpro_number = syst-dynnr
       IMPORTING
            file_name     = file1.

***********************************************************************
*START-OF-SELECTION EVENT
***********************************************************************

START-OF-SELECTION.

  MOVE file1 TO file.


  CALL FUNCTION 'GUI_UPLOAD'
       EXPORTING
            filename                = file
            filetype                = 'ASC'
            has_field_separator     = 'X'
       TABLES
            data_tab                = itab
       EXCEPTIONS
            file_open_error         = 1
            file_read_error         = 2
            no_batch                = 3
            gui_refuse_filetransfer = 4
            invalid_type            = 5
            no_authority            = 6
            unknown_error           = 7
            bad_data_format         = 8
            header_not_allowed      = 9
            separator_not_allowed   = 10
            header_too_long         = 11
            unknown_dp_error        = 12
            access_denied           = 13
            dp_out_of_memory        = 14
            disk_full               = 15
            dp_timeout              = 16
            OTHERS                  = 17.
  IF sy-subrc &amp;lt;&amp;gt; 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.

*To populate BDCDATA and start data transfer

  LOOP AT itab .

* To validate Plant range

    IF itab-werks = '1000' OR itab-werks = '2000'
        OR itab-werks = '1008'.

      AT NEW  werks.

        CLEAR: n.
        cnt = 1.

        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'
                                      itab-matnr.
        PERFORM bdc_field       USING 'EORD-WERKS'
                                      itab-werks.
        PERFORM bdc_dynpro      USING 'SAPLMEOR' '0205'.


        CONCATENATE 'EORD-EKORG(' cnt ')' INTO wa.

        PERFORM bdc_field       USING 'BDC_CURSOR'
                                       wa.

        PERFORM bdc_field       USING 'BDC_OKCODE'
                                      '=BU'.
      ENDAT.

      IF n = 12.


          READ TABLE bdcdata WITH KEY fval = '=BU'.
          bdcdata-fval = '=NS'.
          MODIFY bdcdata INDEX sy-tabix TRANSPORTING fval.


          PERFORM bdc_dynpro      USING 'SAPLMEOR' '0205'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'EORD-VDATU(01)'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=BU'.

        cnt = 2.
        n = 2.
      ENDIF.



      CONCATENATE 'EORD-VDATU(' cnt ')' INTO wa.
      PERFORM bdc_field       USING wa
                                    itab-vdatu.

      CONCATENATE 'EORD-BDATU(' cnt ')' INTO wa.

      PERFORM bdc_field       USING wa
                                    itab-bdatu.
      CONCATENATE 'EORD-LIFNR(' cnt ')' INTO wa.
      PERFORM bdc_field       USING wa
                                    itab-lifnr.
      CONCATENATE 'EORD-EKORG(' cnt ')' INTO wa.
      PERFORM bdc_field       USING wa
                                    itab-ekorg.
      CONCATENATE 'RM06W-FESKZ(' cnt ')' INTO wa.
      PERFORM bdc_field       USING wa
                                  itab-feskz.
      CONCATENATE 'EORD-AUTET(' cnt ')' INTO wa.
      PERFORM bdc_field       USING  wa
                                    itab-autet.

      IF n &amp;lt;&amp;gt; 12.
        n = cnt.
      ENDIF.
      cnt = cnt + 1.


      AT END OF werks.

        CALL TRANSACTION 'ME01' USING bdcdata
                                  UPDATE 'S'
                                  MODE 'A'.


        CLEAR:bdcdata,bdcdata[].


        CALL FUNCTION 'FORMAT_MESSAGE'
             EXPORTING
                  id   = sy-msgid
                  lang = 'EN'
                  no   = sy-msgno
                  v1   = sy-msgv1
                  v2   = sy-msgv2
                  v3   = sy-msgv3
                  v4   = sy-msgv4
             IMPORTING
                  msg  = v_msg.

        WRITE:/ v_msg.
        CLEAR: bdcdata,bdcdata[],flag.


      ENDAT.

    ENDIF.
  ENDLOOP.


*----------------------------------------------------------------------*
*        Start new screen                                              *
*----------------------------------------------------------------------*
FORM bdc_dynpro USING program dynpro.
  CLEAR bdcdata.
  bdcdata-program  = program.
  bdcdata-dynpro   = dynpro.
  bdcdata-dynbegin = 'X'.
  APPEND bdcdata.

ENDFORM.

*----------------------------------------------------------------------*
*        Insert field values
*----------------------------------------------------------------------*
FORM bdc_field USING fnam fval.
  IF NOT fval IS INITIAL.
    CLEAR bdcdata.
    bdcdata-fnam = fnam.
    bdcdata-fval = fval.
    APPEND bdcdata.
  ENDIF.
  CLEAR wa.
ENDFORM.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;if helpful reward some points.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Sep 2007 14:09:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-using-table-control/m-p/2751886#M640107</guid>
      <dc:creator>suredarreddy_pulimamidi</dc:creator>
      <dc:date>2007-09-03T14:09:41Z</dc:date>
    </item>
    <item>
      <title>Re: bdc using table control</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-using-table-control/m-p/2751887#M640108</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;the programs are useful but here no body used ctu parameters i need some information about ctu parameters and why we use ctu parameters.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Sep 2007 15:08:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-using-table-control/m-p/2751887#M640108</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-03T15:08:55Z</dc:date>
    </item>
    <item>
      <title>Re: bdc using table control</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-using-table-control/m-p/2751888#M640109</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Check the below code :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: f_option type ctu_params,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;f_option-updmode = 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;f_option-defsize = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;f_option-dismode = 'N'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call transaction 'VA01' using bdcdata options from f_option messages into bdcerror.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Normally we use above statement if screen is small from system to system then we use screen resolution.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;suppose you are uploading the data into one transaction,there you can see table control total lines per each page 13 lines ,if you upload from other system ,then it may vary,if you use above command then system will keep exact table controls lines for all system.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope you got it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Seshu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Sep 2007 15:20:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-using-table-control/m-p/2751888#M640109</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-03T15:20:40Z</dc:date>
    </item>
  </channel>
</rss>

