<?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: BDC - Read File in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-read-file/m-p/3994700#M954319</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;STRONG&gt;check this report................i am get the data from application server and running a bdc.................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables: zdms_textno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of it_upload1 occurs 0,&lt;/P&gt;&lt;P&gt;       kunnr like vbak-kunnr,&lt;/P&gt;&lt;P&gt;       pno  like vbrk-bstnk_vf,&lt;/P&gt;&lt;P&gt;       idate(10), " like vbrk-fkdat,&lt;/P&gt;&lt;P&gt;       pernr like p0000-pernr,&lt;/P&gt;&lt;P&gt;      end of it_upload1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of it_upload2 occurs 0,&lt;/P&gt;&lt;P&gt;       pno    like vbrk-bstnk_vf,&lt;/P&gt;&lt;P&gt;       matnr  like vbrp-matnr,&lt;/P&gt;&lt;P&gt;       kwmeng like rv45a-kwmeng,&lt;/P&gt;&lt;P&gt;      end of it_upload2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of it_up1 occurs 0,&lt;/P&gt;&lt;P&gt;       string1(66),&lt;/P&gt;&lt;P&gt;      end of it_up1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of it_up2 occurs 0,&lt;/P&gt;&lt;P&gt;       string2(70),&lt;/P&gt;&lt;P&gt;      end of it_up2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: it_zdms_textno like zdms_textno occurs 0 with header line.&lt;/P&gt;&lt;P&gt;data: it_order like standard table of zdms_log with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: bdcdata   like bdcdata    occurs 0 with header line.&lt;/P&gt;&lt;P&gt;data: gt_bdcmsg like bdcmsgcoll occurs 0 with header line,&lt;/P&gt;&lt;P&gt;      file1     type rlgrap-filename   .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: it_textno like zdms_textno occurs 0,&lt;/P&gt;&lt;P&gt;      wa_textno like line of it_textno   .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : gv_filenum like zdms_textno-filenumber  ,&lt;/P&gt;&lt;P&gt;       gv_filenumc(10) type c .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*DATA : gv_path TYPE rlgrap-filename.&lt;/P&gt;&lt;P&gt;data : gv_path(100) type c.&lt;/P&gt;&lt;P&gt;data: gv_file1 type string.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: gv_char1(15) ,&lt;/P&gt;&lt;P&gt;      gv_char2(16),&lt;/P&gt;&lt;P&gt;      gv_char3(15),&lt;/P&gt;&lt;P&gt;      gv_qty(15),&lt;/P&gt;&lt;P&gt;      n type i,&lt;/P&gt;&lt;P&gt;      m(2),&lt;/P&gt;&lt;P&gt;      gv_msg(50),&lt;/P&gt;&lt;P&gt;      gv_kwmeng(15),&lt;/P&gt;&lt;P&gt;      gv_kwmeng1(15),&lt;/P&gt;&lt;P&gt;      gv_string1(66),&lt;/P&gt;&lt;P&gt;      gv_string2(70),&lt;/P&gt;&lt;P&gt;      numc1(10),&lt;/P&gt;&lt;P&gt;      rec(70) ,&lt;/P&gt;&lt;P&gt;      ln type i,&lt;/P&gt;&lt;P&gt;      gv_pernr(8),&lt;/P&gt;&lt;P&gt;      gv_pernr1(8),&lt;/P&gt;&lt;P&gt;      p type i  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : lw_string type string.&lt;/P&gt;&lt;P&gt;data : wa_order like line of it_order.&lt;/P&gt;&lt;P&gt;data : mess type string.&lt;/P&gt;&lt;P&gt;data : d_server type string value 'r3prod_EEP_05'.&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;P&gt;  ln = 2 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  while ln gt 1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;Start of Added by Durai.V 30-May-2008******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;    clear it_upload1.&lt;/P&gt;&lt;P&gt;    clear it_upload1[].&lt;/P&gt;&lt;P&gt;    clear it_upload2.&lt;/P&gt;&lt;P&gt;    clear it_upload2[].&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;End of Added by Durai.V 30-May-2008********&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if sy-subrc ne 0 .&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;    perform bdc_execute.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endwhile.&lt;/P&gt;&lt;P&gt;*****************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form Upload&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**************&lt;/P&gt;&lt;P&gt;form upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear:  gv_filenum ,&lt;/P&gt;&lt;P&gt;          gv_filenumc,&lt;/P&gt;&lt;P&gt;          gv_file1   ,&lt;/P&gt;&lt;P&gt;          gv_path,&lt;/P&gt;&lt;P&gt;          wa_textno  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  select single filenumber path&lt;/P&gt;&lt;P&gt;         from   zdms_textno&lt;/P&gt;&lt;P&gt;         into   (gv_filenum,gv_path)&lt;/P&gt;&lt;P&gt;         where  filename eq 'INCOMING' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  move  gv_filenum to gv_filenumc  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  shift gv_filenumc left deleting leading '0'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*concatenate 'F:\usr\sap\EED\DVEBMGS00\work\EFC_Indent_Hdr_'&lt;/P&gt;&lt;P&gt;  concatenate gv_path 'EFC_Indent_Hdr_'&lt;/P&gt;&lt;P&gt;              gv_filenumc&lt;/P&gt;&lt;P&gt;              '.txt'&lt;/P&gt;&lt;P&gt;         into gv_file1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;Start of Added by Durai.V 30-May-2008******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;  clear it_up1.&lt;/P&gt;&lt;P&gt;  clear it_up1[].&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;End of Added by Durai.V 30-May-2008********&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  call function 'DX_FILE_READ' destination d_server&lt;/P&gt;&lt;P&gt;    exporting&lt;/P&gt;&lt;P&gt;      filename          = gv_file1&lt;/P&gt;&lt;P&gt;    tables&lt;/P&gt;&lt;P&gt;      data_tab          = it_up1&lt;/P&gt;&lt;P&gt;    exceptions&lt;/P&gt;&lt;P&gt;      no_file_on_server = 1&lt;/P&gt;&lt;P&gt;      no_data_on_server = 2&lt;/P&gt;&lt;P&gt;      gui_upload_failed = 3&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     no_authority      = 4&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      others            = 5.&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;    write :  gv_file1 , 'File not found'.&lt;/P&gt;&lt;P&gt;    exit.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;Start of Added by Durai.V 30-May-2008******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;  write : / 'Application Server File Path for Header: ',gv_file1.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;End of Added by Durai.V 30-May-2008********&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*************************************&lt;STRONG&gt;Commented By Anbu&lt;/STRONG&gt;****************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; OPEN DATASET gv_file1 FOR INPUT IN TEXT MODE ENCODING DEFAULT MESSAGE mess .&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; IF sy-subrc = 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   DO.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     READ DATASET gv_file1 INTO rec .&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;       MOVE rec TO it_up1-string1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       APPEND it_up1 .&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;       EXIT.&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;   ENDDO .&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 :  gv_file1 , mess,   'File not found'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   EXIT.  "MESSAGE ID 'SDV' TYPE 'E' NUMBER '000' WITH 'Header File Not Available'  .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  close dataset gv_file1  .&lt;/P&gt;&lt;P&gt;*************************************&lt;STRONG&gt;Ended By Anbu&lt;/STRONG&gt;****************************************************&lt;/P&gt;&lt;P&gt;  if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    wa_textno-filename   = 'INCOMING'      .&lt;/P&gt;&lt;P&gt;    wa_textno-filenumber = gv_filenum + 1  .&lt;/P&gt;&lt;P&gt;    wa_textno-path       = gv_path.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  shift zdms_textno left deleting leading ' ' .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    modify zdms_textno from wa_textno      .&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  loop at it_up1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    gv_string1 = it_up1-string1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if gv_string1 eq 'EOF' .&lt;/P&gt;&lt;P&gt;      exit.&lt;/P&gt;&lt;P&gt;    else.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      split gv_string1 at '~' into: it_upload1-kunnr it_upload1-pno it_upload1-idate it_upload1-pernr .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      clear : gv_pernr ,gv_pernr1, p .&lt;/P&gt;&lt;P&gt;      p = 0 .&lt;/P&gt;&lt;P&gt;      move it_upload1-pernr to gv_pernr1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      do 8 times.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        if ( gv_pernr1(1) eq '0' or gv_pernr1&lt;EM&gt;p(1) eq '1' or gv_pernr1&lt;/EM&gt;p(1) eq '2' or gv_pernr1&lt;EM&gt;p(1) eq '3' or gv_pernr1&lt;/EM&gt;p(1) eq '4'&lt;/P&gt;&lt;P&gt;              or gv_pernr1&lt;EM&gt;p(1) eq '5' or gv_pernr1&lt;/EM&gt;p(1) eq '6' or gv_pernr1&lt;EM&gt;p(1) eq '7' or gv_pernr1&lt;/EM&gt;p(1) eq '8'&lt;/P&gt;&lt;P&gt;              or gv_pernr1+p(1) eq '9' ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          concatenate gv_pernr1&lt;/P&gt;&lt;P&gt;                      gv_pernr1+p(1)&lt;/P&gt;&lt;P&gt;                 into gv_pernr1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          p = p + 1.&lt;/P&gt;&lt;P&gt;&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;      enddo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      move gv_pernr to  it_upload1-pernr .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      append it_upload1.&lt;/P&gt;&lt;P&gt;      clear gv_string1 .&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;  clear:  gv_filenumc,&lt;/P&gt;&lt;P&gt;          gv_file1  ,&lt;/P&gt;&lt;P&gt;          wa_textno  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  gv_filenum = gv_filenum + 1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  move  gv_filenum to gv_filenumc  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  shift gv_filenumc left deleting leading '0'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   if gv_filenum &amp;lt; 10 .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     concatenate '0' gv_filenumc into gv_filenumc .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   endif.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*concatenate 'F:\usr\sap\EED\DVEBMGS00\work\EFC_Indent_Trn_'&lt;/P&gt;&lt;P&gt;  concatenate gv_path 'EFC_Indent_Trn_'&lt;/P&gt;&lt;P&gt;              gv_filenumc&lt;/P&gt;&lt;P&gt;              '.txt'&lt;/P&gt;&lt;P&gt;         into gv_file1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;Start of Added by Durai.V 30-May-2008******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;  clear it_up2.&lt;/P&gt;&lt;P&gt;  clear it_up2[].&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;End of Added by Durai.V 30-May-2008********&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  call function 'DX_FILE_READ' destination  d_server&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      exporting&lt;/P&gt;&lt;P&gt;        filename                = gv_file1&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  SERVER                  =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   pc                      =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      tables&lt;/P&gt;&lt;P&gt;        data_tab                = it_up2&lt;/P&gt;&lt;P&gt; exceptions&lt;/P&gt;&lt;P&gt;   no_file_on_server       = 1&lt;/P&gt;&lt;P&gt;   no_data_on_server       = 2&lt;/P&gt;&lt;P&gt;   gui_upload_failed       = 3&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  NO_AUTHORITY            = 4&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   others                  = 5&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;    write :  gv_file1 , 'File not found'.&lt;/P&gt;&lt;P&gt;    exit.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;Start of Added by Durai.V 30-May-2008******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;  write : / 'Application Server File Path for Item : ',gv_file1.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;End of Added by Durai.V 30-May-2008********&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&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;Commented By Anbu&lt;/STRONG&gt;****************************************************&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; OPEN DATASET gv_file1 FOR INPUT IN TEXT MODE ENCODING DEFAULT MESSAGE mess  .&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;   DO.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     READ DATASET gv_file1 INTO rec .&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;       MOVE rec TO it_up2-string2.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       APPEND it_up2 .&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;       EXIT.&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;   ENDDO.&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 :  gv_file1 , mess ,  'File not found'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   EXIT. "MESSAGE ID 'SDV' TYPE 'E' NUMBER '000' WITH 'Transaction File Not Available'  .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  close dataset gv_file1.&lt;/P&gt;&lt;P&gt;*************************************&lt;STRONG&gt;Ended By Anbu&lt;/STRONG&gt;****************************************************&lt;/P&gt;&lt;P&gt;  if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    wa_textno-filename   = 'INCOMING'     .&lt;/P&gt;&lt;P&gt;    wa_textno-filenumber = gv_filenum + 1 .&lt;/P&gt;&lt;P&gt;    wa_textno-path       = gv_path.&lt;/P&gt;&lt;P&gt;    modify zdms_textno from wa_textno     .&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;  loop at it_up2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    gv_string2 = it_up2-string2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if gv_string2 eq 'EOF' .&lt;/P&gt;&lt;P&gt;      exit.&lt;/P&gt;&lt;P&gt;    else.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      split gv_string2 at '~' into: it_upload2-pno it_upload2-matnr gv_kwmeng1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; shift gv_kwmeng1 right deleting trailing '#' .&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt; shift gv_kwmeng1 left deleting leading '' .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      clear : gv_kwmeng ,p .&lt;/P&gt;&lt;P&gt;      p = 0 .&lt;/P&gt;&lt;P&gt;      do 15 times.&lt;/P&gt;&lt;P&gt;        if ( gv_kwmeng1+p(1) eq '0' or gv_kwmeng1+p(1) eq '1' or gv_kwmeng1+p(1) eq '2' or gv_kwmeng1+p(1) eq '3' or gv_kwmeng1+p(1) eq '4'&lt;/P&gt;&lt;P&gt;              or gv_kwmeng1+p(1) eq '5' or gv_kwmeng1+p(1) eq '6' or gv_kwmeng1+p(1) eq '7' or gv_kwmeng1+p(1) eq '8'&lt;/P&gt;&lt;P&gt;              or gv_kwmeng1+p(1) eq '9' ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          concatenate gv_kwmeng&lt;/P&gt;&lt;P&gt;                      gv_kwmeng1+p(1)&lt;/P&gt;&lt;P&gt;                 into gv_kwmeng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          p = p + 1.&lt;/P&gt;&lt;P&gt;&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;      enddo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      move gv_kwmeng to it_upload2-kwmeng.&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; if gv_kwmeng1 CA&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   '#~`!@$%^&amp;amp;*()-_+={}[].&amp;lt;&amp;gt;/?;"\|ABCDEFGHIJKLMNOPQRSTUVWXYZ'.&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; if sy-fdpos =&amp;gt; 0.&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; else.&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;  move gv_kwmeng1 to it_upload2-kwmeng.&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; endif.&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; endif.&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;LI level="1" type="ul"&gt;&lt;P&gt;  enddo.&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; move gv_kwmeng to it_upload2-kwmeng.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      append it_upload2.&lt;/P&gt;&lt;P&gt;      clear  gv_kwmeng .&lt;/P&gt;&lt;P&gt;      clear  gv_string2.&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;endform.                    " f001-gui_upload&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  f002_bdc_execute&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;      text&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;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&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_execute .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  loop at it_upload1.&lt;/P&gt;&lt;P&gt;    clear: n, m.&lt;/P&gt;&lt;P&gt;    refresh: bdcdata,&lt;/P&gt;&lt;P&gt;             gt_bdcmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    wa_order-kunnr  = it_upload1-kunnr  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMV45A'      '0101'             .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'    'VBAK-SPART'       .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'    '/00'              .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBAK-AUART'    'ZLOR'             .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBAK-VKORG'    '1000'             .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBAK-VTWEG'    '25'               .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBAK-SPART'    '14'               .&lt;/P&gt;&lt;P&gt;***&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMV45A'      '4001'             .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'    'KUAGV-KUNNR'      .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'    '/00'              .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'KUAGV-KUNNR'    it_upload1-kunnr  .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBKD-BSTKD'     it_upload1-pno    .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBKD-BSTDK'     it_upload1-idate  .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'RV45A-KETDAT'   sy-datum          .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'RV45A-KPRGBZ'   'D'               .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'VBKD-PRSDT'     sy-datum          .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;***&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMV45A'      '4001'              .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    loop at it_upload2 where pno = it_upload1-pno .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      n = n + 1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if sy-batch = ' '.&lt;/P&gt;&lt;P&gt;        if n &amp;gt; 5.&lt;/P&gt;&lt;P&gt;          n = 5.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        if n &amp;gt; 2.&lt;/P&gt;&lt;P&gt;          n = 2.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      move n to m .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if n &amp;lt; 10.&lt;/P&gt;&lt;P&gt;        concatenate '0' m into m.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      concatenate 'RV45A-MABNR('&lt;/P&gt;&lt;P&gt;                    m&lt;/P&gt;&lt;P&gt;                    ')'&lt;/P&gt;&lt;P&gt;              into gv_char3 .&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'BDC_CURSOR'    gv_char3 . "'RV45A-MABNR(01)' .&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'BDC_OKCODE'    '/00'            .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'KUAGV-KUNNR'    it_upload1-kunnr  .&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'KUWEV-KUNNR'    it_upload1-kunnr  .&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'VBKD-BSTKD'     it_upload1-pno    .&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'VBKD-BSTDK'     it_upload1-idate  .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'RV45A-KETDAT'   sy-datum          .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'RV45A-KPRGBZ'   'D'               .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'VBKD-PRSDT'     sy-datum          .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      concatenate 'RV45A-MABNR('&lt;/P&gt;&lt;P&gt;                  m&lt;/P&gt;&lt;P&gt;                  ')'&lt;/P&gt;&lt;P&gt;            into gv_char1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      concatenate 'RV45A-KWMENG('&lt;/P&gt;&lt;P&gt;                    m&lt;/P&gt;&lt;P&gt;                    ')'&lt;/P&gt;&lt;P&gt;              into gv_char2 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      move it_upload2-kwmeng to gv_qty.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      perform bdc_field       using   gv_char1  it_upload2-matnr  .&lt;/P&gt;&lt;P&gt;      perform bdc_field       using   gv_char2  gv_qty            .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      perform bdc_dynpro using 'SAPMV45A'  '4001'.&lt;/P&gt;&lt;P&gt;      perform bdc_field using 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;Start of Added by Durai.V 30-May-2008******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;      write : / gv_char2, ':',gv_qty.&lt;/P&gt;&lt;P&gt;      clear : gv_char1,gv_char2,gv_char3.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;End of Added by Durai.V 30-May-2008********&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMV45A'      '4001'          .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'    'VBAK-LIFSK'    .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBAK-LIFSK'    'Z3'            .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'    '=SICH'         .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPLSPO2'      '0101'          .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'    '=OPT1'         .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    call transaction 'VA01' using bdcdata mode 'N'&lt;/P&gt;&lt;P&gt;         messages into gt_bdcmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  if sy-subrc = 0.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    loop at gt_bdcmsg.&lt;/P&gt;&lt;P&gt;      call function 'FORMAT_MESSAGE'&lt;/P&gt;&lt;P&gt;        exporting&lt;/P&gt;&lt;P&gt;          id     = gt_bdcmsg-msgid&lt;/P&gt;&lt;P&gt;          lang   = gt_bdcmsg-msgspra&lt;/P&gt;&lt;P&gt;          no     = gt_bdcmsg-msgnr&lt;/P&gt;&lt;P&gt;          v1     = gt_bdcmsg-msgv1&lt;/P&gt;&lt;P&gt;          v2     = gt_bdcmsg-msgv2&lt;/P&gt;&lt;P&gt;        importing&lt;/P&gt;&lt;P&gt;          msg    = gv_msg&lt;/P&gt;&lt;P&gt;        exceptions&lt;/P&gt;&lt;P&gt;          others = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if ( gt_bdcmsg-msgtyp = 'E' ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        wa_order-text        = gv_msg         .&lt;/P&gt;&lt;P&gt;        wa_order-tran_date   = sy-datum       .&lt;/P&gt;&lt;P&gt;        wa_order-flag        = ''             .&lt;/P&gt;&lt;P&gt;        wa_order-runtime     = sy-uzeit .&lt;/P&gt;&lt;P&gt;        modify zdms_log from wa_order .&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;      if ( gt_bdcmsg-msgtyp = 'S' ) .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        wa_order-text        = gv_msg         .&lt;/P&gt;&lt;P&gt;        wa_order-tran_date   = sy-datum       .&lt;/P&gt;&lt;P&gt;        wa_order-flag        = 'Y'            .&lt;/P&gt;&lt;P&gt;        wa_order-runtime     = sy-uzeit       .&lt;/P&gt;&lt;P&gt;        modify zdms_log from wa_order .&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;    endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    endif.&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;&lt;/P&gt;&lt;P&gt;endform.                    " f002_bdc_execute&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;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.                    "BDC_DYNPRO&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;form bdc_field using fnam fval.&lt;/P&gt;&lt;P&gt;  clear bdcdata.&lt;/P&gt;&lt;P&gt;&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;&lt;/P&gt;&lt;P&gt;endform.                    "BDC_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;Reward IF..................&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regarda&lt;/P&gt;&lt;P&gt;Anbu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 10 Jun 2008 12:39:21 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-06-10T12:39:21Z</dc:date>
    <item>
      <title>BDC - Read File</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-read-file/m-p/3994699#M954318</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;In the BDC generated program, how we can specify the file that is stored in the application server ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Sabu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jun 2008 12:23:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-read-file/m-p/3994699#M954318</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-10T12:23:35Z</dc:date>
    </item>
    <item>
      <title>Re: BDC - Read File</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-read-file/m-p/3994700#M954319</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;STRONG&gt;check this report................i am get the data from application server and running a bdc.................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables: zdms_textno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of it_upload1 occurs 0,&lt;/P&gt;&lt;P&gt;       kunnr like vbak-kunnr,&lt;/P&gt;&lt;P&gt;       pno  like vbrk-bstnk_vf,&lt;/P&gt;&lt;P&gt;       idate(10), " like vbrk-fkdat,&lt;/P&gt;&lt;P&gt;       pernr like p0000-pernr,&lt;/P&gt;&lt;P&gt;      end of it_upload1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of it_upload2 occurs 0,&lt;/P&gt;&lt;P&gt;       pno    like vbrk-bstnk_vf,&lt;/P&gt;&lt;P&gt;       matnr  like vbrp-matnr,&lt;/P&gt;&lt;P&gt;       kwmeng like rv45a-kwmeng,&lt;/P&gt;&lt;P&gt;      end of it_upload2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of it_up1 occurs 0,&lt;/P&gt;&lt;P&gt;       string1(66),&lt;/P&gt;&lt;P&gt;      end of it_up1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of it_up2 occurs 0,&lt;/P&gt;&lt;P&gt;       string2(70),&lt;/P&gt;&lt;P&gt;      end of it_up2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: it_zdms_textno like zdms_textno occurs 0 with header line.&lt;/P&gt;&lt;P&gt;data: it_order like standard table of zdms_log with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: bdcdata   like bdcdata    occurs 0 with header line.&lt;/P&gt;&lt;P&gt;data: gt_bdcmsg like bdcmsgcoll occurs 0 with header line,&lt;/P&gt;&lt;P&gt;      file1     type rlgrap-filename   .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: it_textno like zdms_textno occurs 0,&lt;/P&gt;&lt;P&gt;      wa_textno like line of it_textno   .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : gv_filenum like zdms_textno-filenumber  ,&lt;/P&gt;&lt;P&gt;       gv_filenumc(10) type c .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*DATA : gv_path TYPE rlgrap-filename.&lt;/P&gt;&lt;P&gt;data : gv_path(100) type c.&lt;/P&gt;&lt;P&gt;data: gv_file1 type string.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: gv_char1(15) ,&lt;/P&gt;&lt;P&gt;      gv_char2(16),&lt;/P&gt;&lt;P&gt;      gv_char3(15),&lt;/P&gt;&lt;P&gt;      gv_qty(15),&lt;/P&gt;&lt;P&gt;      n type i,&lt;/P&gt;&lt;P&gt;      m(2),&lt;/P&gt;&lt;P&gt;      gv_msg(50),&lt;/P&gt;&lt;P&gt;      gv_kwmeng(15),&lt;/P&gt;&lt;P&gt;      gv_kwmeng1(15),&lt;/P&gt;&lt;P&gt;      gv_string1(66),&lt;/P&gt;&lt;P&gt;      gv_string2(70),&lt;/P&gt;&lt;P&gt;      numc1(10),&lt;/P&gt;&lt;P&gt;      rec(70) ,&lt;/P&gt;&lt;P&gt;      ln type i,&lt;/P&gt;&lt;P&gt;      gv_pernr(8),&lt;/P&gt;&lt;P&gt;      gv_pernr1(8),&lt;/P&gt;&lt;P&gt;      p type i  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : lw_string type string.&lt;/P&gt;&lt;P&gt;data : wa_order like line of it_order.&lt;/P&gt;&lt;P&gt;data : mess type string.&lt;/P&gt;&lt;P&gt;data : d_server type string value 'r3prod_EEP_05'.&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;P&gt;  ln = 2 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  while ln gt 1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;Start of Added by Durai.V 30-May-2008******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;    clear it_upload1.&lt;/P&gt;&lt;P&gt;    clear it_upload1[].&lt;/P&gt;&lt;P&gt;    clear it_upload2.&lt;/P&gt;&lt;P&gt;    clear it_upload2[].&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;End of Added by Durai.V 30-May-2008********&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if sy-subrc ne 0 .&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;    perform bdc_execute.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endwhile.&lt;/P&gt;&lt;P&gt;*****************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form Upload&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**************&lt;/P&gt;&lt;P&gt;form upload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear:  gv_filenum ,&lt;/P&gt;&lt;P&gt;          gv_filenumc,&lt;/P&gt;&lt;P&gt;          gv_file1   ,&lt;/P&gt;&lt;P&gt;          gv_path,&lt;/P&gt;&lt;P&gt;          wa_textno  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  select single filenumber path&lt;/P&gt;&lt;P&gt;         from   zdms_textno&lt;/P&gt;&lt;P&gt;         into   (gv_filenum,gv_path)&lt;/P&gt;&lt;P&gt;         where  filename eq 'INCOMING' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  move  gv_filenum to gv_filenumc  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  shift gv_filenumc left deleting leading '0'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*concatenate 'F:\usr\sap\EED\DVEBMGS00\work\EFC_Indent_Hdr_'&lt;/P&gt;&lt;P&gt;  concatenate gv_path 'EFC_Indent_Hdr_'&lt;/P&gt;&lt;P&gt;              gv_filenumc&lt;/P&gt;&lt;P&gt;              '.txt'&lt;/P&gt;&lt;P&gt;         into gv_file1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;Start of Added by Durai.V 30-May-2008******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;  clear it_up1.&lt;/P&gt;&lt;P&gt;  clear it_up1[].&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;End of Added by Durai.V 30-May-2008********&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  call function 'DX_FILE_READ' destination d_server&lt;/P&gt;&lt;P&gt;    exporting&lt;/P&gt;&lt;P&gt;      filename          = gv_file1&lt;/P&gt;&lt;P&gt;    tables&lt;/P&gt;&lt;P&gt;      data_tab          = it_up1&lt;/P&gt;&lt;P&gt;    exceptions&lt;/P&gt;&lt;P&gt;      no_file_on_server = 1&lt;/P&gt;&lt;P&gt;      no_data_on_server = 2&lt;/P&gt;&lt;P&gt;      gui_upload_failed = 3&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     no_authority      = 4&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      others            = 5.&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;    write :  gv_file1 , 'File not found'.&lt;/P&gt;&lt;P&gt;    exit.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;Start of Added by Durai.V 30-May-2008******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;  write : / 'Application Server File Path for Header: ',gv_file1.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;End of Added by Durai.V 30-May-2008********&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*************************************&lt;STRONG&gt;Commented By Anbu&lt;/STRONG&gt;****************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; OPEN DATASET gv_file1 FOR INPUT IN TEXT MODE ENCODING DEFAULT MESSAGE mess .&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; IF sy-subrc = 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   DO.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     READ DATASET gv_file1 INTO rec .&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;       MOVE rec TO it_up1-string1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       APPEND it_up1 .&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;       EXIT.&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;   ENDDO .&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 :  gv_file1 , mess,   'File not found'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   EXIT.  "MESSAGE ID 'SDV' TYPE 'E' NUMBER '000' WITH 'Header File Not Available'  .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  close dataset gv_file1  .&lt;/P&gt;&lt;P&gt;*************************************&lt;STRONG&gt;Ended By Anbu&lt;/STRONG&gt;****************************************************&lt;/P&gt;&lt;P&gt;  if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    wa_textno-filename   = 'INCOMING'      .&lt;/P&gt;&lt;P&gt;    wa_textno-filenumber = gv_filenum + 1  .&lt;/P&gt;&lt;P&gt;    wa_textno-path       = gv_path.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  shift zdms_textno left deleting leading ' ' .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    modify zdms_textno from wa_textno      .&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  loop at it_up1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    gv_string1 = it_up1-string1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if gv_string1 eq 'EOF' .&lt;/P&gt;&lt;P&gt;      exit.&lt;/P&gt;&lt;P&gt;    else.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      split gv_string1 at '~' into: it_upload1-kunnr it_upload1-pno it_upload1-idate it_upload1-pernr .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      clear : gv_pernr ,gv_pernr1, p .&lt;/P&gt;&lt;P&gt;      p = 0 .&lt;/P&gt;&lt;P&gt;      move it_upload1-pernr to gv_pernr1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      do 8 times.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        if ( gv_pernr1(1) eq '0' or gv_pernr1&lt;EM&gt;p(1) eq '1' or gv_pernr1&lt;/EM&gt;p(1) eq '2' or gv_pernr1&lt;EM&gt;p(1) eq '3' or gv_pernr1&lt;/EM&gt;p(1) eq '4'&lt;/P&gt;&lt;P&gt;              or gv_pernr1&lt;EM&gt;p(1) eq '5' or gv_pernr1&lt;/EM&gt;p(1) eq '6' or gv_pernr1&lt;EM&gt;p(1) eq '7' or gv_pernr1&lt;/EM&gt;p(1) eq '8'&lt;/P&gt;&lt;P&gt;              or gv_pernr1+p(1) eq '9' ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          concatenate gv_pernr1&lt;/P&gt;&lt;P&gt;                      gv_pernr1+p(1)&lt;/P&gt;&lt;P&gt;                 into gv_pernr1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          p = p + 1.&lt;/P&gt;&lt;P&gt;&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;      enddo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      move gv_pernr to  it_upload1-pernr .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      append it_upload1.&lt;/P&gt;&lt;P&gt;      clear gv_string1 .&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;  clear:  gv_filenumc,&lt;/P&gt;&lt;P&gt;          gv_file1  ,&lt;/P&gt;&lt;P&gt;          wa_textno  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  gv_filenum = gv_filenum + 1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  move  gv_filenum to gv_filenumc  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  shift gv_filenumc left deleting leading '0'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   if gv_filenum &amp;lt; 10 .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     concatenate '0' gv_filenumc into gv_filenumc .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   endif.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*concatenate 'F:\usr\sap\EED\DVEBMGS00\work\EFC_Indent_Trn_'&lt;/P&gt;&lt;P&gt;  concatenate gv_path 'EFC_Indent_Trn_'&lt;/P&gt;&lt;P&gt;              gv_filenumc&lt;/P&gt;&lt;P&gt;              '.txt'&lt;/P&gt;&lt;P&gt;         into gv_file1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;Start of Added by Durai.V 30-May-2008******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;  clear it_up2.&lt;/P&gt;&lt;P&gt;  clear it_up2[].&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;End of Added by Durai.V 30-May-2008********&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  call function 'DX_FILE_READ' destination  d_server&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      exporting&lt;/P&gt;&lt;P&gt;        filename                = gv_file1&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  SERVER                  =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   pc                      =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      tables&lt;/P&gt;&lt;P&gt;        data_tab                = it_up2&lt;/P&gt;&lt;P&gt; exceptions&lt;/P&gt;&lt;P&gt;   no_file_on_server       = 1&lt;/P&gt;&lt;P&gt;   no_data_on_server       = 2&lt;/P&gt;&lt;P&gt;   gui_upload_failed       = 3&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  NO_AUTHORITY            = 4&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   others                  = 5&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;    write :  gv_file1 , 'File not found'.&lt;/P&gt;&lt;P&gt;    exit.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;Start of Added by Durai.V 30-May-2008******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;  write : / 'Application Server File Path for Item : ',gv_file1.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;End of Added by Durai.V 30-May-2008********&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&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;Commented By Anbu&lt;/STRONG&gt;****************************************************&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; OPEN DATASET gv_file1 FOR INPUT IN TEXT MODE ENCODING DEFAULT MESSAGE mess  .&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;   DO.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     READ DATASET gv_file1 INTO rec .&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;       MOVE rec TO it_up2-string2.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       APPEND it_up2 .&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;       EXIT.&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;   ENDDO.&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 :  gv_file1 , mess ,  'File not found'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   EXIT. "MESSAGE ID 'SDV' TYPE 'E' NUMBER '000' WITH 'Transaction File Not Available'  .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  close dataset gv_file1.&lt;/P&gt;&lt;P&gt;*************************************&lt;STRONG&gt;Ended By Anbu&lt;/STRONG&gt;****************************************************&lt;/P&gt;&lt;P&gt;  if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    wa_textno-filename   = 'INCOMING'     .&lt;/P&gt;&lt;P&gt;    wa_textno-filenumber = gv_filenum + 1 .&lt;/P&gt;&lt;P&gt;    wa_textno-path       = gv_path.&lt;/P&gt;&lt;P&gt;    modify zdms_textno from wa_textno     .&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;  loop at it_up2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    gv_string2 = it_up2-string2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    if gv_string2 eq 'EOF' .&lt;/P&gt;&lt;P&gt;      exit.&lt;/P&gt;&lt;P&gt;    else.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      split gv_string2 at '~' into: it_upload2-pno it_upload2-matnr gv_kwmeng1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; shift gv_kwmeng1 right deleting trailing '#' .&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt; shift gv_kwmeng1 left deleting leading '' .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      clear : gv_kwmeng ,p .&lt;/P&gt;&lt;P&gt;      p = 0 .&lt;/P&gt;&lt;P&gt;      do 15 times.&lt;/P&gt;&lt;P&gt;        if ( gv_kwmeng1+p(1) eq '0' or gv_kwmeng1+p(1) eq '1' or gv_kwmeng1+p(1) eq '2' or gv_kwmeng1+p(1) eq '3' or gv_kwmeng1+p(1) eq '4'&lt;/P&gt;&lt;P&gt;              or gv_kwmeng1+p(1) eq '5' or gv_kwmeng1+p(1) eq '6' or gv_kwmeng1+p(1) eq '7' or gv_kwmeng1+p(1) eq '8'&lt;/P&gt;&lt;P&gt;              or gv_kwmeng1+p(1) eq '9' ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          concatenate gv_kwmeng&lt;/P&gt;&lt;P&gt;                      gv_kwmeng1+p(1)&lt;/P&gt;&lt;P&gt;                 into gv_kwmeng.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          p = p + 1.&lt;/P&gt;&lt;P&gt;&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;      enddo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      move gv_kwmeng to it_upload2-kwmeng.&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; if gv_kwmeng1 CA&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   '#~`!@$%^&amp;amp;*()-_+={}[].&amp;lt;&amp;gt;/?;"\|ABCDEFGHIJKLMNOPQRSTUVWXYZ'.&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; if sy-fdpos =&amp;gt; 0.&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; else.&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;  move gv_kwmeng1 to it_upload2-kwmeng.&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; endif.&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; endif.&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;LI level="1" type="ul"&gt;&lt;P&gt;  enddo.&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; move gv_kwmeng to it_upload2-kwmeng.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      append it_upload2.&lt;/P&gt;&lt;P&gt;      clear  gv_kwmeng .&lt;/P&gt;&lt;P&gt;      clear  gv_string2.&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;endform.                    " f001-gui_upload&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  f002_bdc_execute&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;      text&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;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&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_execute .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  loop at it_upload1.&lt;/P&gt;&lt;P&gt;    clear: n, m.&lt;/P&gt;&lt;P&gt;    refresh: bdcdata,&lt;/P&gt;&lt;P&gt;             gt_bdcmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    wa_order-kunnr  = it_upload1-kunnr  .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMV45A'      '0101'             .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'    'VBAK-SPART'       .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'    '/00'              .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBAK-AUART'    'ZLOR'             .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBAK-VKORG'    '1000'             .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBAK-VTWEG'    '25'               .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBAK-SPART'    '14'               .&lt;/P&gt;&lt;P&gt;***&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMV45A'      '4001'             .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'    'KUAGV-KUNNR'      .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'    '/00'              .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'KUAGV-KUNNR'    it_upload1-kunnr  .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBKD-BSTKD'     it_upload1-pno    .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBKD-BSTDK'     it_upload1-idate  .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'RV45A-KETDAT'   sy-datum          .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'RV45A-KPRGBZ'   'D'               .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'VBKD-PRSDT'     sy-datum          .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;***&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMV45A'      '4001'              .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    loop at it_upload2 where pno = it_upload1-pno .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      n = n + 1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if sy-batch = ' '.&lt;/P&gt;&lt;P&gt;        if n &amp;gt; 5.&lt;/P&gt;&lt;P&gt;          n = 5.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        if n &amp;gt; 2.&lt;/P&gt;&lt;P&gt;          n = 2.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      move n to m .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if n &amp;lt; 10.&lt;/P&gt;&lt;P&gt;        concatenate '0' m into m.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      concatenate 'RV45A-MABNR('&lt;/P&gt;&lt;P&gt;                    m&lt;/P&gt;&lt;P&gt;                    ')'&lt;/P&gt;&lt;P&gt;              into gv_char3 .&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'BDC_CURSOR'    gv_char3 . "'RV45A-MABNR(01)' .&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'BDC_OKCODE'    '/00'            .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'KUAGV-KUNNR'    it_upload1-kunnr  .&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'KUWEV-KUNNR'    it_upload1-kunnr  .&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'VBKD-BSTKD'     it_upload1-pno    .&lt;/P&gt;&lt;P&gt;      perform bdc_field       using 'VBKD-BSTDK'     it_upload1-idate  .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'RV45A-KETDAT'   sy-datum          .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'RV45A-KPRGBZ'   'D'               .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform bdc_field       using 'VBKD-PRSDT'     sy-datum          .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      concatenate 'RV45A-MABNR('&lt;/P&gt;&lt;P&gt;                  m&lt;/P&gt;&lt;P&gt;                  ')'&lt;/P&gt;&lt;P&gt;            into gv_char1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      concatenate 'RV45A-KWMENG('&lt;/P&gt;&lt;P&gt;                    m&lt;/P&gt;&lt;P&gt;                    ')'&lt;/P&gt;&lt;P&gt;              into gv_char2 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      move it_upload2-kwmeng to gv_qty.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      perform bdc_field       using   gv_char1  it_upload2-matnr  .&lt;/P&gt;&lt;P&gt;      perform bdc_field       using   gv_char2  gv_qty            .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      perform bdc_dynpro using 'SAPMV45A'  '4001'.&lt;/P&gt;&lt;P&gt;      perform bdc_field using 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;Start of Added by Durai.V 30-May-2008******&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;      write : / gv_char2, ':',gv_qty.&lt;/P&gt;&lt;P&gt;      clear : gv_char1,gv_char2,gv_char3.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="8" type="ul"&gt;&lt;P&gt;End of Added by Durai.V 30-May-2008********&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMV45A'      '4001'          .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_CURSOR'    'VBAK-LIFSK'    .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'VBAK-LIFSK'    'Z3'            .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'    '=SICH'         .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPLSPO2'      '0101'          .&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'    '=OPT1'         .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    call transaction 'VA01' using bdcdata mode 'N'&lt;/P&gt;&lt;P&gt;         messages into gt_bdcmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  if sy-subrc = 0.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    loop at gt_bdcmsg.&lt;/P&gt;&lt;P&gt;      call function 'FORMAT_MESSAGE'&lt;/P&gt;&lt;P&gt;        exporting&lt;/P&gt;&lt;P&gt;          id     = gt_bdcmsg-msgid&lt;/P&gt;&lt;P&gt;          lang   = gt_bdcmsg-msgspra&lt;/P&gt;&lt;P&gt;          no     = gt_bdcmsg-msgnr&lt;/P&gt;&lt;P&gt;          v1     = gt_bdcmsg-msgv1&lt;/P&gt;&lt;P&gt;          v2     = gt_bdcmsg-msgv2&lt;/P&gt;&lt;P&gt;        importing&lt;/P&gt;&lt;P&gt;          msg    = gv_msg&lt;/P&gt;&lt;P&gt;        exceptions&lt;/P&gt;&lt;P&gt;          others = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if ( gt_bdcmsg-msgtyp = 'E' ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        wa_order-text        = gv_msg         .&lt;/P&gt;&lt;P&gt;        wa_order-tran_date   = sy-datum       .&lt;/P&gt;&lt;P&gt;        wa_order-flag        = ''             .&lt;/P&gt;&lt;P&gt;        wa_order-runtime     = sy-uzeit .&lt;/P&gt;&lt;P&gt;        modify zdms_log from wa_order .&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;      if ( gt_bdcmsg-msgtyp = 'S' ) .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        wa_order-text        = gv_msg         .&lt;/P&gt;&lt;P&gt;        wa_order-tran_date   = sy-datum       .&lt;/P&gt;&lt;P&gt;        wa_order-flag        = 'Y'            .&lt;/P&gt;&lt;P&gt;        wa_order-runtime     = sy-uzeit       .&lt;/P&gt;&lt;P&gt;        modify zdms_log from wa_order .&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;    endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    endif.&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;&lt;/P&gt;&lt;P&gt;endform.                    " f002_bdc_execute&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;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.                    "BDC_DYNPRO&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;form bdc_field using fnam fval.&lt;/P&gt;&lt;P&gt;  clear bdcdata.&lt;/P&gt;&lt;P&gt;&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;&lt;/P&gt;&lt;P&gt;endform.                    "BDC_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;Reward IF..................&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regarda&lt;/P&gt;&lt;P&gt;Anbu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jun 2008 12:39:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-read-file/m-p/3994700#M954319</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-06-10T12:39:21Z</dc:date>
    </item>
    <item>
      <title>Re: BDC - Read File</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-read-file/m-p/3994701#M954320</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok..Now the question is - you want to read a file from application server..or write to a file into appl. server.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Case :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) write into appl. server.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;SELECTION-SCREEN BEGIN OF BLOCK DATA WITH FRAME TITLE TEXT-024.
  PARAMETERS: P_CC(66) OBLIGATORY LOWER CASE
  DEFAULT '\\Pr-pnetprd-03\TaskIn\CCenter_'.
SELECTION-SCREEN END OF BLOCK DATA.


 OPEN DATASET p_cc FOR OUtPUT IN TEXT MODE ENCODING DEFAULT.
  loop at i_cc_pnet.

concatenate i_cc_pnet-CostCode i_cc_pnet-ccname i_cc_pnet-status into
l_string separated by '|' .

     transfer l_string to p_cc.         " write into file defined by p_cc in application server

    clear l_string .
    endloop.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2) Read from appl. server.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;Open dataset p_cc for input in text mode encoding default.

 IF sy-subrc NE 0.
    MESSAGE e010(zm) WITH '&amp;gt;&amp;gt;&amp;gt; UNABLE TO OPEN INPUT FILE &amp;lt;&amp;lt;&amp;lt;'.
  ENDIF.

  DO.
    READ DATASET p_cc INTO intab.

    IF sy-subrc NE 0.
      EXIT.
    ENDIF.

    CASE intab-fieldN.
      WHEN 'H'.
        header_rec = intab.
        APPEND header_rec.

      when others.
        append some_internal_table.
  ENDDO.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please award points if answer is useful.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jun 2008 13:56:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-read-file/m-p/3994701#M954320</guid>
      <dc:creator>former_member125661</dc:creator>
      <dc:date>2008-06-10T13:56:09Z</dc:date>
    </item>
    <item>
      <title>Re: BDC - Read File</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-read-file/m-p/3994702#M954321</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;OK&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Jul 2008 14:17:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-read-file/m-p/3994702#M954321</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-07-11T14:17:40Z</dc:date>
    </item>
  </channel>
</rss>

