<?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: file structure in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121524#M109006</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Let me explain what I am trying to do in the program, loading the pernr,begda and positions into the PA0000 and PA0001 and then delimiting the Vacancy type in IT1007 infotype.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This data comes from the external file...that I was talking about.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Phani.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 17 Feb 2006 18:09:56 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-02-17T18:09:56Z</dc:date>
    <item>
      <title>file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121504#M108986</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi folks,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am trying to read data from an external flat file into the internal table using Batch input. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;the flat file is in this format&lt;/P&gt;&lt;P&gt;number  - 90015910&lt;/P&gt;&lt;P&gt;datein  - 2/16/2006	&lt;/P&gt;&lt;P&gt;enddate - 12/31/9999	&lt;/P&gt;&lt;P&gt;Action type - AR		&lt;/P&gt;&lt;P&gt;Reason of action - blank &lt;/P&gt;&lt;P&gt;po number - 02181205&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;the data was not reading  into the internal table&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF A,&lt;/P&gt;&lt;P&gt;pernr(8) TYPE c,&lt;/P&gt;&lt;P&gt;begda(8) TYPE c,&lt;/P&gt;&lt;P&gt;endda(8) TYPE c,&lt;/P&gt;&lt;P&gt;massn(2) TYPE c,&lt;/P&gt;&lt;P&gt;massg(2) TYPE c,&lt;/P&gt;&lt;P&gt;plans(8) TYPE c,&lt;/P&gt;&lt;P&gt;End of A.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So I used tab_line to split the data correctly into the fields&lt;/P&gt;&lt;P&gt;DATA: tb_line(81) type c.&lt;/P&gt;&lt;P&gt;DATA: tb_tab type x value '09'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; READ DATASET filein INTO tb_line.&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;    split tb_line at tb_tab into &lt;/P&gt;&lt;P&gt;              A-pernr A-begda&lt;/P&gt;&lt;P&gt;             A-endda  A-massn&lt;/P&gt;&lt;P&gt;             A-massg A-plans.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My problem is only the first field 'A-pernr ' is getting the value from the flat file while the other fields are not getting populated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope I have given the length of the tb_line right taking into account the delimit spaces.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can anyone advise here. why is it so?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Vinu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 15:21:19 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121504#M108986</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T15:21:19Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121505#M108987</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Dates should be 10 characters long, check that once...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 15:23:30 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121505#M108987</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T15:23:30Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121506#M108988</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;try using a comma delimited file.  I find it much easier and much more fool proof.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REgards,&lt;/P&gt;&lt;P&gt;Rich Heilman&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 15:26:42 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121506#M108988</guid>
      <dc:creator>RichHeilman</dc:creator>
      <dc:date>2006-02-17T15:26:42Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121507#M108989</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vinu,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;all date field should be 10 chars, change that and see..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;vijay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 15:26:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121507#M108989</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T15:26:52Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121508#M108990</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;pls check in debugging that tb_line is getting populated with all the values at the line - "READ DATASET filein INTO tb_line."(check how the values are populated)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also is the delimiter a horizontal tab ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;how did you arrive at length of 81 for tb_line? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Renjith&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 15:27:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121508#M108990</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T15:27:37Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121509#M108991</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You should define you IT like this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
DATA: BEGIN OF A,
pernr(8) TYPE c,
begda(10) TYPE c,
endda(10) TYPE c,
massn(2) TYPE c,
massg(2) TYPE c,
plans(8) TYPE c,
End of A.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Greetings,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Blag.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 15:31:03 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121509#M108991</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T15:31:03Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121510#M108992</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vinu,&lt;/P&gt;&lt;P&gt; Define your internal table as below..CHECK THE BOLD LETTERS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF&amp;lt;b&amp;gt; A OCCURS 0&amp;lt;/b&amp;gt;,&lt;/P&gt;&lt;P&gt;pernr(8) TYPE c,&lt;/P&gt;&lt;P&gt;begda(8) TYPE c,&lt;/P&gt;&lt;P&gt;endda(8) TYPE c,&lt;/P&gt;&lt;P&gt;massn(2) TYPE c,&lt;/P&gt;&lt;P&gt;massg(2) TYPE c,&lt;/P&gt;&lt;P&gt;plans(8) TYPE c,&lt;/P&gt;&lt;P&gt;End of A.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 15:33:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121510#M108992</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T15:33:06Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121511#M108993</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vinu,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF&amp;lt;b&amp;gt; A OCCURS 0&amp;lt;/b&amp;gt;,&lt;/P&gt;&lt;P&gt;pernr(8) TYPE c,&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;begda(10) TYPE c,&lt;/P&gt;&lt;P&gt;endda(10) TYPE c,&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;massn(2) TYPE c,&lt;/P&gt;&lt;P&gt;massg(2) TYPE c,&lt;/P&gt;&lt;P&gt;plans(8) TYPE c,&lt;/P&gt;&lt;P&gt;End of A.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;you missed two things, one is occurs 0, and other is date should 10 chars.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Vijay&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;vijay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 15:42:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121511#M108993</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T15:42:29Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121512#M108994</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I changed the date field to 10 characters and the file format is in the form&lt;/P&gt;&lt;P&gt;90014060#2/16/2006#12/31/9999#CP##218120 and I am concerned about reading the&lt;/P&gt;&lt;P&gt;pernr = 90014060&lt;/P&gt;&lt;P&gt;begda = 2/16/2006&lt;/P&gt;&lt;P&gt;pno = 218120 from the flat file&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I took of the tb_line and that declaration just by plain transferring the flat file &lt;/P&gt;&lt;P&gt;pno = ##218120 ( I know the pno is 8 chars long)&lt;/P&gt;&lt;P&gt;How can I adjust the value here and if the value is less than 8 like in this case the two ## signs should be avoided.&lt;/P&gt;&lt;P&gt;Thanks for help.&lt;/P&gt;&lt;P&gt;Vinu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 16:09:11 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121512#M108994</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T16:09:11Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121513#M108995</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vinu,&lt;/P&gt;&lt;P&gt;Use FM CONVERSION_EXIT_ALPHA_INPUT before passing it to the file.It will append 0's in front of the field.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 16:12:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121513#M108995</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T16:12:04Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121514#M108996</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Phani,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there a way that I can do some changes there itself instead of using the FM.&lt;/P&gt;&lt;P&gt;thanks&lt;/P&gt;&lt;P&gt;Vinu.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 16:20:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121514#M108996</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T16:20:41Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121515#M108997</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;if it is a char field , you can use replace command&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; REPLACE ALL OCCURRENCES OF '#' IN ty_itab WITH '0'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Laxman&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 16:23:27 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121515#M108997</guid>
      <dc:creator>Laxmana_Appana_</dc:creator>
      <dc:date>2006-02-17T16:23:27Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121516#M108998</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vinu,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You input file looks like Tabdelimited file :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;May be define your internal table :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF A OCCURS 0,&lt;/P&gt;&lt;P&gt;pernr(8) TYPE c,&lt;/P&gt;&lt;P&gt;C1(1),&lt;/P&gt;&lt;P&gt;begda(10) TYPE c,&lt;/P&gt;&lt;P&gt;C2(1),&lt;/P&gt;&lt;P&gt;endda(10) TYPE c,&lt;/P&gt;&lt;P&gt;C3(1),&lt;/P&gt;&lt;P&gt;massn(2) TYPE c,&lt;/P&gt;&lt;P&gt;C4(1),&lt;/P&gt;&lt;P&gt;massg(2) TYPE c,&lt;/P&gt;&lt;P&gt;C5(1),&lt;/P&gt;&lt;P&gt;plans(8) TYPE c,&lt;/P&gt;&lt;P&gt;End of A.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and One of the field value is not filling which is causing extra #..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Lanka&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 16:24:23 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121516#M108998</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T16:24:23Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121517#M108999</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt; you have to use some statement or the other.So better call the FM.I suggest you ,its the best way.You need to pass only one field..you can pass the same field &amp;amp; get output also in the same field.&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_TEXT&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        OUTPUT = V_TEXT&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        OTHERS = 1.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 16:27:16 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121517#M108999</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T16:27:16Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121518#M109000</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi guys,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think you did not get my problem, the last field 'pno' is picking up an extra value, I used the flat file in the .csv format, instead of # I am getting '0'. the value for the last field should take '02181205' and now it is taking '002181205'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think there is some spacing problem from the flat file and I need to fix this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope you could help me here.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Vinu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 16:33:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121518#M109000</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T16:33:47Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121519#M109001</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vinu,&lt;/P&gt;&lt;P&gt;  You have to use logic for fields for which you want leading zeros &amp;amp; for those you dont.&lt;/P&gt;&lt;P&gt;for leading zeros you can use the FM i gave.&lt;/P&gt;&lt;P&gt;Foe leading spaces use concatenate statement.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 16:36:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121519#M109001</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T16:36:53Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121520#M109002</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi folks,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is the scenario and can anyone help me to correct this structure?&lt;/P&gt;&lt;P&gt;the file structure goes like this...&lt;/P&gt;&lt;P&gt;number - 90015910&lt;/P&gt;&lt;P&gt;datein - 2/16/2006 &lt;/P&gt;&lt;P&gt;enddate - 12/31/9999 &lt;/P&gt;&lt;P&gt;Action type - AR &lt;/P&gt;&lt;P&gt;Reason of action - blank &lt;/P&gt;&lt;P&gt;po number - 02181205&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;whereas I am receiving the data in the table as&lt;/P&gt;&lt;P&gt;90014060,2/16/2006,12/31/9999,AR,,218120&lt;/P&gt;&lt;P&gt;A-number - 90015910&lt;/P&gt;&lt;P&gt;A-datein -,2/16/2006&lt;/P&gt;&lt;P&gt;A-enddate -,12/31/999&lt;/P&gt;&lt;P&gt;A-Action type -9,&lt;/P&gt;&lt;P&gt;A-reason of action - AR&lt;/P&gt;&lt;P&gt;A-po number - ,,218120&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Vinu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 17:16:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121520#M109002</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T17:16:51Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121521#M109003</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vinu,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;data: begin of itab occurs 0,
      pernr(8) TYPE c,
       begda(10) TYPE c,
      endda(10) TYPE c,
      massn(2) TYPE c,
      massg(2) TYPE c,
       plans(8) TYPE c,
     end of itab.
"save the fiel as tab delimited file, and then upload "the data and check it.
"create the file in excel and save it as tab delimited "file and upload it.
CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
         FILENAME                = FILENAME
         HAS_FIELD_SEPARATOR     = 'X'
    TABLES
         DATA_TAB                = ITAB
    EXCEPTIONS
         CONVERSION_ERROR        = 1
         FILE_OPEN_ERROR         = 2
         FILE_READ_ERROR         = 3
         INVALID_TYPE            = 4
         NO_BATCH                = 5
         UNKNOWN_ERROR           = 6
         INVALID_TABLE_WIDTH     = 7
         GUI_REFUSE_FILETRANSFER = 8
         CUSTOMER_ERROR          = 9
         OTHERS                  = 10
          .
IF SY-SUBRC &amp;lt;&amp;gt; 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;vijay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 17:25:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121521#M109003</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T17:25:01Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121522#M109004</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vinu,&lt;/P&gt;&lt;P&gt;  Check the length of the fields defined.Or can you give me the whole code,so that i can check &amp;amp; let u know.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 17:26:39 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121522#M109004</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T17:26:39Z</dc:date>
    </item>
    <item>
      <title>Re: file structure</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121523#M109005</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;REPORT za0001 MESSAGE-ID ZMSG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES:  pa0000, pa0171, p0171, pa0002,  zmetzpos, pa0001.&lt;/P&gt;&lt;P&gt;DATA: upd00(1) TYPE c,&lt;/P&gt;&lt;P&gt;      upd01(1) TYPE c.&lt;/P&gt;&lt;P&gt;DATA  message_text(254) TYPE c.&lt;/P&gt;&lt;P&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;parameters&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK ch1 WITH FRAME.&lt;/P&gt;&lt;P&gt;PARAMETERS:  zbegda LIKE p0000-begda DEFAULT sy-datum,&lt;/P&gt;&lt;P&gt;zendda LIKE p0000-endda DEFAULT '99991231',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this file is uploaded on the ftp (application server)&lt;/P&gt;&lt;P&gt;filein(60) DEFAULT '/interfacep/inbound/nongal2.txt' LOWER CASE,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;filestat(60) DEFAULT '/interfacep/outbound/restart.txt'&lt;/P&gt;&lt;P&gt;                                                             LOWER CASE,&lt;/P&gt;&lt;P&gt;fileout(60) DEFAULT '/interfacep/outbound/errors.txt'&lt;/P&gt;&lt;P&gt;                                                            LOWER CASE,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DV1K902244&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;s_mode TYPE c DEFAULT 'N',&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;rest AS CHECKBOX.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;s_mode TYPE c DEFAULT 'A'.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF LINE.&lt;/P&gt;&lt;P&gt;PARAMETER: rest AS CHECKBOX.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 5(70) text-001.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF LINE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DV1K902244&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK ch1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      &lt;/P&gt;&lt;P&gt;DATA:zvalid LIKE p0000-begda.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*DATA: tb_line(81) type c.&lt;/P&gt;&lt;P&gt;*DATA: tb_tab type x value '09'.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;internal tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF itab_in occurs 0,&lt;/P&gt;&lt;P&gt;pernr(8) TYPE c,&lt;/P&gt;&lt;P&gt;begda(10) TYPE c,&lt;/P&gt;&lt;P&gt;endda(10) TYPE c,&lt;/P&gt;&lt;P&gt;massn(2) TYPE c,&lt;/P&gt;&lt;P&gt;massg(2) TYPE c,&lt;/P&gt;&lt;P&gt;plans(8) TYPE c,&lt;/P&gt;&lt;P&gt;*pernr(8) TYPE c,&lt;/P&gt;&lt;P&gt;*filler1(56) TYPE c,&lt;/P&gt;&lt;P&gt;*sachz(3) TYPE c,&lt;/P&gt;&lt;P&gt;END OF itab_in.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF hold_tab,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;pernr(8) TYPE c,&lt;/P&gt;&lt;P&gt;begda(8) TYPE c,&lt;/P&gt;&lt;P&gt;endda(8) TYPE c,&lt;/P&gt;&lt;P&gt;massn(2) TYPE c,&lt;/P&gt;&lt;P&gt;massg(2) TYPE c,&lt;/P&gt;&lt;P&gt;plans(8) TYPE c,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*pernr(8) TYPE c,&lt;/P&gt;&lt;P&gt;*filler1(56) TYPE c,&lt;/P&gt;&lt;P&gt;*sachz(3) TYPE c,&lt;/P&gt;&lt;P&gt;END OF hold_tab.&lt;/P&gt;&lt;P&gt;DATA:work_pernr(8) TYPE c.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;format of the bdc input file, with extra field for pernr&lt;/STRONG&gt;*&lt;/P&gt;&lt;P&gt;DATA:  BEGIN OF itab OCCURS 1,&lt;/P&gt;&lt;P&gt;begda LIKE p0000-begda,&lt;/P&gt;&lt;P&gt;endda LIKE p0000-endda,&lt;/P&gt;&lt;P&gt;plans LIKE pspar-plans,&lt;/P&gt;&lt;P&gt;*offic LIKE p0171-offic,&lt;/P&gt;&lt;P&gt;pernr LIKE p0000-pernr,&lt;/P&gt;&lt;P&gt;END OF itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF messtab OCCURS 10.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bdcmsgcoll.&lt;/P&gt;&lt;P&gt;DATA: END OF messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: bdc_tab LIKE bdcdata OCCURS 0 WITH HEADER LINE.&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;variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;DATA: zpernr LIKE p0002-pernr,&lt;/P&gt;&lt;P&gt;      bisflag(1)  TYPE c VALUE 'N'.&lt;/P&gt;&lt;P&gt;DATA: format_begda LIKE p0000-begda.&lt;/P&gt;&lt;P&gt;DATA: format_valid LIKE p0000-begda.&lt;/P&gt;&lt;P&gt;DATA: format_endda LIKE p0000-begda.&lt;/P&gt;&lt;P&gt;DATA: eofflag(1) TYPE n.&lt;/P&gt;&lt;P&gt;DATA: record_read(9) TYPE n.&lt;/P&gt;&lt;P&gt;DATA: ssn_error TYPE i.&lt;/P&gt;&lt;P&gt;DATA: record_created(9) TYPE n.&lt;/P&gt;&lt;P&gt;DATA: record_error(9) TYPE n.&lt;/P&gt;&lt;P&gt;DATA: officer_count TYPE i.&lt;/P&gt;&lt;P&gt;DATA: officer_fail TYPE i.&lt;/P&gt;&lt;P&gt;DATA: zreturn_code LIKE sy-subrc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;initialization&lt;/STRONG&gt;*******************************************************&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;  ssn_error = 0.&lt;/P&gt;&lt;P&gt;  record_read = 0.&lt;/P&gt;&lt;P&gt;  record_error = 0.&lt;/P&gt;&lt;P&gt;  zreturn_code = 0.&lt;/P&gt;&lt;P&gt;  officer_count = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;start-of-selection&lt;/STRONG&gt;***************************************************&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;formating the date to be MMDDYYYY instead of YYYYMMDD&lt;/STRONG&gt;*&lt;/P&gt;&lt;P&gt;  zvalid = zbegda - 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE zvalid&lt;EM&gt;4(2) zvalid&lt;/EM&gt;6(2) zvalid(4) INTO format_valid.&lt;/P&gt;&lt;P&gt;  CONCATENATE zbegda&lt;EM&gt;4(2) zbegda&lt;/EM&gt;6(2) zbegda(4) INTO format_begda.&lt;/P&gt;&lt;P&gt;  CONCATENATE zendda&lt;EM&gt;4(2) zendda&lt;/EM&gt;6(2) zendda(4) INTO format_endda.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;open the files for input and output&lt;/STRONG&gt;*&lt;/P&gt;&lt;P&gt;  IF rest = 'X'.&lt;/P&gt;&lt;P&gt;    OPEN DATASET fileout FOR APPENDING IN TEXT MODE.&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;      WRITE: /'Could not open error output file.'.&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;&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    OPEN DATASET fileout FOR OUTPUT IN TEXT MODE.&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;      WRITE: /'Could not open error output file.'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      MESSAGE E000.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  OPEN DATASET filein FOR INPUT IN TEXT MODE.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    WRITE: /'Could not open input file.'.&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;  IF rest = 'X'.&lt;/P&gt;&lt;P&gt;    OPEN DATASET  filestat FOR INPUT IN TEXT MODE.&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;      WRITE: /'Could not open input file.'.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   clear tb_line.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   clear tb_tab.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   WHILE eofflag = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    work_pernr = hold_tab-pernr.&lt;/P&gt;&lt;P&gt;      READ DATASET filestat INTO hold_tab.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     work_pernr = hold_tab-pernr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    READ DATASET filestat INTO tb_line.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF SY-SUBRC NE 0.&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;    split tb_line at tb_tab into hold_tab-pernr  hold_tab-begda&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 hold_tab-endda  hold_tab-massn&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 hold_tab-massg  hold_tab-plans.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      eofflag = sy-subrc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDWHILE.&lt;/P&gt;&lt;P&gt;    CLOSE DATASET filestat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    clear tb_line.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    clear tb_tab.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHILE work_pernr NE itab_in-pernr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        READ DATASET filein INTO itab_in.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    READ DATASET filein INTO tb_line.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF SY-SUBRC NE 0.&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;    split tb_line at tb_tab into itab_in-pernr itab_in-begda&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 itab_in-endda  itab_in-massn&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 itab_in-massg itab_in-plans.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   ENDWHILE.&lt;/P&gt;&lt;P&gt;    OPEN DATASET filestat FOR APPENDING IN TEXT MODE.&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;      WRITE: /'Could not open stat file. '.&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;  ELSE.&lt;/P&gt;&lt;P&gt;    OPEN DATASET filestat FOR OUTPUT IN TEXT MODE.&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;      WRITE:/ 'Could not open stat file '.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;processing the input file&lt;/STRONG&gt;*&lt;/P&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    clear tb_line.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    clear tb_tab.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     READ DATASET filein INTO itab_in.&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;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   READ DATASET filein INTO tb_line.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF SY-SUBRC NE 0.&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;    split tb_line at tb_tab into itab_in-pernr itab_in-begda&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 itab_in-endda  itab_in-massn&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                 itab_in-massg itab_in-plans.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    REFRESH itab.&lt;/P&gt;&lt;P&gt;    CLEAR itab.&lt;/P&gt;&lt;P&gt;    REFRESH messtab.&lt;/P&gt;&lt;P&gt;    CLEAR messtab.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;TRANSFERRING DATA TO ITAB WITH SAP DEFINED FIELDS FOR PROCESSING&lt;/STRONG&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;count of how many records the program reads from the file&lt;/STRONG&gt;*&lt;/P&gt;&lt;P&gt;    record_read = record_read + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;processing to look-up ssn and get the appropriate pernr&lt;/STRONG&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;a pernr of '00000000' means that there is not a valid pernr for the&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;given ssn, therefore the return code will = 4**&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;    itab-pernr = itab_in-pernr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   itab-begda = format_begda.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     itab-begda = format_begda.&lt;/P&gt;&lt;P&gt;     itab-plans = itab_in-plans.&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;    itab-plans = v_plans.&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;   SELECT SINGLE pdposition INTO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               (zmetzpos-pdposition)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          FROM zmetzpos&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          WHERE pernr = itab-pernr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF sy-subrc NE 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     CLEAR zmetzpos-pdposition.&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;     CLEAR zmetzpos-sacha.&lt;/P&gt;&lt;/LI&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;    CLEAR upd00.&lt;/P&gt;&lt;P&gt;    CLEAR upd01.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;filling the bdc_tab for processing&lt;/STRONG&gt;*&lt;/P&gt;&lt;P&gt;    PERFORM fill_bdc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;calling the PA30 transaction to process the records in the bdc_tab&lt;/STRONG&gt;*&lt;/P&gt;&lt;P&gt;    CALL TRANSACTION 'PA30'&lt;/P&gt;&lt;P&gt;    USING bdc_tab&lt;/P&gt;&lt;P&gt;    MODE s_mode&lt;/P&gt;&lt;P&gt;    UPDATE 'S'&lt;/P&gt;&lt;P&gt;    MESSAGES INTO messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;      TRANSFER itab_in TO filestat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      TRANSFER itab_in TO fileout.&lt;/P&gt;&lt;P&gt;      record_error = record_error + 1.&lt;/P&gt;&lt;P&gt;      PERFORM write_errors.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Add to batch session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF bisflag = 'N'.&lt;/P&gt;&lt;P&gt;        bisflag = 'Y'.&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               = 'CONVPSN'&lt;/P&gt;&lt;P&gt;            keep                = 'X'  "Retention flag&lt;/P&gt;&lt;P&gt;            user                = sy-uname  "Batch input user name&lt;/P&gt;&lt;P&gt;          EXCEPTIONS&lt;/P&gt;&lt;P&gt;            client_invalid      = 01&lt;/P&gt;&lt;P&gt;            destination_invalid = 02&lt;/P&gt;&lt;P&gt;            group_invalid       = 03&lt;/P&gt;&lt;P&gt;            holddate_invalid    = 04&lt;/P&gt;&lt;P&gt;            internal_error      = 05&lt;/P&gt;&lt;P&gt;            queue_error         = 06&lt;/P&gt;&lt;P&gt;            running             = 07&lt;/P&gt;&lt;P&gt;            user_invalid        = 08.&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;      CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          tcode          = 'PA30'&lt;/P&gt;&lt;P&gt;        TABLES&lt;/P&gt;&lt;P&gt;          dynprotab      = bdc_tab&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          internal_error = 01&lt;/P&gt;&lt;P&gt;          not_open       = 02&lt;/P&gt;&lt;P&gt;          queue_error    = 03&lt;/P&gt;&lt;P&gt;          tcode_invalid  = 04.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      upd00 = 'y'.&lt;/P&gt;&lt;P&gt;      record_created = record_created + 1.&lt;/P&gt;&lt;P&gt;      TRANSFER itab_in TO filestat.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; if upd00 = 'y'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     perform delimit.&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;  ENDDO.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;update records for officers, read the file with ssn's of officers and*&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;update the officer flag on IT0171 to '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;perform update_officers.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;writing the stats of the program to the screen and to the stats file&lt;/STRONG&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;perform write_to_file.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  WRITE:/.&lt;/P&gt;&lt;P&gt;  WRITE:/ 'Total records read                     ', record_read.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE:/ 'Total error records that went to batch ', record_error.&lt;/P&gt;&lt;P&gt;  WRITE:/ 'Total records created in SAP           ', record_created.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;close all files that were open for processing&lt;/STRONG&gt;*&lt;/P&gt;&lt;P&gt;  CLOSE DATASET fileout.&lt;/P&gt;&lt;P&gt;  CLOSE DATASET filein.&lt;/P&gt;&lt;P&gt;  CLOSE DATASET filestat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;close dataset filestat.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;close dataset fileoffi.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;close dataset filemess.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF bisflag = 'Y'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BDC_CLOSE_GROUP'&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        not_open    = 01&lt;/P&gt;&lt;P&gt;        queue_error = 02.&lt;/P&gt;&lt;P&gt;  ENDIF.&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  INFOTYPE1&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;P&gt;*FORM infotype1.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; PERFORM fill_bdc_tab2.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;**&lt;STRONG&gt;calling the PA30 transaction to process the records in the bdc_tab&lt;/STRONG&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; CALL TRANSACTION 'PA30'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; USING bdc_tab&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; MODE s_mode&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; UPDATE 'S'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; MESSAGES INTO messtab.&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 NE 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   TRANSFER itab_in TO filestat.&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;   TRANSFER itab_in TO fileout.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   record_error = record_error + 1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   PERFORM write_errors.&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Add to batch session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF bisflag = 'N'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     bisflag = 'Y'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     CALL FUNCTION 'BDC_OPEN_GROUP'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         client              = sy-mandt&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         group               = 'CONVPSN'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         keep                = 'X'  "Retention flag&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         user                = sy-uname  "Batch input user name&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         client_invalid      = 01&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         destination_invalid = 02&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         group_invalid       = 03&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         holddate_invalid    = 04&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         internal_error      = 05&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         queue_error         = 06&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         running             = 07&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         user_invalid        = 08.&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;   CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       tcode          = 'PA30'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     TABLES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       dynprotab      = bdc_tab&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       internal_error = 01&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       not_open       = 02&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       queue_error    = 03&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       tcode_invalid  = 04.&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;LI level="1" type="ul"&gt;&lt;P&gt;   upd01 = 'y'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   record_created = record_created + 1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   TRANSFER itab_in TO filestat.&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;*ENDFORM.                                                    "INFOTYPE1&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  DELIMIT&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;P&gt;FORM delimit.&lt;/P&gt;&lt;P&gt;  PERFORM fill_bdc_tab3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;calling the PA30 transaction to process the records in the bdc_tab&lt;/STRONG&gt;*&lt;/P&gt;&lt;P&gt;  CALL TRANSACTION 'PP01'&lt;/P&gt;&lt;P&gt;  USING bdc_tab&lt;/P&gt;&lt;P&gt;  MODE s_mode&lt;/P&gt;&lt;P&gt;  UPDATE 'S'&lt;/P&gt;&lt;P&gt;  MESSAGES INTO messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    TRANSFER itab_in TO filestat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    TRANSFER itab_in TO fileout.&lt;/P&gt;&lt;P&gt;    record_error = record_error + 1.&lt;/P&gt;&lt;P&gt;    PERFORM write_errors.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Add to batch session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF bisflag = 'N'.&lt;/P&gt;&lt;P&gt;      bisflag = 'Y'.&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               = 'CONVPSN'&lt;/P&gt;&lt;P&gt;          keep                = 'X'  "Retention flag&lt;/P&gt;&lt;P&gt;          user                = sy-uname  "Batch input user name&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          client_invalid      = 01&lt;/P&gt;&lt;P&gt;          destination_invalid = 02&lt;/P&gt;&lt;P&gt;          group_invalid       = 03&lt;/P&gt;&lt;P&gt;          holddate_invalid    = 04&lt;/P&gt;&lt;P&gt;          internal_error      = 05&lt;/P&gt;&lt;P&gt;          queue_error         = 06&lt;/P&gt;&lt;P&gt;          running             = 07&lt;/P&gt;&lt;P&gt;          user_invalid        = 08.&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;    CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        tcode          = 'PA30'&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        dynprotab      = bdc_tab&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        internal_error = 01&lt;/P&gt;&lt;P&gt;        not_open       = 02&lt;/P&gt;&lt;P&gt;        queue_error    = 03&lt;/P&gt;&lt;P&gt;        tcode_invalid  = 04.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    record_created = record_created + 1.&lt;/P&gt;&lt;P&gt;    TRANSFER itab_in TO filestat.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "DELIMIT&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  FILL_BDC_TAB&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 fill_bdc_tab.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;make sure bdc_tab is empty for the next entry&lt;/STRONG&gt;*&lt;/P&gt;&lt;P&gt;  REFRESH bdc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM populate_bdc_tab USING:&lt;/P&gt;&lt;P&gt;  '1' 'SAPMP50A'   '1000',             "program name and screen number&lt;/P&gt;&lt;P&gt;  ' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;  ' ' 'BDC_CURSOR' 'RP50G-CHOIC',&lt;/P&gt;&lt;P&gt;  ' ' 'RP50G-PERNR' itab-pernr,        "personnel number&lt;/P&gt;&lt;P&gt;  ' ' 'RP50G-CHOIC' '0',&lt;/P&gt;&lt;P&gt;  ' ' 'RP50G-TIMR6' 'X',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  '1' 'SAPMP50A' '1000',&lt;/P&gt;&lt;P&gt;  ' ' 'BDC_OKCODE' 'INS',&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'BDC_CURSOR' ITAB-PERNR,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  '1' 'MP000000' '2000',               "program and screen for the IT171&lt;/P&gt;&lt;P&gt;*' ' 'BDC_OKCODE' 'UPD',&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'BDC_CURSOR' ITAB-DOCI1,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ' ' 'P0000-BEGDA' itab-begda,        "begin date&lt;/P&gt;&lt;P&gt;  ' ' 'P0000-MASSN' 'CP',             "event type&lt;/P&gt;&lt;P&gt;  ' ' 'P0000-MASSG' ' ',             "reason for action type&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ' ' 'PSPAR-PLANS' itab-plans, "position&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'P0171-OFFIC' itab-offic,        "company officer indicator&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'P0171-DOCN1' itab-docn1,        "doctor name&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'P0171-DOCI1' itab-doci1,        "doctor id number&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'P0171-HICMP' itab-hicmp,        "highly compensated employee ind.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ' ' 'BDC_OKCODE' '/11',              "save&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; '1' 'MP000100' '2010',               "program and screen for the IT171&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**' ' 'BDC_OKCODE' 'UPD',&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;' ' 'BDC_CURSOR' ITAB-DOCI1,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'P0001-BEGDA' itab-begda,        "begin date&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'P0001-SACHA' zmetzpos-sacha,   "payroll admin&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'P0001-SACHZ' itab_in-sachz,  "time&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;' ' 'P0171-OFFIC' itab-offic,        "company officer indicator&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;' ' 'P0171-DOCN1' itab-docn1,        "doctor name&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;' ' 'P0171-DOCI1' itab-doci1,        "doctor id number&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;' ' 'P0171-HICMP' itab-hicmp,        "highly compensated employee ind.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'BDC_OKCODE' '/11',         "save&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ' ' 'BDC_OKCODE' '/11'.              "save&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " FILL_BDC_TAB&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  FILL_BDC_TAB3&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 fill_bdc_tab3.&lt;/P&gt;&lt;P&gt;*&lt;STRONG&gt;make sure bdc_tab is empty for the next entry&lt;/STRONG&gt;*&lt;/P&gt;&lt;P&gt;  REFRESH bdc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM populate_bdc_tab USING:&lt;/P&gt;&lt;P&gt;  '1' 'SAPMH5A0'   '5000',             "program name and screen number&lt;/P&gt;&lt;P&gt;  ' ' 'PPHDR-OTYPE' 'S ',              "object type&lt;/P&gt;&lt;P&gt;  ' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ' ' 'PM0D1-SEARK' itab-plans, "position&lt;/P&gt;&lt;P&gt;  ' ' 'PPHDR-BEGDA' format_begda,        "validity begin date&lt;/P&gt;&lt;P&gt;  ' ' 'PPHDR-ENDDA' format_endda,        "validity end date&lt;/P&gt;&lt;P&gt;  ' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;P&gt;  ' ' 'BDC_OKCODE' 'CUTI',&lt;/P&gt;&lt;P&gt;  '1' 'SAPMH5A0'   '5000',             "program name and screen number&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ' ' 'PM0D1-PPSEL(6)' 'X',                 "click vacancy&lt;/P&gt;&lt;P&gt;  ' ' 'PM0D1-PPACTIV(6)' 'X',                 "click active&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ' ' 'BDC_OKCODE' 'CUTI',&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'BDC_CURSOR' ITAB-PERNR,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  '1' 'MP100700' '2000',               "program and screen for the IT171&lt;/P&gt;&lt;P&gt;*' ' 'BDC_OKCODE' 'UPD',&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'BDC_CURSOR' ITAB-DOCI1,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ' ' 'P1007-ENDDA' format_valid,      "end validity date&lt;/P&gt;&lt;P&gt;  ' ' 'PPHDR-HISTO' 'X',             "click historical records&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'P0171-OFFIC' itab-offic,        "company officer indicator&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'P0171-DOCN1' itab-docn1,        "doctor name&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'P0171-DOCI1' itab-doci1,        "doctor id number&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;' ' 'P0171-HICMP' itab-hicmp,        "highly compensated employee ind.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ' ' 'BDC_OKCODE' 'CUTI'.             "save&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " FILL_BDC_TAB&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  FILL_BDC_TAB2&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 fill_bdc_tab2.&lt;/P&gt;&lt;P&gt;**&lt;STRONG&gt;make sure bdc_tab is empty for the next entry&lt;/STRONG&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; REFRESH bdc_tab.&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; PERFORM populate_bdc_tab USING:&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; '1' 'SAPMP50A'   '1000',             "program name and screen number&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'BDC_OKCODE' '/00',&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'BDC_CURSOR' 'RP50G-CHOIC',&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'RP50G-PERNR' itab-pernr,        "personnel number&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'RP50G-CHOIC' '1',&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'RP50G-TIMR6' '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; '1' 'SAPMP50A' '1000',&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'BDC_OKCODE' 'INS',&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;' ' 'BDC_CURSOR' ITAB-PERNR,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; '1' 'MP000100' '2010',               "program and screen for the IT171&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**' ' 'BDC_OKCODE' 'UPD',&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;' ' 'BDC_CURSOR' ITAB-DOCI1,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'P0001-BEGDA' itab-begda,        "begin date&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'P0001-SACHA' zmetzpos-sacha,   "payroll admin&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'P0001-SACHZ' itab_in-sachz,  "time&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;' ' 'P0171-OFFIC' itab-offic,        "company officer indicator&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;' ' 'P0171-DOCN1' itab-docn1,        "doctor name&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;' ' 'P0171-DOCI1' itab-doci1,        "doctor id number&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;' ' 'P0171-HICMP' itab-hicmp,        "highly compensated employee ind.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ' ' 'BDC_OKCODE' '/11'.              "save&lt;/P&gt;&lt;/LI&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;*ENDFORM.                               " FILL_BDC_TAB&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  POPULATE_BDC_TAB&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;P_0393   text                                                *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0394   text                                                *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;P_0395   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 populate_bdc_tab USING    flag var1 var2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR bdc_tab.&lt;/P&gt;&lt;P&gt;  IF flag = '1'.&lt;/P&gt;&lt;P&gt;    bdc_tab-program = var1.&lt;/P&gt;&lt;P&gt;    bdc_tab-dynpro = var2.&lt;/P&gt;&lt;P&gt;    bdc_tab-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    bdc_tab-fnam = var1.&lt;/P&gt;&lt;P&gt;    bdc_tab-fval = var2.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  APPEND bdc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " POPULATE_BDC_TAB&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  WRITE_ERRORS&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 write_errors.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'Z_REPORT'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      display_to_screen = 'Y'&lt;/P&gt;&lt;P&gt;      message_number    = '000'&lt;/P&gt;&lt;P&gt;      variable_1        = 'Call transaction failed '&lt;/P&gt;&lt;P&gt;      variable_2        = itab-pernr&lt;/P&gt;&lt;P&gt;      variable_3        = ''&lt;/P&gt;&lt;P&gt;      variable_4        = ''&lt;/P&gt;&lt;P&gt;      message_id        = 'ZZ'&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      cant_open_file    = 1&lt;/P&gt;&lt;P&gt;      OTHERS            = 2.&lt;/P&gt;&lt;P&gt;  WRITE: / 'Call Transaction failed ', itab-pernr.&lt;/P&gt;&lt;P&gt;  LOOP AT messtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'Z_REPORT'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;             display_to_screen  = 'Y'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        RUN_IN_BATCH       = SY-BATCH&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              message_number     = messtab-msgnr&lt;/P&gt;&lt;P&gt;             variable_1         = messtab-msgv1&lt;/P&gt;&lt;P&gt;             variable_2         = messtab-msgv2&lt;/P&gt;&lt;P&gt;             variable_3         = messtab-msgv3&lt;/P&gt;&lt;P&gt;             variable_4         = messtab-msgv4&lt;/P&gt;&lt;P&gt;             message_id         = messtab-msgid&lt;/P&gt;&lt;P&gt;         EXCEPTIONS&lt;/P&gt;&lt;P&gt;              cant_open_file     = 1&lt;/P&gt;&lt;P&gt;              OTHERS             = 2.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'Z_MESSAGE_TEXT_BUILD'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        msgid               = messtab-msgid&lt;/P&gt;&lt;P&gt;        msgnr               = messtab-msgnr&lt;/P&gt;&lt;P&gt;        msgv1               = messtab-msgv1&lt;/P&gt;&lt;P&gt;        msgv2               = messtab-msgv2&lt;/P&gt;&lt;P&gt;        msgv3               = messtab-msgv3&lt;/P&gt;&lt;P&gt;        msgv4               = messtab-msgv4&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        message_text_output = message_text&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        message_not_found   = 01.&lt;/P&gt;&lt;P&gt;    WRITE: / message_text.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'Z_REPORT'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      display_to_screen = 'Y'&lt;/P&gt;&lt;P&gt;      message_number    = '000'&lt;/P&gt;&lt;P&gt;      variable_1        = ' '&lt;/P&gt;&lt;P&gt;      variable_2        = ''&lt;/P&gt;&lt;P&gt;      variable_3        = ''&lt;/P&gt;&lt;P&gt;      variable_4        = ''&lt;/P&gt;&lt;P&gt;      message_id        = 'ZZ'&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      cant_open_file    = 1&lt;/P&gt;&lt;P&gt;      OTHERS            = 2.&lt;/P&gt;&lt;P&gt;  WRITE: /.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " WRITE_ERRORS&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 Feb 2006 18:06:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/file-structure/m-p/1121523#M109005</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-02-17T18:06:43Z</dc:date>
    </item>
  </channel>
</rss>

