<?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 Re: Function Module in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093519#M435573</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;check this code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Schedule Agreement Data Uploading &lt;/P&gt;&lt;P&gt;*&amp;amp; Report  ZMM_ME31L_UPLOAD&lt;/P&gt;&lt;P&gt;*&amp;amp; Developed by  : HARI&lt;/P&gt;&lt;P&gt;*&amp;amp; Description   : Schedule agreement data uploading&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  ZMMA_ME31L_UPLOAD&lt;/P&gt;&lt;P&gt;  NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;  LINE-SIZE 255.&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;Include for Types, WA, Itab, Constants, Global Variable declarations *&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;include ZMMA_ME31L_UPLOAD_TOP.&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;  At Selection-screen event&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;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM f_get_filename USING p_file.&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 event&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;Subroutine to upload the data into Internal table I_Upload.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM get_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i_ctu_params-defsize = 'X'.&lt;/P&gt;&lt;P&gt;i_ctu_params-NOBINPT = ''.&lt;/P&gt;&lt;P&gt;*i_ctu_params-DISMODE = p_mode.&lt;/P&gt;&lt;P&gt;i_ctu_params-UPDMODE = p_upd.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT i_upload where lifnr is not initial.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  v_index = sy-tabix.&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;Create Scheduling Agreement: Initial Screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMM06E' '0200'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'RM06E-LGORT'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=KOPF'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'EKKO-LIFNR'&lt;/P&gt;&lt;P&gt;                                  I_Upload-Lifnr.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RM06E-EVART'&lt;/P&gt;&lt;P&gt;                                  I_Upload-evart.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RM06E-VEDAT'&lt;/P&gt;&lt;P&gt;                                  i_upload-vedat.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'EKKO-EKORG'&lt;/P&gt;&lt;P&gt;                                  i_upload-ekorg.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'EKKO-EKGRP'&lt;/P&gt;&lt;P&gt;                                  i_upload-ekgrp.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RM06E-WERKS'&lt;/P&gt;&lt;P&gt;                                  i_upload-werks.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RM06E-LGORT'&lt;/P&gt;&lt;P&gt;                                i_upload-lgort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create Scheduling Agreement: Header Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMM06E' '0201'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'EKKO-KDATE'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=AB'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'EKKO-KDATB'&lt;/P&gt;&lt;P&gt;                                  i_upload-kdatb.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'EKKO-KDATE'&lt;/P&gt;&lt;P&gt;                                  i_upload-kdate.&lt;/P&gt;&lt;P&gt;  cnt1 = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  j = 0.&lt;/P&gt;&lt;P&gt;  i = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this loop for item values.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   cnt1 = cnt1 + 1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   g_count1 = cnt1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;filling the item details.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;Begin of New changes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if j EQ 14.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   v_ebelp = i - 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E'  '0220'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                               'RM06E-EBELP'.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              '=P+'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                                '/00'.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using  'RM06E-EBELP'&lt;/P&gt;&lt;P&gt;                                v_ebelp.&lt;/P&gt;&lt;P&gt;    j = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    cnt1 = 2.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   cnt1 = cnt1 + 1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    g_count1 = cnt1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM f_fill_item_details.&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;    cnt1 = cnt1 + 1.&lt;/P&gt;&lt;P&gt;    g_count1 = cnt1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM f_fill_item_details.&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;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;filling the item details.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   i = i + 1.&lt;/P&gt;&lt;P&gt;   j = j + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;Ended New changes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;    cnt2 = 0.&lt;/P&gt;&lt;P&gt;   g_count2 = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   do.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this loop for item condition condition values.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     cnt2  = cnt2 + 1.&lt;/P&gt;&lt;P&gt;     g_count2 = cnt2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;filling the item conditions per each item value.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   PERFORM f_fill_item_condns.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     v_index = v_index + 1.&lt;/P&gt;&lt;P&gt;     read table i_upload index v_index.&lt;/P&gt;&lt;P&gt;     if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;       if not i_upload-ematn is initial.&lt;/P&gt;&lt;P&gt;         exit.&lt;/P&gt;&lt;P&gt;       endif.&lt;/P&gt;&lt;P&gt;     else.&lt;/P&gt;&lt;P&gt;       exit.&lt;/P&gt;&lt;P&gt;     endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    enddo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform bdc_dynpro  using 'SAPMV13A' '0201'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                            'RV13A-DATAB'.&lt;/P&gt;&lt;P&gt;  perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '=BACK  '.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  perform bdc_dynpro  using 'SAPMM06E' '0211'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   read table i_upload index v_index.&lt;/P&gt;&lt;P&gt;   if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;     if not i_upload-lifnr is initial.&lt;/P&gt;&lt;P&gt;       exit.&lt;/P&gt;&lt;P&gt;     endif.&lt;/P&gt;&lt;P&gt;   else.&lt;/P&gt;&lt;P&gt;     exit.&lt;/P&gt;&lt;P&gt;   endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDDO.&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;confirmation for each new vendor save yes/no.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E' '0220'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field USING 'RM06E-EVRTP'&lt;/P&gt;&lt;P&gt;                                 g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field  using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                               g_field.&lt;/P&gt;&lt;P&gt;    perform bdc_field  using 'BDC_OKCODE'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              '=BACK'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                                '=BU'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_dynpro      using 'SAPLSPO1' '0100'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 '=YES'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; PERFORM bdc_transaction using 'ME31L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt; clear i_upload.&lt;/P&gt;&lt;P&gt; refresh i_upload.&lt;/P&gt;&lt;P&gt; free i_upload.&lt;/P&gt;&lt;P&gt; PERFORM bdc_close_group.&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;  End-of-Selection event&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; END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; SKIP 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; write:/ 'Total Number of Transactions : ' color 6, g_tot.&lt;/P&gt;&lt;P&gt;    SKIP 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; write:/ 'Total Number of Success Transactions : ' color 5, g_success.&lt;/P&gt;&lt;P&gt;   SKIP 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; write:/ 'Total Number of Error Transactions : ' color 1, g_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   SKIP 1.&lt;/P&gt;&lt;P&gt;if g_error &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;format color 3.&lt;/P&gt;&lt;P&gt;write:/ 'Please go to Transaction SM35 to process the errors' hotspot.&lt;/P&gt;&lt;P&gt;endif.&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;  At line-Selection event&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;AT LINE-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if SY-LISEL = 'Please go to Transaction SM35 to process the errors'.&lt;/P&gt;&lt;P&gt;call transaction 'SM35'.&lt;/P&gt;&lt;P&gt;endif.&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 new 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;form bdc_dynpro using program dynpro.&lt;/P&gt;&lt;P&gt;  clear bdcdata.&lt;/P&gt;&lt;P&gt;  bdcdata-program  = program.&lt;/P&gt;&lt;P&gt;  bdcdata-dynpro   = dynpro.&lt;/P&gt;&lt;P&gt;  bdcdata-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;  append bdcdata.&lt;/P&gt;&lt;P&gt;endform.&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;       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;&lt;/P&gt;&lt;P&gt;form bdc_field using fnam fval.&lt;/P&gt;&lt;P&gt;  clear bdcdata.&lt;/P&gt;&lt;P&gt;  bdcdata-fnam = fnam.&lt;/P&gt;&lt;P&gt;  bdcdata-fval = fval.&lt;/P&gt;&lt;P&gt;  append bdcdata.&lt;/P&gt;&lt;P&gt;endform.&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 new transaction according to parameters                 *&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_transaction using tcode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: l_mstring(480).&lt;/P&gt;&lt;P&gt;data: l_subrc like sy-subrc.&lt;/P&gt;&lt;P&gt;  refresh messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL TRANSACTION TCODE USING BDCDATA&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                    MODE   p_mode&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                    UPDATE p_upd&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                     messages into messtab&lt;/P&gt;&lt;P&gt;                     OPTIONS FROM i_ctu_params.&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;counting for success records.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;  IF sy-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    g_error = g_error + 1.&lt;/P&gt;&lt;P&gt;    IF E_GROUP_OPENED = ' '.&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;P&gt;          GROUP  = p_sesion&lt;/P&gt;&lt;P&gt;          USER   = sy-uname&lt;/P&gt;&lt;P&gt;          KEEP   = 'X'.&lt;/P&gt;&lt;P&gt;      E_GROUP_OPENED = 'X'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        TCODE     = TCODE&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        DYNPROTAB = BDCDATA.&lt;/P&gt;&lt;P&gt;  else.&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;counting for error records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;   g_success = g_success + 1.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  g_tot = g_tot + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH BDCDATA.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; l_subrc = sy-subrc.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; write: / 'CALL_TRANSACTION',&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          tcode,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          'returncode:'(i05),&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          l_subrc,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          'RECORD:',&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          sy-index.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; loop at messtab.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   select single * from t100 where sprsl = messtab-msgspra&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                             and   arbgb = messtab-msgid&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                             and   msgnr = messtab-msgnr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   if sy-subrc = 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     l_mstring = t100-text.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     if l_mstring cs '&amp;amp;1'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;1' with messtab-msgv1 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;2' with messtab-msgv2 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;3' with messtab-msgv3 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;4' with messtab-msgv4 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     else.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;' with messtab-msgv1 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;' with messtab-msgv2 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;' with messtab-msgv3 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;' with messtab-msgv4 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     endif.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     condense l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     write: / messtab-msgtyp, l_mstring(250).&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   else.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     write: / messtab.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   endif.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; endloop.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; skip.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; refresh bdcdata.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;endform.&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  Get_data&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;write the code to upload the file data in internal table I_UPLOAD.&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 get_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear i_upload.&lt;/P&gt;&lt;P&gt;refresh i_upload.&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_file&lt;/P&gt;&lt;P&gt;   FILETYPE                      = 'DAT'&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    data_tab                      = i_upload&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;   NO_AUTHORITY                  = 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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " Get_data&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_fill_item_details&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;P&gt;form f_fill_item_details.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      input  = g_count1&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      output = g_count1.&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;Create Scheduling Agreement: Item overview&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro   using 'SAPMM06E' '0220'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field USING 'EKPO-KTMNG'&lt;/P&gt;&lt;P&gt;                                 g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                 g_field.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                               '=DETZ'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                                 '/00'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   PERFORM f_get_field  USING  'RM06E-TCSELFLAG'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                g_count1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field   using g_field&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                             'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Begin of changes on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field  USING 'EKPO-KNTTP'&lt;/P&gt;&lt;P&gt;                                 g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using g_field&lt;/P&gt;&lt;P&gt;                              i_upload-knttp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of changes on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field  USING 'EKPO-EMATN'&lt;/P&gt;&lt;P&gt;                                 g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using g_field&lt;/P&gt;&lt;P&gt;                              i_upload-ematn.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field  USING 'EKPO-KTMNG'&lt;/P&gt;&lt;P&gt;                                 g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field  using g_field&lt;/P&gt;&lt;P&gt;                            i_upload-ktmng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   PERFORM f_get_field USING 'EKPO-NETPR'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 g_count1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field  using g_field&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                             '           1'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Begin of changes on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF i_upload-knttp NE SPACE.&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;getting GL A/C Details.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro   using 'SAPMM06E' '0511'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'EKKN-SAKTO'.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=ENTE'.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'EKKN-SAKTO'&lt;/P&gt;&lt;P&gt;                               i_upload-sakto.&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;getting Cost Center value.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro   using 'SAPLKACB' '0002'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'COBL-KOSTL'.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=ENTE'.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'COBL-KOSTL'&lt;/P&gt;&lt;P&gt;                               i_upload-kostl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDIF.&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;Create Scheduling Agreement: Item detials&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E'  '0220'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field USING 'RM06E-EVRTP'&lt;/P&gt;&lt;P&gt;                                g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                   g_field.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=DETA'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field   using 'RM06E-EBELP'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 '1'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM f_get_field USING  'RM06E-TCSELFLAG'&lt;/P&gt;&lt;P&gt;                                g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using g_field&lt;/P&gt;&lt;P&gt;                               'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E'  '0211'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                               'EKPO-MWSKZ'.&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 'EKPO-BSTAE'&lt;/P&gt;&lt;P&gt;                                  i_upload-bstae.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'EKPO-MWSKZ'&lt;/P&gt;&lt;P&gt;                               i_upload-mwskz.&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;End of changes on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;Create Scheduling Agreement: Item overview&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E'  '0220'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field USING 'RM06E-EVRTP'&lt;/P&gt;&lt;P&gt;                                g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                   g_field.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=DETZ'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field   using 'RM06E-EBELP'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 '1'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM f_get_field USING  'RM06E-TCSELFLAG'&lt;/P&gt;&lt;P&gt;                                g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using g_field&lt;/P&gt;&lt;P&gt;                               'X'.&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;Create Scheduling Agreement: Additional data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E' '0212'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'EKPO-ETFZ2'.&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 'EKPO-ETFZ1'&lt;/P&gt;&lt;P&gt;                               i_upload-etfz1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using  'EKPO-ETFZ2'&lt;/P&gt;&lt;P&gt;                               i_upload-etfz2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Begin of Add DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'EKPO-KZSTU'&lt;/P&gt;&lt;P&gt;                               i_upload-kzstu.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of Add on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Create Scheduling Agreement: Item overview&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E'  '0220'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field  USING 'RM06E-EVRTP'&lt;/P&gt;&lt;P&gt;                                  g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                   g_field.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=KO'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field   using 'RM06E-EBELP'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 '1'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM f_get_field USING  'RM06E-TCSELFLAG'&lt;/P&gt;&lt;P&gt;                                g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using g_field&lt;/P&gt;&lt;P&gt;                                 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform bdc_dynpro  using 'SAPMV13A' '0201'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM f_get_field USING 'KONP-KBETR'&lt;/P&gt;&lt;P&gt;                               g_count1.&lt;/P&gt;&lt;P&gt;  perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              g_field.&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  'RV13A-DATAB'&lt;/P&gt;&lt;P&gt;                             i_upload-datab.&lt;/P&gt;&lt;P&gt;  perform bdc_field   using  'RV13A-DATBI'&lt;/P&gt;&lt;P&gt;                              i_upload-datbi.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " f_fill_operation&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_get_field&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;P&gt;form f_get_field  using  p_name  p_count1  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; CLEAR: g_field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   CONCATENATE p_name '(' p_count1 ')' INTO g_field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " f_get_field&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_fill_item_condns&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;P&gt;form f_fill_item_condns .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      input  = g_count2&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      output = g_count2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM f_get_field2 USING 'KONP-KSCHL'&lt;/P&gt;&lt;P&gt;                              g_count2.&lt;/P&gt;&lt;P&gt;  perform bdc_field   using  g_field2&lt;/P&gt;&lt;P&gt;                                i_upload-kschl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM f_get_field2 USING 'KONP-KBETR'&lt;/P&gt;&lt;P&gt;                               g_count2.&lt;/P&gt;&lt;P&gt;  perform bdc_field   using  g_field2&lt;/P&gt;&lt;P&gt;                                i_upload-kbetr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Begin of changes on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM f_get_field2 USING 'KONP-KPEIN'&lt;/P&gt;&lt;P&gt;                               g_count2.&lt;/P&gt;&lt;P&gt;  perform bdc_field   using  g_field2&lt;/P&gt;&lt;P&gt;                                i_upload-kpein.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of changes on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " f_fill_item_condns&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_get_field2&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;P&gt;form f_get_field2  using   p_name2  p_count2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; clear: g_field2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; CONCATENATE p_name2 '(' p_count2 ')' INTO g_field2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " f_get_field2&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_get_filename&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;P&gt;form f_get_filename  using   p_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'WS_FILENAME_GET'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  DEF_FILENAME           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  DEF_PATH               = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   mask                   = ',&lt;STRONG&gt;.&lt;/STRONG&gt;,&lt;STRONG&gt;.&lt;/STRONG&gt;.'&lt;/P&gt;&lt;P&gt;   mode                   = 'O'&lt;/P&gt;&lt;P&gt;   title                  = ' '&lt;/P&gt;&lt;P&gt;   IMPORTING&lt;/P&gt;&lt;P&gt;     filename              = p_file&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  RC                     =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   inv_winsys             = 1&lt;/P&gt;&lt;P&gt;   no_batch               = 2&lt;/P&gt;&lt;P&gt;   selection_cancel       = 3&lt;/P&gt;&lt;P&gt;   selection_error        = 4&lt;/P&gt;&lt;P&gt;   OTHERS                 = 5   .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " f_get_filename&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_close_group&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;P&gt;form bdc_close_group .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  close batchinput group&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF E_GROUP_OPENED = 'X'.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BDC_CLOSE_GROUP'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " bdc_close_group&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;praveen&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 19 Apr 2007 05:39:38 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-04-19T05:39:38Z</dc:date>
    <item>
      <title>Function Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093516#M435570</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Can anyone please tell me what is the functionality of the FM ' CONVERSION_EXIT_ALPHA_INPUT '. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Santosh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2007 05:35:15 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093516#M435570</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-19T05:35:15Z</dc:date>
    </item>
    <item>
      <title>Re: Function Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093517#M435571</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Santosh,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To remove leading zeros and leading blanks, use FM :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONVERSION_EXIT_ALPHA_INPUT Conversion exit ALPHA, external-&amp;gt;internal&lt;/P&gt;&lt;P&gt;CONVERSION_EXIT_ALPHA_OUTPUT Conversion exit ALPHA, internal-&amp;gt;external&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For ex :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;            EXPORTING&lt;/P&gt;&lt;P&gt;              input  = wf_version&lt;/P&gt;&lt;P&gt;            IMPORTING&lt;/P&gt;&lt;P&gt;              output = wf_version.&lt;/P&gt;&lt;P&gt;&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;input = 123 &lt;/P&gt;&lt;P&gt;output = 0000000000000...000000000000123&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this resolves your query.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Reward all the helpful answers.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2007 05:36:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093517#M435571</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-19T05:36:53Z</dc:date>
    </item>
    <item>
      <title>Re: Function Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093518#M435572</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;It is well documented.&lt;/P&gt;&lt;P&gt;Check this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Conversion exit ALPHA, external-&amp;gt;internal&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ALPHA conversion is used especially with account numbers. During conversion from the external to the internal format, the system checks to see if input in the INPUT field is purely numeric, that is, if this input consists only of numbers, possibly with spaces before and after them. If this is the case, then the number string is inserted right- justified in the display field OUTPUT and all spaces to the left of the value are filled with zeroes ('0'). If the input is not purely numeric, it is inserted in the display field from left to right and all extra spaces are filled with blanks.&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;(Input field and output field are both eight characters in length)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. '1234 ' --&amp;gt; '00001234'&lt;/P&gt;&lt;P&gt;2. 'ABCD ' --&amp;gt; 'ABCD '&lt;/P&gt;&lt;P&gt;3. ' 1234 ' --&amp;gt; '00001234'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Conversion from the internal to the external format (function module CONVERSION_EXIT_ALPHA_OUTPUT) is undertaken in exactly the opposite manner.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Usage:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call function 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;exporting&lt;/P&gt;&lt;P&gt;input = v_input&lt;/P&gt;&lt;P&gt;importing&lt;/P&gt;&lt;P&gt;output = v_output&lt;/P&gt;&lt;P&gt;exceptions&lt;/P&gt;&lt;P&gt;others = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kishi.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2007 05:39:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093518#M435572</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-19T05:39:22Z</dc:date>
    </item>
    <item>
      <title>Re: Function Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093519#M435573</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;check this code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Schedule Agreement Data Uploading &lt;/P&gt;&lt;P&gt;*&amp;amp; Report  ZMM_ME31L_UPLOAD&lt;/P&gt;&lt;P&gt;*&amp;amp; Developed by  : HARI&lt;/P&gt;&lt;P&gt;*&amp;amp; Description   : Schedule agreement data uploading&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  ZMMA_ME31L_UPLOAD&lt;/P&gt;&lt;P&gt;  NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;  LINE-SIZE 255.&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;Include for Types, WA, Itab, Constants, Global Variable declarations *&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;include ZMMA_ME31L_UPLOAD_TOP.&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;  At Selection-screen event&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;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM f_get_filename USING p_file.&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 event&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;Subroutine to upload the data into Internal table I_Upload.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM get_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i_ctu_params-defsize = 'X'.&lt;/P&gt;&lt;P&gt;i_ctu_params-NOBINPT = ''.&lt;/P&gt;&lt;P&gt;*i_ctu_params-DISMODE = p_mode.&lt;/P&gt;&lt;P&gt;i_ctu_params-UPDMODE = p_upd.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT i_upload where lifnr is not initial.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  v_index = sy-tabix.&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;Create Scheduling Agreement: Initial Screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMM06E' '0200'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'RM06E-LGORT'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=KOPF'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'EKKO-LIFNR'&lt;/P&gt;&lt;P&gt;                                  I_Upload-Lifnr.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RM06E-EVART'&lt;/P&gt;&lt;P&gt;                                  I_Upload-evart.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RM06E-VEDAT'&lt;/P&gt;&lt;P&gt;                                  i_upload-vedat.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'EKKO-EKORG'&lt;/P&gt;&lt;P&gt;                                  i_upload-ekorg.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'EKKO-EKGRP'&lt;/P&gt;&lt;P&gt;                                  i_upload-ekgrp.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RM06E-WERKS'&lt;/P&gt;&lt;P&gt;                                  i_upload-werks.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'RM06E-LGORT'&lt;/P&gt;&lt;P&gt;                                i_upload-lgort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Create Scheduling Agreement: Header Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMM06E' '0201'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'EKKO-KDATE'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=AB'.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'EKKO-KDATB'&lt;/P&gt;&lt;P&gt;                                  i_upload-kdatb.&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'EKKO-KDATE'&lt;/P&gt;&lt;P&gt;                                  i_upload-kdate.&lt;/P&gt;&lt;P&gt;  cnt1 = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  j = 0.&lt;/P&gt;&lt;P&gt;  i = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this loop for item values.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   cnt1 = cnt1 + 1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   g_count1 = cnt1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;filling the item details.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;Begin of New changes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if j EQ 14.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   v_ebelp = i - 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E'  '0220'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                               'RM06E-EBELP'.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              '=P+'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                                '/00'.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using  'RM06E-EBELP'&lt;/P&gt;&lt;P&gt;                                v_ebelp.&lt;/P&gt;&lt;P&gt;    j = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    cnt1 = 2.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   cnt1 = cnt1 + 1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    g_count1 = cnt1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM f_fill_item_details.&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;    cnt1 = cnt1 + 1.&lt;/P&gt;&lt;P&gt;    g_count1 = cnt1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM f_fill_item_details.&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;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;filling the item details.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   i = i + 1.&lt;/P&gt;&lt;P&gt;   j = j + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;Ended New changes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;    cnt2 = 0.&lt;/P&gt;&lt;P&gt;   g_count2 = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   do.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this loop for item condition condition values.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     cnt2  = cnt2 + 1.&lt;/P&gt;&lt;P&gt;     g_count2 = cnt2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;filling the item conditions per each item value.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   PERFORM f_fill_item_condns.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     v_index = v_index + 1.&lt;/P&gt;&lt;P&gt;     read table i_upload index v_index.&lt;/P&gt;&lt;P&gt;     if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;       if not i_upload-ematn is initial.&lt;/P&gt;&lt;P&gt;         exit.&lt;/P&gt;&lt;P&gt;       endif.&lt;/P&gt;&lt;P&gt;     else.&lt;/P&gt;&lt;P&gt;       exit.&lt;/P&gt;&lt;P&gt;     endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    enddo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform bdc_dynpro  using 'SAPMV13A' '0201'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                            'RV13A-DATAB'.&lt;/P&gt;&lt;P&gt;  perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                              '=BACK  '.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  perform bdc_dynpro  using 'SAPMM06E' '0211'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   read table i_upload index v_index.&lt;/P&gt;&lt;P&gt;   if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;     if not i_upload-lifnr is initial.&lt;/P&gt;&lt;P&gt;       exit.&lt;/P&gt;&lt;P&gt;     endif.&lt;/P&gt;&lt;P&gt;   else.&lt;/P&gt;&lt;P&gt;     exit.&lt;/P&gt;&lt;P&gt;   endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDDO.&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;confirmation for each new vendor save yes/no.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E' '0220'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field USING 'RM06E-EVRTP'&lt;/P&gt;&lt;P&gt;                                 g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field  using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                               g_field.&lt;/P&gt;&lt;P&gt;    perform bdc_field  using 'BDC_OKCODE'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              '=BACK'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                                '=BU'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_dynpro      using 'SAPLSPO1' '0100'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 '=YES'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; PERFORM bdc_transaction using 'ME31L'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;P&gt; clear i_upload.&lt;/P&gt;&lt;P&gt; refresh i_upload.&lt;/P&gt;&lt;P&gt; free i_upload.&lt;/P&gt;&lt;P&gt; PERFORM bdc_close_group.&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;  End-of-Selection event&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; END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; SKIP 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; write:/ 'Total Number of Transactions : ' color 6, g_tot.&lt;/P&gt;&lt;P&gt;    SKIP 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; write:/ 'Total Number of Success Transactions : ' color 5, g_success.&lt;/P&gt;&lt;P&gt;   SKIP 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; write:/ 'Total Number of Error Transactions : ' color 1, g_error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   SKIP 1.&lt;/P&gt;&lt;P&gt;if g_error &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;format color 3.&lt;/P&gt;&lt;P&gt;write:/ 'Please go to Transaction SM35 to process the errors' hotspot.&lt;/P&gt;&lt;P&gt;endif.&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;  At line-Selection event&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;AT LINE-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if SY-LISEL = 'Please go to Transaction SM35 to process the errors'.&lt;/P&gt;&lt;P&gt;call transaction 'SM35'.&lt;/P&gt;&lt;P&gt;endif.&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 new 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;form bdc_dynpro using program dynpro.&lt;/P&gt;&lt;P&gt;  clear bdcdata.&lt;/P&gt;&lt;P&gt;  bdcdata-program  = program.&lt;/P&gt;&lt;P&gt;  bdcdata-dynpro   = dynpro.&lt;/P&gt;&lt;P&gt;  bdcdata-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;  append bdcdata.&lt;/P&gt;&lt;P&gt;endform.&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;       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;&lt;/P&gt;&lt;P&gt;form bdc_field using fnam fval.&lt;/P&gt;&lt;P&gt;  clear bdcdata.&lt;/P&gt;&lt;P&gt;  bdcdata-fnam = fnam.&lt;/P&gt;&lt;P&gt;  bdcdata-fval = fval.&lt;/P&gt;&lt;P&gt;  append bdcdata.&lt;/P&gt;&lt;P&gt;endform.&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 new transaction according to parameters                 *&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_transaction using tcode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: l_mstring(480).&lt;/P&gt;&lt;P&gt;data: l_subrc like sy-subrc.&lt;/P&gt;&lt;P&gt;  refresh messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL TRANSACTION TCODE USING BDCDATA&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                    MODE   p_mode&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                    UPDATE p_upd&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                     messages into messtab&lt;/P&gt;&lt;P&gt;                     OPTIONS FROM i_ctu_params.&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;counting for success records.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;  IF sy-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    g_error = g_error + 1.&lt;/P&gt;&lt;P&gt;    IF E_GROUP_OPENED = ' '.&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;P&gt;          GROUP  = p_sesion&lt;/P&gt;&lt;P&gt;          USER   = sy-uname&lt;/P&gt;&lt;P&gt;          KEEP   = 'X'.&lt;/P&gt;&lt;P&gt;      E_GROUP_OPENED = 'X'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        TCODE     = TCODE&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        DYNPROTAB = BDCDATA.&lt;/P&gt;&lt;P&gt;  else.&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;counting for error records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;   g_success = g_success + 1.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  g_tot = g_tot + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH BDCDATA.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; l_subrc = sy-subrc.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; write: / 'CALL_TRANSACTION',&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          tcode,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          'returncode:'(i05),&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          l_subrc,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          'RECORD:',&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          sy-index.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; loop at messtab.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   select single * from t100 where sprsl = messtab-msgspra&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                             and   arbgb = messtab-msgid&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                             and   msgnr = messtab-msgnr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   if sy-subrc = 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     l_mstring = t100-text.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     if l_mstring cs '&amp;amp;1'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;1' with messtab-msgv1 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;2' with messtab-msgv2 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;3' with messtab-msgv3 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;4' with messtab-msgv4 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     else.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;' with messtab-msgv1 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;' with messtab-msgv2 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;' with messtab-msgv3 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       replace '&amp;amp;' with messtab-msgv4 into l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     endif.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     condense l_mstring.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     write: / messtab-msgtyp, l_mstring(250).&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   else.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     write: / messtab.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   endif.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; endloop.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; skip.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; refresh bdcdata.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;endform.&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  Get_data&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;write the code to upload the file data in internal table I_UPLOAD.&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 get_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear i_upload.&lt;/P&gt;&lt;P&gt;refresh i_upload.&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_file&lt;/P&gt;&lt;P&gt;   FILETYPE                      = 'DAT'&lt;/P&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    data_tab                      = i_upload&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;   NO_AUTHORITY                  = 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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " Get_data&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_fill_item_details&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;P&gt;form f_fill_item_details.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      input  = g_count1&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      output = g_count1.&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;Create Scheduling Agreement: Item overview&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro   using 'SAPMM06E' '0220'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field USING 'EKPO-KTMNG'&lt;/P&gt;&lt;P&gt;                                 g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                 g_field.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                               '=DETZ'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                                 '/00'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   PERFORM f_get_field  USING  'RM06E-TCSELFLAG'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                g_count1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field   using g_field&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                             'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Begin of changes on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field  USING 'EKPO-KNTTP'&lt;/P&gt;&lt;P&gt;                                 g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using g_field&lt;/P&gt;&lt;P&gt;                              i_upload-knttp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of changes on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field  USING 'EKPO-EMATN'&lt;/P&gt;&lt;P&gt;                                 g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using g_field&lt;/P&gt;&lt;P&gt;                              i_upload-ematn.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field  USING 'EKPO-KTMNG'&lt;/P&gt;&lt;P&gt;                                 g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field  using g_field&lt;/P&gt;&lt;P&gt;                            i_upload-ktmng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   PERFORM f_get_field USING 'EKPO-NETPR'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 g_count1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field  using g_field&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                             '           1'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Begin of changes on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF i_upload-knttp NE SPACE.&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;getting GL A/C Details.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro   using 'SAPMM06E' '0511'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'EKKN-SAKTO'.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=ENTE'.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'EKKN-SAKTO'&lt;/P&gt;&lt;P&gt;                               i_upload-sakto.&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;getting Cost Center value.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro   using 'SAPLKACB' '0002'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'COBL-KOSTL'.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=ENTE'.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'COBL-KOSTL'&lt;/P&gt;&lt;P&gt;                               i_upload-kostl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDIF.&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;Create Scheduling Agreement: Item detials&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E'  '0220'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field USING 'RM06E-EVRTP'&lt;/P&gt;&lt;P&gt;                                g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                   g_field.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=DETA'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field   using 'RM06E-EBELP'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 '1'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM f_get_field USING  'RM06E-TCSELFLAG'&lt;/P&gt;&lt;P&gt;                                g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using g_field&lt;/P&gt;&lt;P&gt;                               'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E'  '0211'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                               'EKPO-MWSKZ'.&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 'EKPO-BSTAE'&lt;/P&gt;&lt;P&gt;                                  i_upload-bstae.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'EKPO-MWSKZ'&lt;/P&gt;&lt;P&gt;                               i_upload-mwskz.&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;End of changes on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;Create Scheduling Agreement: Item overview&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E'  '0220'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field USING 'RM06E-EVRTP'&lt;/P&gt;&lt;P&gt;                                g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                   g_field.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=DETZ'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field   using 'RM06E-EBELP'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 '1'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM f_get_field USING  'RM06E-TCSELFLAG'&lt;/P&gt;&lt;P&gt;                                g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using g_field&lt;/P&gt;&lt;P&gt;                               'X'.&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;Create Scheduling Agreement: Additional data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E' '0212'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                  'EKPO-ETFZ2'.&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 'EKPO-ETFZ1'&lt;/P&gt;&lt;P&gt;                               i_upload-etfz1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using  'EKPO-ETFZ2'&lt;/P&gt;&lt;P&gt;                               i_upload-etfz2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Begin of Add DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'EKPO-KZSTU'&lt;/P&gt;&lt;P&gt;                               i_upload-kzstu.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of Add on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Create Scheduling Agreement: Item overview&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro  using 'SAPMM06E'  '0220'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM f_get_field  USING 'RM06E-EVRTP'&lt;/P&gt;&lt;P&gt;                                  g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                                   g_field.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=KO'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field   using 'RM06E-EBELP'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 '1'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    PERFORM f_get_field USING  'RM06E-TCSELFLAG'&lt;/P&gt;&lt;P&gt;                                g_count1.&lt;/P&gt;&lt;P&gt;    perform bdc_field   using g_field&lt;/P&gt;&lt;P&gt;                                 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform bdc_dynpro  using 'SAPMV13A' '0201'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM f_get_field USING 'KONP-KBETR'&lt;/P&gt;&lt;P&gt;                               g_count1.&lt;/P&gt;&lt;P&gt;  perform bdc_field   using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;                              g_field.&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  'RV13A-DATAB'&lt;/P&gt;&lt;P&gt;                             i_upload-datab.&lt;/P&gt;&lt;P&gt;  perform bdc_field   using  'RV13A-DATBI'&lt;/P&gt;&lt;P&gt;                              i_upload-datbi.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " f_fill_operation&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_get_field&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;P&gt;form f_get_field  using  p_name  p_count1  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; CLEAR: g_field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   CONCATENATE p_name '(' p_count1 ')' INTO g_field.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " f_get_field&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_fill_item_condns&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;P&gt;form f_fill_item_condns .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      input  = g_count2&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      output = g_count2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM f_get_field2 USING 'KONP-KSCHL'&lt;/P&gt;&lt;P&gt;                              g_count2.&lt;/P&gt;&lt;P&gt;  perform bdc_field   using  g_field2&lt;/P&gt;&lt;P&gt;                                i_upload-kschl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM f_get_field2 USING 'KONP-KBETR'&lt;/P&gt;&lt;P&gt;                               g_count2.&lt;/P&gt;&lt;P&gt;  perform bdc_field   using  g_field2&lt;/P&gt;&lt;P&gt;                                i_upload-kbetr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Begin of changes on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM f_get_field2 USING 'KONP-KPEIN'&lt;/P&gt;&lt;P&gt;                               g_count2.&lt;/P&gt;&lt;P&gt;  perform bdc_field   using  g_field2&lt;/P&gt;&lt;P&gt;                                i_upload-kpein.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of changes on DEVK903540 Request by Hari.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " f_fill_item_condns&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_get_field2&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;P&gt;form f_get_field2  using   p_name2  p_count2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; clear: g_field2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; CONCATENATE p_name2 '(' p_count2 ')' INTO g_field2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " f_get_field2&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_get_filename&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;P&gt;form f_get_filename  using   p_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'WS_FILENAME_GET'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  DEF_FILENAME           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  DEF_PATH               = ' '&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   mask                   = ',&lt;STRONG&gt;.&lt;/STRONG&gt;,&lt;STRONG&gt;.&lt;/STRONG&gt;.'&lt;/P&gt;&lt;P&gt;   mode                   = 'O'&lt;/P&gt;&lt;P&gt;   title                  = ' '&lt;/P&gt;&lt;P&gt;   IMPORTING&lt;/P&gt;&lt;P&gt;     filename              = p_file&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  RC                     =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   inv_winsys             = 1&lt;/P&gt;&lt;P&gt;   no_batch               = 2&lt;/P&gt;&lt;P&gt;   selection_cancel       = 3&lt;/P&gt;&lt;P&gt;   selection_error        = 4&lt;/P&gt;&lt;P&gt;   OTHERS                 = 5   .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " f_get_filename&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_close_group&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;P&gt;form bdc_close_group .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  close batchinput group&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF E_GROUP_OPENED = 'X'.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BDC_CLOSE_GROUP'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " bdc_close_group&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;praveen&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2007 05:39:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093519#M435573</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-19T05:39:38Z</dc:date>
    </item>
    <item>
      <title>Re: Function Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093520#M435574</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONVERSION_EXIT_ALPHA_INPUT ..&lt;/P&gt;&lt;P&gt;This function module converts , say for example MATNR , converts MATNR value to internal format value,&lt;/P&gt;&lt;P&gt;If the external value is a number,then the number string is inserted right- justified in the display field OUTPUT and all spaces to the left of the value are filled with zeroes ('0').&lt;/P&gt;&lt;P&gt;If the input is not purely numeric, it is inserted in the display field from left to right and all extra spaces are filled with blanks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&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;(Input field and output field are both eight characters in length)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. '1234    ' --&amp;gt; '00001234'&lt;/P&gt;&lt;P&gt;2. 'ABCD    ' --&amp;gt; 'ABCD    '&lt;/P&gt;&lt;P&gt;3. ' 1234   ' --&amp;gt; '00001234'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward if useful,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;nazeer&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2007 05:41:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093520#M435574</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-19T05:41:54Z</dc:date>
    </item>
    <item>
      <title>Re: Function Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093521#M435575</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; It is used to convert external account numbers to internal format depending on the number. if the number is purely numeric zeros are added to the remaining spaces on the left side of the number. If the number contains characters spaces are remained as it is.&lt;/P&gt;&lt;P&gt;&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; (Input field and output field&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 1.  '1234    '   &amp;gt; '00001234'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 2.  'ABCD    '   &amp;gt; 'ABCD    '&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 3.  ' 1234   '   &amp;gt; '00001234'&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2007 05:42:57 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093521#M435575</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-19T05:42:57Z</dc:date>
    </item>
    <item>
      <title>Re: Function Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093522#M435576</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;This CONVERSION_EXIT_ALPHA_INPUT ' FM is used for adding 0's in ur variables.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards &lt;/P&gt;&lt;P&gt;Santosh.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2007 05:43:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093522#M435576</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-19T05:43:55Z</dc:date>
    </item>
    <item>
      <title>Re: Function Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093523#M435577</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;CONVERSION_EXIT_ALPHA_INPUT This function module is used to append leading zeroes...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    input         = 123&lt;/P&gt;&lt;UL&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;  OUTPUT        =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2007 05:44:58 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093523#M435577</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-19T05:44:58Z</dc:date>
    </item>
    <item>
      <title>Re: Function Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093524#M435578</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;CONVERSION_EXIT_ALPHA_INPUT &lt;/P&gt;&lt;P&gt;CONVERSION_EXIT_ALPHA_OUTPUT &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;These function modules convert the value of an external represntation of a field into an internal format or vice versa.(Meaning for some fields like MATNR, then value which you see is not the way it is stored in the database. The value that you see is the external format, and the value which is stored inside the database id the internal format. These function modules convert the values of such fields from internal to external and vice versa.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for example&lt;/P&gt;&lt;P&gt;The customer number is stored '0001005000' in the database.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;DATA: WA_KUNAG LIKE KNA1-KUNNR.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;WA_KUNAG = '1005000'.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;    INPUT =  WA_KUNAG&lt;/P&gt;&lt;P&gt;  IMPORTING&lt;/P&gt;&lt;P&gt;    OUTPUT = WA_KUNAG.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;E1BPPARNR-PARTN_NUMB = WA_KUNAG. &lt;/P&gt;&lt;P&gt;E1BPPARNR-PARTN_ROLE = 'AG'.&lt;/P&gt;&lt;P&gt;E1BPPARNR-ITM_NUMBER = '000000'.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2007 05:46:14 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093524#M435578</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-19T05:46:14Z</dc:date>
    </item>
    <item>
      <title>Re: Function Module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093525#M435579</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;thanks a lot for the inputs&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Apr 2007 05:49:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2093525#M435579</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-04-19T05:49:35Z</dc:date>
    </item>
  </channel>
</rss>

