<?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 in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574231#M588124</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; I have declared v_wrbtr as char type only.But still when i try to process the session for the 3rd test case (1.293,00) in the o/p i am getting 1.29300 and error as 'enter numeric value'.I have tried this for all the decimal notations.Even then it is not working.Could u pls suggest me a proper solution for this?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Hema&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 02 Aug 2007 05:21:00 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-08-02T05:21:00Z</dc:date>
    <item>
      <title>BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574228#M588121</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;I am working on a bdc program.I want to upload 3 numerical values(amount in document currency-wrbtr)293,00&lt;/P&gt;&lt;P&gt;1 293,00&lt;/P&gt;&lt;P&gt;1.293,00&lt;/P&gt;&lt;P&gt;1293.00&lt;/P&gt;&lt;P&gt;I was able to upload 3 values by changing decimal notation.But 1.293,00 is failing.I am also sending the code of my program .Can anyone help me find some solution for this?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think in FORM SPLIT-DATA error occurs in this part of the code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; MOVE t_item-wrbtr TO v_wrbtr.&lt;/P&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;   REPLACE ',' WITH '' INTO v_wrbtr.&lt;/P&gt;&lt;P&gt;   condense v_wrbtr  no-gaps.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;END OF SRR 25764&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WRITE v_wrbtr TO wa_item-wrbtr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT  zfie070_doc_upload   MESSAGE-ID fb.&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Tabellen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;TABLES:&lt;/P&gt;&lt;P&gt;         dd02l,&lt;/P&gt;&lt;P&gt;         bgr00,                        " Mappenvorsatz&lt;/P&gt;&lt;P&gt;         bbkpf,                        " Belegkopf + Tcode&lt;/P&gt;&lt;P&gt;         bbseg,                        " Belegsegment.&lt;/P&gt;&lt;P&gt;         bbtax,                        " Belegsteuern.&lt;/P&gt;&lt;P&gt;         bwith,                        " Quellensteuer&lt;/P&gt;&lt;P&gt;         bselk,                        " Selektionsdaten Kopf&lt;/P&gt;&lt;P&gt;         bselp.                        " Selektionsdaten Position&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES:  tbsl.                         " Buchungsschlüssel&lt;/P&gt;&lt;P&gt;TABLES:  t041a.                        " Ausgleichsvorgänge&lt;/P&gt;&lt;P&gt;TABLES:  t100.                         " Nachrichten&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS slis.&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;    no_prot     VALUE 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;    saprl       LIKE sy-saprl,&lt;/P&gt;&lt;P&gt;    sysid       LIKE sy-sysid,&lt;/P&gt;&lt;P&gt;    new_gn,&lt;/P&gt;&lt;P&gt;    gdate       LIKE sy-datum,&lt;/P&gt;&lt;P&gt;    gtime       LIKE sy-uzeit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;    BEGIN OF tabtab OCCURS 3,&lt;/P&gt;&lt;P&gt;        tabname     LIKE dd02l-tabname,&lt;/P&gt;&lt;P&gt;        vorhanden,&lt;/P&gt;&lt;P&gt;    END OF tabtab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;    BEGIN OF rep OCCURS 700,&lt;/P&gt;&lt;P&gt;        z(72),&lt;/P&gt;&lt;P&gt;    END OF rep.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:   BEGIN OF ftpost OCCURS 100.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE ftpost.&lt;/P&gt;&lt;P&gt;DATA:   END OF ftpost.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:   BEGIN OF ftclear OCCURS 20.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE ftclear.&lt;/P&gt;&lt;P&gt;DATA:   END OF ftclear.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:   BEGIN OF fttax OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE fttax.&lt;/P&gt;&lt;P&gt;DATA:   END OF fttax.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:   BEGIN OF xblntab  OCCURS 2.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE blntab.&lt;/P&gt;&lt;P&gt;DATA:   END OF xblntab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    BEGIN OF save_ftclear.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE ftclear.&lt;/P&gt;&lt;P&gt;DATA:    END OF save_ftclear.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Tabelle T_BBKPF enthält Belegkopf + Tcode  -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------" /&gt;&lt;P&gt;DATA:    t_bbkpf LIKE bbkpf OCCURS 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Tabelle T_BBSEG enthält Belegsegment -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------" /&gt;&lt;P&gt;DATA:    t_bbseg LIKE bbseg_di OCCURS 50.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Tabelle T_BBTAX enthält Steuerdaten -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-------------------------" /&gt;&lt;P&gt;DATA:    t_bbtax LIKE bbtax OCCURS 50.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Tabelle T_BWITH enthält Quellensteuerdaten -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------" /&gt;&lt;P&gt;DATA:    t_bwith LIKE bwith_di OCCURS 50.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Tabelle FFILE enthält alle Datensätze -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------" /&gt;&lt;P&gt;DATA:    BEGIN OF tfile OCCURS 0,&lt;/P&gt;&lt;P&gt;           rec(3300)  TYPE c,&lt;/P&gt;&lt;P&gt;         END OF tfile.&lt;/P&gt;&lt;P&gt;DATA:    BEGIN OF efile OCCURS 100,&lt;/P&gt;&lt;P&gt;           rec(3300)  TYPE c,&lt;/P&gt;&lt;P&gt;         END OF efile.&lt;/P&gt;&lt;P&gt;DATA:    BEGIN OF ertab OCCURS 5,&lt;/P&gt;&lt;P&gt;           rec(3300)  TYPE c,&lt;/P&gt;&lt;P&gt;         END OF ertab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SRR-25080 Begin.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;file for header records.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;DATA:    BEGIN OF t1_file OCCURS 0,&lt;/P&gt;&lt;P&gt;           rec(3300)  TYPE c,&lt;/P&gt;&lt;P&gt;         END OF t1_file.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SRR-25080 End.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Feld-Informationen aus NAMETAB -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------" /&gt;&lt;P&gt;DATA:    BEGIN OF nametab OCCURS 120.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE dntab.&lt;/P&gt;&lt;P&gt;DATA:    END OF nametab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Tabelle XT001 -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------" /&gt;&lt;P&gt;DATA:    BEGIN OF xt001 OCCURS 5.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE t001.&lt;/P&gt;&lt;P&gt;DATA:    END OF xt001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Tabelle XTBSL -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------" /&gt;&lt;P&gt;DATA:    BEGIN OF xtbsl OCCURS 10.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE tbsl.&lt;/P&gt;&lt;P&gt;DATA:    END OF xtbsl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Tabelle XT041A -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&lt;P&gt;DATA:    BEGIN OF xt041a OCCURS 5,&lt;/P&gt;&lt;P&gt;           auglv        LIKE t041a-auglv,&lt;/P&gt;&lt;P&gt;         END OF xt041a.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&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;       Strukturen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*------- Initialstrukturen -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------" /&gt;&lt;P&gt;DATA:    BEGIN OF i_bbkpf.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bbkpf.       " Belegkopf&lt;/P&gt;&lt;P&gt;DATA:    END OF i_bbkpf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    BEGIN OF i_bbseg.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bbseg.       " Belegsegment&lt;/P&gt;&lt;P&gt;DATA:    END OF i_bbseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    BEGIN OF i_bbtax.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bbtax.       " Belegsteuern&lt;/P&gt;&lt;P&gt;DATA:    END OF i_bbtax.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    BEGIN OF i_bselk.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bselk.       " Selektionsdaten Kopf&lt;/P&gt;&lt;P&gt;DATA:    END OF i_bselk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    BEGIN OF i_bselp.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bselp.       " Selektionsdaten Position&lt;/P&gt;&lt;P&gt;DATA:    END OF i_bselp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    BEGIN OF i_bwith.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bwith.       " Quellensteuer&lt;/P&gt;&lt;P&gt;DATA:    END OF i_bwith.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Hilfsstrukturen für Direct Input -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------" /&gt;&lt;P&gt;DATA:    BEGIN OF wa_bbseg_di.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bbseg_di.&lt;/P&gt;&lt;P&gt;DATA:    END OF wa_bbseg_di.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    BEGIN OF wa_bwith_di.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bwith_di.&lt;/P&gt;&lt;P&gt;DATA:    END OF wa_bwith_di.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    BEGIN OF trans OCCURS 0,&lt;/P&gt;&lt;P&gt;           x     TYPE c,&lt;/P&gt;&lt;P&gt;           c_00  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           soh   TYPE c,&lt;/P&gt;&lt;P&gt;           c_01  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           stx   TYPE c,&lt;/P&gt;&lt;P&gt;           c_02  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           etx   TYPE c,&lt;/P&gt;&lt;P&gt;           c_03  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           eot   TYPE c,&lt;/P&gt;&lt;P&gt;           c_04  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           enq   TYPE c,&lt;/P&gt;&lt;P&gt;           c_05  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           ack   TYPE c,&lt;/P&gt;&lt;P&gt;           c_06  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           bel   TYPE c,&lt;/P&gt;&lt;P&gt;           c_07  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           bs    TYPE c,&lt;/P&gt;&lt;P&gt;           c_08  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           ht    TYPE c,&lt;/P&gt;&lt;P&gt;           c_09  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           lf    TYPE c,&lt;/P&gt;&lt;P&gt;           c_0a  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           vt    TYPE c,&lt;/P&gt;&lt;P&gt;           c_0b  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           ff    TYPE c,&lt;/P&gt;&lt;P&gt;           c_0c  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           cr    TYPE c,&lt;/P&gt;&lt;P&gt;           c_0d  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           so    TYPE c,&lt;/P&gt;&lt;P&gt;           c_0e  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           si    TYPE c,&lt;/P&gt;&lt;P&gt;           c_0f  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           dle   TYPE c,&lt;/P&gt;&lt;P&gt;           c_10  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           dc1   TYPE c,&lt;/P&gt;&lt;P&gt;           c_11  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           dc2   TYPE c,&lt;/P&gt;&lt;P&gt;           c_12  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           dc3   TYPE c,&lt;/P&gt;&lt;P&gt;           c_13  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           dc4   TYPE c,&lt;/P&gt;&lt;P&gt;           c_14  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           nak   TYPE c,&lt;/P&gt;&lt;P&gt;           c_15  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           syn   TYPE c,&lt;/P&gt;&lt;P&gt;           c_16  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           etb   TYPE c,&lt;/P&gt;&lt;P&gt;           c_17  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           can   TYPE c,&lt;/P&gt;&lt;P&gt;           c_18  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           em    TYPE c,                                "#EC NO_M_RISC3&lt;/P&gt;&lt;P&gt;           c_19  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           sub   TYPE c,&lt;/P&gt;&lt;P&gt;           c_1a  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           esc   TYPE c,&lt;/P&gt;&lt;P&gt;           c_1b  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           fs    TYPE c,&lt;/P&gt;&lt;P&gt;           c_1c  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           gs    TYPE c,&lt;/P&gt;&lt;P&gt;           c_1d  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           rs    TYPE c,&lt;/P&gt;&lt;P&gt;           c_1e  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;           us    TYPE c,&lt;/P&gt;&lt;P&gt;           c_1f  TYPE c VALUE ' ',&lt;/P&gt;&lt;P&gt;         END OF trans.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Workarea zum Lesen der BI-Sätze -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------" /&gt;&lt;P&gt;*------- wa, ertab, tfile und efile muessen mindestens so lang sein&lt;/P&gt;&lt;P&gt;*------- wie die laengste Batchinput-Struktur BBSEG + kundeneigene&lt;/P&gt;&lt;P&gt;*------- Felder im Include CI_COBL_BI.&lt;/P&gt;&lt;P&gt;*------- Laenge der BBSEG ohne CI_COBL_BI (Stand 3.0F) 1861 Bytes&lt;/P&gt;&lt;P&gt;DATA:    BEGIN OF wa,&lt;/P&gt;&lt;P&gt;           char1(3300)  TYPE c,&lt;/P&gt;&lt;P&gt;         END OF wa.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&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;       Einzelfelder&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;DATA:    beleg_count(6) TYPE c,        " Anz. Belege je Mappe&lt;/P&gt;&lt;P&gt;         beleg_break(6) TYPE c,        " Anz. Belege je Mappe&lt;/P&gt;&lt;P&gt;         bukrs          LIKE bbseg-newbk,   " Buchungskreis&lt;/P&gt;&lt;P&gt;         bbkpf_ok(1)    TYPE c,        " Belegkopf übergeben&lt;/P&gt;&lt;P&gt;         bbseg_count(3) TYPE n,        " Anz. BSEGS pro Beleg&lt;/P&gt;&lt;P&gt;         bbseg_tax(1)   TYPE c.        " Steuer über BBSEG eingegeb&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    char(40)       TYPE c,        " Char. Hilfsfeld&lt;/P&gt;&lt;P&gt;         char1(1)       TYPE c,        " Char. Hilfsfeld&lt;/P&gt;&lt;P&gt;         char2(40)      TYPE c,        " Char. Hilfsfeld&lt;/P&gt;&lt;P&gt;         tfile_fill(1)  TYPE c,        " X=TFILE schon gefüllt&lt;/P&gt;&lt;P&gt;         tfsave_fill(1)  TYPE c,       " X=TFSAVE schon gefüllt&lt;/P&gt;&lt;P&gt;         commit_count(4) TYPE n,       " Zähler für Commit&lt;/P&gt;&lt;P&gt;         all_commit LIKE tbist-aktnum. " Anzahl der Belege bis zum&lt;/P&gt;&lt;P&gt;" letzten COMMIT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    dyn_name(12)   TYPE c.        " Dynproname&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    error_run(1)   TYPE c.        " X = error processing&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    fcode(5)       TYPE c,        " Funktionscode&lt;/P&gt;&lt;P&gt;         function       LIKE  rfipi-funct.  " B= BDC, C= Call Trans&lt;/P&gt;&lt;P&gt;" D-DIRECT INPUT&lt;/P&gt;&lt;P&gt;DATA:    group_count(6) TYPE c,        " Anzahl Mappen&lt;/P&gt;&lt;P&gt;         group_open(1)  TYPE c.        " X=Mappe schon geöffnet&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    ln_bbseg(8)    TYPE p,        " Länge des BBSEG&lt;/P&gt;&lt;P&gt;         ln_bbkpf(8)    TYPE p,        " Länge des BBKPF&lt;/P&gt;&lt;P&gt;         ln_bselk(8)    TYPE p,        " Länge des BSELK&lt;/P&gt;&lt;P&gt;         ln_bselp(8)    TYPE p.        " Länge des BSELP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    mode           LIKE  rfpdo-allgazmd.&lt;/P&gt;&lt;P&gt;DATA:    msgvn          LIKE sy-msgv1, " Hilfsfeld Message-Variable&lt;/P&gt;&lt;P&gt;         msgid          LIKE sy-msgid,&lt;/P&gt;&lt;P&gt;         msgty          LIKE sy-msgty,&lt;/P&gt;&lt;P&gt;         msgno          LIKE sy-msgno,&lt;/P&gt;&lt;P&gt;         msgv1          LIKE sy-msgv1,&lt;/P&gt;&lt;P&gt;         msgv2          LIKE sy-msgv2,&lt;/P&gt;&lt;P&gt;         msgv3          LIKE sy-msgv3,&lt;/P&gt;&lt;P&gt;         msgv4          LIKE sy-msgv4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    n(2)           TYPE n,        " Hilfsfeld num.&lt;/P&gt;&lt;P&gt;         nodata(1)      TYPE c,        " Keine BI-Daten für Feld&lt;/P&gt;&lt;P&gt;         nodata_old     LIKE nodata.   " NODATA gemerkt&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    prefix_p       LIKE tcurp-prefix_p, "price-based rate prefix&lt;/P&gt;&lt;P&gt;         prefix_m       LIKE tcurp-prefix_p. "quantity-based rate prefix&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    refe1(8)       TYPE p.        " Hilfsfeld gepackt&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    satz2_count(6) TYPE c,        " Anz. Sätze(Typ2) je Trans.&lt;/P&gt;&lt;P&gt;         satz2_cnt_akt  LIKE satz2_count,   " Anz. Sätze(Typ2) - 1&lt;/P&gt;&lt;P&gt;         save_tbnam     LIKE bbseg-tbnam,   " gemerkter Tabellenname&lt;/P&gt;&lt;P&gt;         save_bgr00     LIKE bgr00,    " gemerkter BGR00&lt;/P&gt;&lt;P&gt;         subrc          LIKE sy-subrc, " Subrc&lt;/P&gt;&lt;P&gt;         count          TYPE i.        " Anz. Belege&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    tabix(2)       TYPE n,        " Tabelleninex&lt;/P&gt;&lt;P&gt;         tbist_aktiv(1) TYPE c,        " Restart aktiv?&lt;/P&gt;&lt;P&gt;         text(200)      TYPE c,        " Messagetext&lt;/P&gt;&lt;P&gt;         text1(40)      TYPE c,        " Messagetext&lt;/P&gt;&lt;P&gt;         text2(40)      TYPE c,        " Messagetext&lt;/P&gt;&lt;P&gt;         text3(40)      TYPE c,        " Messagetext&lt;/P&gt;&lt;P&gt;         tfill_ftpost   TYPE i,        " Anz. Einträge in FTPOST&lt;/P&gt;&lt;P&gt;         tfill_t_bbseg  TYPE i,        " Anz. Einträge in T_BBSEG&lt;/P&gt;&lt;P&gt;         tfill_t_bwith  TYPE i,        " Anz. Einträge in T_BWITH&lt;/P&gt;&lt;P&gt;         tfill_tfile    TYPE i,        " Anz. Einträge in TFILE&lt;/P&gt;&lt;P&gt;         tfill_ertab    TYPE i,        " Anz. Einträge in ERTAB&lt;/P&gt;&lt;P&gt;         tfill_ftc(3)   TYPE n,        " Anz. Einträge in FTC&lt;/P&gt;&lt;P&gt;         tfill_ftk(3)   TYPE n,        " Anz. Einträge in FTK&lt;/P&gt;&lt;P&gt;         tfill_ftz(3)   TYPE n,        " Anz. Einträge in FTZ&lt;/P&gt;&lt;P&gt;         tfill_041a(1)  TYPE n.        " Anz. Einträge in XT041A&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    wert(60)       TYPE c,        " Hilfsfeld Feldinhalt&lt;/P&gt;&lt;P&gt;         wt_count       TYPE i.        " Zähler Quellensteuer&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    xbdcc          LIKE rfipi-xbdcc,   " X=BDC bei Error in CallTra&lt;/P&gt;&lt;P&gt;         xeof(1)        TYPE c,        " X=End of File erreicht&lt;/P&gt;&lt;P&gt;         xmess_bbkpf-sende(1) TYPE c,  " Message gesendet für BBKPF&lt;/P&gt;&lt;P&gt;         xmess_bbseg-sende(1) TYPE c,  " Message gesendet für BBSEG&lt;/P&gt;&lt;P&gt;         xmess_bbtax-sende(1) TYPE c,  " Message gesendet für BBTAX&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       XMWST          LIKE BKPF-XMWST,    " Steuer rechnen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;         xnewg(1)       TYPE c,        " X=Neue Mappe&lt;/P&gt;&lt;P&gt;         xftclear(1).                  " Append FTCLEAR durchfuehren?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;DATAs wichtig für Wiederaufsetzbarkeit&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: aktnum LIKE tbist-aktnum.   " Zähler für aktuell bearbeiteter Satz&lt;/P&gt;&lt;P&gt;DATA: startnum LIKE tbist-aktnum.      " erster zu bearbeitender Satz&lt;/P&gt;&lt;P&gt;*ata: is_error.                   " übergebene Satznummer war fehlerhaft&lt;/P&gt;&lt;P&gt;DATA: numerror LIKE tbist-numerror.    " Anzahl Fehler in diesem Schritt&lt;/P&gt;&lt;P&gt;DATA: olderror LIKE tbist-numerror.    " Anzahl Fehler aus dem&lt;/P&gt;&lt;P&gt;" vorherigen Job.&lt;/P&gt;&lt;P&gt;DATA: lasterrnum LIKE tbist-lastnum.   "Letzte Fehlernummer&lt;/P&gt;&lt;P&gt;DATA: nostart LIKE tbist-nostarting VALUE 'X'. " Start-Infos schreiben ?&lt;/P&gt;&lt;P&gt;DATA: jobid LIKE tbtco-jobname.&lt;/P&gt;&lt;P&gt;DATA: jobid_ext LIKE tbtco-jobname.&lt;/P&gt;&lt;P&gt;CONSTANTS:   pack_size TYPE i VALUE '250',&lt;/P&gt;&lt;P&gt;             c_msgid   LIKE sy-msgid VALUE 'FB'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: terrd,&lt;/P&gt;&lt;P&gt;        tfsave.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Konstanten und Field-Symbols&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;DATA:    c_nodata(1)    TYPE c VALUE '/',   " Default für NODATA&lt;/P&gt;&lt;P&gt;         xon                   VALUE 'X'.   " Flag eingeschaltet&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    fmf1ges(1)     TYPE x VALUE '20'.  " Beide Flags aus: Input.&lt;/P&gt;&lt;P&gt;DATA:    fmb1num(1)     TYPE x VALUE '10'.  "       "&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    max_commit(4)  TYPE n.        " Max. Belege je Commit&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    rep_name_a(8)  TYPE c VALUE 'SAPMF05A'. " Mpool SAPMF05A&lt;/P&gt;&lt;P&gt;DATA:    rep_name_c(8)  TYPE c VALUE 'SAPLFCPD'. " Mpool SAPLFCPD&lt;/P&gt;&lt;P&gt;DATA:    rep_name_k(8)  TYPE c VALUE 'SAPLKACB'. " Mpool SAPLKACB&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS:            TYPE ANY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*****DATA DECLARATIONS FROM Z PROGRAM ZFIE070_UPLOAD&lt;/P&gt;&lt;P&gt;*Header Table&lt;/P&gt;&lt;P&gt;TYPES  : BEGIN OF d_header,&lt;/P&gt;&lt;P&gt;           header LIKE char1,                         "DEVK928551&lt;/P&gt;&lt;P&gt;           bukrs LIKE bkpf-bukrs,"Company code&lt;/P&gt;&lt;P&gt;           blart LIKE bkpf-blart,"Document Type&lt;/P&gt;&lt;P&gt;           bldat LIKE bkpf-bldat,"Document date&lt;/P&gt;&lt;P&gt;           budat LIKE bkpf-budat,"Posting date&lt;/P&gt;&lt;P&gt;           waers LIKE bkpf-waers,"Currency&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          kursf LIKE bbkpf-kursf,"Exchange rate      "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           xblnr LIKE bkpf-xblnr,"Reference&lt;/P&gt;&lt;P&gt;           bktxt LIKE bkpf-bktxt,"Doc header text&lt;/P&gt;&lt;P&gt;           stodt LIKE bkpf-stodt,"Reversal Date&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          monat LIKE bkpf-monat,"Period              "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          wwert LIKE bkpf-wwert,"Translation Date    "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           stgrd LIKE bkpf-stgrd," Reversal Reason&lt;/P&gt;&lt;P&gt;        END OF d_header,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Item Table&lt;/P&gt;&lt;P&gt;        BEGIN OF d_item,&lt;/P&gt;&lt;P&gt;           item  LIKE char1,                             "DEVK928551&lt;/P&gt;&lt;P&gt;           posnr LIKE vbap-posnr,&lt;/P&gt;&lt;P&gt;           bschl LIKE bseg-bschl,"Posting Key&lt;/P&gt;&lt;P&gt;           shkzg LIKE bseg-shkzg,"D (Debit) or C (Credit)&lt;/P&gt;&lt;P&gt;           hkont LIKE bseg-hkont,"Ac No.&lt;/P&gt;&lt;P&gt;           wrbtr TYPE bbseg-wrbtr, "Amount in Doc Currency&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          bukrs LIKE bkpf-bukrs,"Company code              "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           kostl LIKE bseg-kostl,"Cost center&lt;/P&gt;&lt;P&gt;           prctr LIKE bseg-prctr,"Profit center&lt;/P&gt;&lt;P&gt;           pprct LIKE bseg-pprct,"Partner Profit Center&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          vbund LIKE bseg-vbund,"Trading partner           "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           aufnr LIKE bseg-aufnr,"Order&lt;/P&gt;&lt;P&gt;           mwskz LIKE bseg-mwskz,"Tax Code&lt;/P&gt;&lt;P&gt;           sgtxt LIKE bseg-sgtxt,"Line item text&lt;/P&gt;&lt;P&gt;           zzcgrp LIKE bseg-zzcgrp,"Customer Group&lt;/P&gt;&lt;P&gt;           zzplat LIKE bseg-zzplat,"Platform&lt;/P&gt;&lt;P&gt;           zzpdt LIKE bseg-zzpdt,"Product Code              "SIR-06394&lt;/P&gt;&lt;P&gt;           bewar LIKE bseg-bewar,"Transaction Type&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          projk LIKE bseg-projk,"WBS Element              " SRR-19244&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           projk LIKE bbseg-projk,"WBS Element              " SRR-19244&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           zuonr LIKE bseg-zuonr,"Assignment no.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          dmbtr TYPE bbseg-dmbtr,"Amount in local Currency "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           pernr LIKE bseg-pernr, "Personnel No.&lt;/P&gt;&lt;P&gt;        END OF d_item,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt;    Begin of insertion SRR-23776&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data declaration for SRR-23776&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- Adding further validations according to company codes&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   for all NA companies and document type(KR, KG, KA, DR, DG, DA&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   and YI) to trigger transaction FB01 to create document&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            BEGIN OF d_constant,                            " DEVK928551&lt;/P&gt;&lt;P&gt;            mandt     TYPE mandt,&lt;/P&gt;&lt;P&gt;            objid     TYPE zzobjid,&lt;/P&gt;&lt;P&gt;            pname     TYPE progname,&lt;/P&gt;&lt;P&gt;            fname     TYPE fieldname,&lt;/P&gt;&lt;P&gt;            counter   TYPE count,&lt;/P&gt;&lt;P&gt;            fval      TYPE fieldvalue,&lt;/P&gt;&lt;P&gt;            END  OF d_constant,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of data declaration for   SRR-23776&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt;    End of insertion SRR-23776&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal Table to get the raw data from file&lt;/P&gt;&lt;P&gt;        BEGIN OF d_rawdata,&lt;/P&gt;&lt;P&gt;            record(1000) TYPE c,&lt;/P&gt;&lt;P&gt;        END OF d_rawdata,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        BEGIN OF d_output1,&lt;/P&gt;&lt;P&gt;        status(10) TYPE c,&lt;/P&gt;&lt;P&gt;        mestyp LIKE bdcmsgcoll-msgtyp,&lt;/P&gt;&lt;P&gt;        text LIKE t100-text,&lt;/P&gt;&lt;P&gt;        END OF d_output1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*SRR-25080 Begin.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;file for item records.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;data: BEGIN OF t_temp occurs 0.&lt;/P&gt;&lt;P&gt;         include structure bbseg.&lt;/P&gt;&lt;P&gt;data:    posnr like vbap-posnr,&lt;/P&gt;&lt;P&gt;      END OF t_temp.&lt;/P&gt;&lt;P&gt;*SRR-25080 End.&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;Work areas&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;DATA : wa_header  TYPE d_header,&lt;/P&gt;&lt;P&gt;       wa_item    TYPE d_item,&lt;/P&gt;&lt;P&gt;       wa_rawdata TYPE d_rawdata,&lt;/P&gt;&lt;P&gt;       wa_bdcdata TYPE bdcdata,&lt;/P&gt;&lt;P&gt;       wa_mestab TYPE bdcmsgcoll,&lt;/P&gt;&lt;P&gt;       wa_output1 TYPE d_output1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : wa_bbkpf TYPE  bbkpf,&lt;/P&gt;&lt;P&gt;       wa_bbseg TYPE  bbseg,&lt;/P&gt;&lt;P&gt;       wa_bgr00 TYPE  bgr00.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:  wa_accountgl         LIKE  bapiacgl09,&lt;/P&gt;&lt;P&gt;       wa_currencyamount    LIKE  bapiaccr09,&lt;/P&gt;&lt;P&gt;       wa_extension2        LIKE  bapiparex,&lt;/P&gt;&lt;P&gt;       wa_return            LIKE  bapiret2,&lt;/P&gt;&lt;P&gt;       wa_documentheader    LIKE  bapiache09,&lt;/P&gt;&lt;P&gt;       wa_zbapi_te_acctit   LIKE  zbapi_te_acctit,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*SRR-25080 Begin.&lt;/P&gt;&lt;P&gt;       wafile like tfile,&lt;/P&gt;&lt;P&gt;       wa1_file like t1_file,&lt;/P&gt;&lt;P&gt;       wa_temp like t_temp.&lt;/P&gt;&lt;P&gt;*SRR-25080 END.&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*Variables&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;DATA:  v_text    LIKE t100-text,&lt;/P&gt;&lt;P&gt;       v_copy_text LIKE t100-text,&lt;/P&gt;&lt;P&gt;       c_40(3) TYPE c VALUE 40,&lt;/P&gt;&lt;P&gt;       record_count TYPE i,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      v_kursf(15) TYPE c,               "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       v_wrbtr(13) TYPE c,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      v_dmbtr(13) TYPE c,               "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       v_bldat(10) TYPE c,&lt;/P&gt;&lt;P&gt;       v_budat(10) TYPE c,&lt;/P&gt;&lt;P&gt;       v_stodt(10) TYPE c,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      v_wwert(10) TYPE c,               "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       v_bukrs(10) TYPE c,&lt;/P&gt;&lt;P&gt;       v_blart(10) TYPE c,&lt;/P&gt;&lt;P&gt;       m1 TYPE c VALUE 'H',&lt;/P&gt;&lt;P&gt;       v_key(3) TYPE c,&lt;/P&gt;&lt;P&gt;       v_h,&lt;/P&gt;&lt;P&gt;       v_jv_total(10) TYPE c,&lt;/P&gt;&lt;P&gt;       v_t_id(10) TYPE c,&lt;/P&gt;&lt;P&gt;       v_aloc(10) TYPE c,&lt;/P&gt;&lt;P&gt;       v_shkzg LIKE bseg-shkzg,&lt;/P&gt;&lt;P&gt;       c_error(10) TYPE c VALUE 'FAILED',&lt;/P&gt;&lt;P&gt;       c_success(15) TYPE c VALUE 'SUCCESS',&lt;/P&gt;&lt;P&gt;       c_n TYPE c VALUE 'N',&lt;/P&gt;&lt;P&gt;       c_s TYPE c VALUE 'S',&lt;/P&gt;&lt;P&gt;       c_h TYPE c VALUE 'H',&lt;/P&gt;&lt;P&gt;       c_e TYPE c VALUE 'E',&lt;/P&gt;&lt;P&gt;       c_fv50(6) TYPE c VALUE 'FV50',&lt;/P&gt;&lt;P&gt;       c_fbs1(6) TYPE c VALUE 'FBS1',&lt;/P&gt;&lt;P&gt;       c_fb01(6) TYPE c VALUE 'FB01',&lt;/P&gt;&lt;P&gt;       c_x TYPE c VALUE 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: v_lines(10) TYPE n,&lt;/P&gt;&lt;P&gt;      v_index TYPE c,&lt;/P&gt;&lt;P&gt;      v_hkont(30) TYPE c,&lt;/P&gt;&lt;P&gt;      v_mwskz(30) TYPE c,&lt;/P&gt;&lt;P&gt;      v_zounr(30) TYPE c,&lt;/P&gt;&lt;P&gt;      v_sgtxt(30) TYPE c,&lt;/P&gt;&lt;P&gt;      v_kostl(30) TYPE c,&lt;/P&gt;&lt;P&gt;      v_aufnr(30) TYPE c,&lt;/P&gt;&lt;P&gt;      v_prctr(30) TYPE c,&lt;/P&gt;&lt;P&gt;      v_projk(30) TYPE c,&lt;/P&gt;&lt;P&gt;      c_10(3) TYPE c VALUE 10.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: v_count TYPE i,&lt;/P&gt;&lt;P&gt;      v_pg_count LIKE konp-kopos,&lt;/P&gt;&lt;P&gt;      v_tabix LIKE konp-kopos,&lt;/P&gt;&lt;P&gt;*SRR-25080 Begin.&lt;/P&gt;&lt;P&gt;      v_net TYPE i,&lt;/P&gt;&lt;P&gt;      v_flag(1) TYPE c,&lt;/P&gt;&lt;P&gt;      v_check(1) TYPE c,&lt;/P&gt;&lt;P&gt;      v_counter(1) TYPE i.&lt;/P&gt;&lt;P&gt;*SRR-25080 End.&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;Internal Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;DATA: t_header    TYPE STANDARD TABLE OF d_header WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      t_hedr_temp TYPE STANDARD TABLE OF d_header WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      t_item      TYPE STANDARD TABLE OF d_item   WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      t_item_temp TYPE STANDARD TABLE OF d_item   WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;      t_rawdata   TYPE STANDARD TABLE OF d_rawdata,&lt;/P&gt;&lt;P&gt;      t_bdcdata   TYPE STANDARD TABLE OF bdcdata,&lt;/P&gt;&lt;P&gt;      t_messtab   TYPE STANDARD TABLE OF bdcmsgcoll,&lt;/P&gt;&lt;P&gt;      t_output1   TYPE STANDARD TABLE OF d_output1,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;---- Begin of insertion SRR-23776&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;table to hold north american company codes and&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;document type(KR, KG, KA, DR, DG, DA and YI)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      t_constant  TYPE STANDARD TABLE OF d_constant,    " DEVK928551&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt;    Begin of insertion SRR-23776&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;work area to hold data coming from t_constants&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       wa_constant LIKE LINE OF t_constant.             " DEVK928551&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----" /&gt;&lt;P&gt;    End of insertion SRR-23776&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;---- End of insertion SRR-23776&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Cpnstants&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA :&lt;/P&gt;&lt;P&gt;       c_objectid_070 TYPE c LENGTH 4 VALUE 'E070'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : t_accountgl      TYPE STANDARD TABLE OF bapiacgl09,&lt;/P&gt;&lt;P&gt;       t_currencyamount TYPE STANDARD TABLE OF bapiaccr09,&lt;/P&gt;&lt;P&gt;       t_extension2     TYPE STANDARD TABLE OF bapiparex,&lt;/P&gt;&lt;P&gt;       t_return         TYPE STANDARD TABLE OF bapiret2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : t_field_catalog  TYPE slis_t_fieldcat_alv,&lt;/P&gt;&lt;P&gt;       w_fieldcat TYPE slis_fieldcat_alv,&lt;/P&gt;&lt;P&gt;       ls_layout TYPE slis_layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*Constants&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;CONSTANTS: c_delim        TYPE x           VALUE '09'       ,&lt;/P&gt;&lt;P&gt;           c_session_name LIKE bgr00-group VALUE 'E070_POST',&lt;/P&gt;&lt;P&gt;           c_sep          TYPE c           VALUE '/'        .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&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;       Selektionsbild                                                *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*------- Aufbau des Selektionsbildes&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Falls 'Call Transaction ... Using ...' gewünscht, bitte die&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       die NO-DISPLAY-Zeilen bei Parameters ausstenen&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Vor der Benutzung des 'Call Transaction ... Using ...'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       bitte die Datei prüfen.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;***The existing selection is not  displayed instead we have a custome&lt;/P&gt;&lt;P&gt;***selection screen&lt;/P&gt;&lt;P&gt;*SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: ds_name     LIKE rfpdo-rfbifile NO-DISPLAY.  " Dateiname&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;*SELECTION-SCREEN ULINE.&lt;/P&gt;&lt;P&gt;*SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: fl_check    LIKE rfpdo-rfbichck NO-DISPLAY,&lt;/P&gt;&lt;P&gt;            os_xon      LIKE  rfpdo-rfbioldstr NO-DISPLAY.&lt;/P&gt;&lt;P&gt;*SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;*SELECTION-SCREEN ULINE.&lt;/P&gt;&lt;P&gt;*SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;PARAMETERS: callmode    LIKE rfpdo-rfbifunct NO-DISPLAY,&lt;/P&gt;&lt;P&gt;            max_comm(4) TYPE n DEFAULT '1000' NO-DISPLAY,&lt;/P&gt;&lt;P&gt;            pa_xprot(1) TYPE c NO-DISPLAY.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                             NO-DISPLAY.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          ANZ_MODE:        A=alles N=nichts E=Error&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PARAMETERS: anz_mode    LIKE rfpdo-allgazmd    DEFAULT 'N'&lt;/P&gt;&lt;P&gt;                                               NO-DISPLAY.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          UPDATE:          S=Synchron A=Asynchron&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;PARAMETERS: update      LIKE rfpdo-allgvbmd    DEFAULT 'S'&lt;/P&gt;&lt;P&gt;                                               NO-DISPLAY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;info messages as popup, log or no info&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK bl1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;PARAMETERS: xpop  TYPE c NO-DISPLAY, "RADIOBUTTON GROUP RBL1,&lt;/P&gt;&lt;P&gt;            xlog  TYPE c NO-DISPLAY, "RADIOBUTTON GROUP RBL1,&lt;/P&gt;&lt;P&gt;            xinf  TYPE c NO-DISPLAY. "RADIOBUTTON GROUP RBL1.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END   OF BLOCK bl1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*AT SELECTION-SCREEN ON CALLMODE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; IF CALLMODE NA 'BCD'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   MESSAGE E031.&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;MOVE: space  TO  fl_check ,&lt;/P&gt;&lt;P&gt;      'B'    TO  callmode ,&lt;/P&gt;&lt;P&gt;      950    TO  max_comm ,&lt;/P&gt;&lt;P&gt;      'X'    TO  xlog     ,&lt;/P&gt;&lt;P&gt;      space  TO  xpop     ,&lt;/P&gt;&lt;P&gt;      space  TO  xinf     .&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Selection Screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS p_file LIKE rlgrap-filename.      "Filename &amp;amp; Filepath&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS:p_park RADIOBUTTON GROUP grp1 DEFAULT 'X', "Parking Doc&lt;/P&gt;&lt;P&gt;           p_act RADIOBUTTON GROUP grp1.              "Actual Doc&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         p_reg RADIOBUTTON GROUP grp1,           "Regular Doc&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         p_error as checkbox default 'X'.        "for error mode&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b2 .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SIR-06394 Begin&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK A1 WITH FRAME TITLE text-018.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT 1(79)  text-015.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT /1(79) text-016.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN COMMENT /1(79) text-017.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK A1.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SIR-06394 End.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*F4 help for getting the Local Filename&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'KD_GET_FILENAME_ON_F4'&lt;/P&gt;&lt;P&gt;    CHANGING&lt;/P&gt;&lt;P&gt;      file_name     = p_file&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      mask_too_long = 1&lt;/P&gt;&lt;P&gt;      OTHERS        = 2.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; START-OF-SELECTION                                           *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------" /&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;*----&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;       Hauptablauf                                                   *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Informationen zu Z-Strukturen einlesen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT * FROM dd02l WHERE ( tabname = 'ZBSEG' OR&lt;/P&gt;&lt;P&gt;                              tabname = 'ZSELP' )&lt;/P&gt;&lt;P&gt;                      AND   as4local = 'A'&lt;/P&gt;&lt;P&gt;                      AND   tabclass = 'INTTAB'.&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING dd02l TO tabtab.&lt;/P&gt;&lt;P&gt;    APPEND tabtab.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Informationen aus RFBIBL02 einlesen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  READ REPORT 'RFBIBL02' INTO rep.&lt;/P&gt;&lt;P&gt;  READ TABLE rep INDEX 5.           "read release&lt;/P&gt;&lt;P&gt;  saprl = rep-z+30.&lt;/P&gt;&lt;P&gt;  READ TABLE rep INDEX 6.&lt;/P&gt;&lt;P&gt;  sysid = rep-z+30.&lt;/P&gt;&lt;P&gt;  READ TABLE rep INDEX 12.&lt;/P&gt;&lt;P&gt;  PERFORM tables_pruefen.&lt;/P&gt;&lt;P&gt;  READ TABLE rep INDEX 13.&lt;/P&gt;&lt;P&gt;  PERFORM tables_pruefen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE rep INDEX 3.             "read generated date&lt;/P&gt;&lt;P&gt;  gdate = rep-z+30.&lt;/P&gt;&lt;P&gt;  READ TABLE rep INDEX 4.             "read generated time&lt;/P&gt;&lt;P&gt;  gtime = rep-z+30.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Informationen zum Include COPABBSEG einlesen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT * FROM dd02l WHERE tabname = 'COPABBSEG'&lt;/P&gt;&lt;P&gt;                             AND   as4local = 'A'&lt;/P&gt;&lt;P&gt;                             AND   tabclass = 'INTTAB'.&lt;/P&gt;&lt;P&gt;    IF  dd02l-as4date GT gdate&lt;/P&gt;&lt;P&gt;    OR ( dd02l-as4date EQ gdate AND dd02l-as4time GT gtime ).&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING dd02l TO tabtab.&lt;/P&gt;&lt;P&gt;      APPEND tabtab.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Informationen zu BBSEG einlesen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT * FROM dd02l WHERE tabname = 'BBSEG'&lt;/P&gt;&lt;P&gt;                             AND   as4local = 'A'&lt;/P&gt;&lt;P&gt;                             AND   tabclass = 'INTTAB'.&lt;/P&gt;&lt;P&gt;    IF  dd02l-as4date GT gdate&lt;/P&gt;&lt;P&gt;    OR ( dd02l-as4date EQ gdate AND dd02l-as4time GT gtime ).&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING dd02l TO tabtab.&lt;/P&gt;&lt;P&gt;      APPEND tabtab.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT tabtab WHERE vorhanden = space.&lt;/P&gt;&lt;P&gt;    new_gn = xon.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&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;Neugenerierung von RFBIBL02 wenn notwendig.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF saprl &amp;lt;&amp;gt; sy-saprl OR sysid &amp;lt;&amp;gt; sy-sysid OR new_gn = xon.&lt;/P&gt;&lt;P&gt;    SUBMIT rfbiblg0 AND RETURN.&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;Report RFBIBL01 aufrufen&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; SUBMIT RFBIBL01 WITH  DS_NAME   =   DS_NAME&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                 WITH  FL_CHECK  =   FL_CHECK&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                 WITH  OS_XON    =   OS_XON&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                 WITH  CALLMODE  =   CALLMODE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                 WITH  MAX_COMM  =   MAX_COMM&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                 WITH  PA_XPROT  =   PA_XPROT&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                 WITH  ANZ_MODE  =   ANZ_MODE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                 WITH  UPDATE    =   UPDATE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                 WITH  XPOP      =   XPOP&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                 WITH  XLOG      =   XLOG&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                 WITH  XINF      =   XINF&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                 AND RETURN.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Aufbau des Selektionsbildes -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------" /&gt;&lt;P&gt;*selection-screen skip 1.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*parameters: DS_NAME     like RFPDO-RFBIFILE.  " Dateiname&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*selection-screen skip 1.&lt;/P&gt;&lt;P&gt;*selection-screen uline.&lt;/P&gt;&lt;P&gt;*selection-screen skip 1.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*parameters: FL_CHECK    like RFPDO-RFBICHCK,    " Datei nur prüfen&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           OS_XON      like RFPDO-RFBIOLDSTR.  " Alte Strukturen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*selection-screen skip 1.&lt;/P&gt;&lt;P&gt;*selection-screen uline.&lt;/P&gt;&lt;P&gt;*selection-screen skip 1.&lt;/P&gt;&lt;P&gt;*parameters: CALLMODE    like RFPDO-RFBIFUNCT obligatory,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           MAX_COMM(4) type N default '1000',  " Max Belege pro Commit&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           PA_XPROT(1) type C.        " erweitertes Protokoll&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;          ANZ_MODE:        A=alles N=nichts E=Error&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*parameters: ANZ_MODE    like RFPDO-ALLGAZMD    default 'N'.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;                                             NO-DISPLAY.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;          UPDATE:          S=Synchron A=Asynchron&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*parameters: UPDATE      like RFPDO-ALLGVBMD    default 'S'.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;                                             NO-DISPLAY.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;infomessages&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*selection-screen skip 1.&lt;/P&gt;&lt;P&gt;*selection-screen begin of block BL1.&lt;/P&gt;&lt;P&gt;*parameters: XPOP  type C radiobutton group RBL1,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           XLOG  type C radiobutton group RBL1,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           XINF  type C radiobutton group RBL1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*selection-screen end   of block BL1.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Hauptablauf&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;  CLEAR: xeof, xnewg,&lt;/P&gt;&lt;P&gt;         group_count, beleg_count,&lt;/P&gt;&lt;P&gt;         satz2_count, satz2_cnt_akt,&lt;/P&gt;&lt;P&gt;         error_run,&lt;/P&gt;&lt;P&gt;         wt_count,&lt;/P&gt;&lt;P&gt;         commit_count, count.&lt;/P&gt;&lt;P&gt;  max_commit = max_comm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- init log&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'FI_MESSAGE_INIT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Datei nur prüfen? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-------------------------------------------" /&gt;&lt;P&gt;  IF fl_check NE space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '018' ds_name space space space.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Call Transaction .. Using ..? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-------------------------------" /&gt;&lt;P&gt;*F XCALL NE SPACE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;XBDCC    = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FUNCTION = 'C'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IF FL_CHECK NE SPACE.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  MESSAGE I022.&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;  MESSAGE I021.&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;*LSE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FUNCTION = 'B'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*NDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE callmode.&lt;/P&gt;&lt;P&gt;    WHEN 'B'.&lt;/P&gt;&lt;P&gt;      function = 'B'.&lt;/P&gt;&lt;P&gt;    WHEN 'C'.&lt;/P&gt;&lt;P&gt;      function = 'C'.&lt;/P&gt;&lt;P&gt;      IF sy-batch NE 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    MESSAGE A899 WITH 'Bei Call Transaktion muß Report im Batch'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    WHEN 'D'.&lt;/P&gt;&lt;P&gt;      function = 'D'.&lt;/P&gt;&lt;P&gt;      IF sy-batch NE 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    MESSAGE A899 WITH 'Bei Fast Input muß Report im Batch laufen'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM get_restart_info.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*IF tfile_fill IS INITIAL.              " TFILE wurde noch nicht gefüllt&lt;/P&gt;&lt;P&gt;  IF tfsave_fill IS INITIAL.&lt;/P&gt;&lt;P&gt;    PERFORM read_dataset_into_table_tfile.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM loop_at_table_tfile.&lt;/P&gt;&lt;P&gt;  PERFORM error_processing.&lt;/P&gt;&lt;P&gt;  PERFORM call_bi_close_entry.&lt;/P&gt;&lt;P&gt;  COMMIT WORK.&lt;/P&gt;&lt;P&gt;  PERFORM log_print.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'DEQUEUE_ALL'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject.&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Interne Perform-Routinen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  AUGLV_PRUEFEN    "AUGLV_TESTING&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Ausgleichsvorgang aus T041A ermitteln;&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Balance process out of T041A determine;&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM auglv_pruefen.&lt;/P&gt;&lt;P&gt;  IF tfill_041a   = 0.&lt;/P&gt;&lt;P&gt;    SELECT * FROM t041a.&lt;/P&gt;&lt;P&gt;      xt041a-auglv = t041a-auglv.&lt;/P&gt;&lt;P&gt;      APPEND xt041a.&lt;/P&gt;&lt;P&gt;    ENDSELECT.&lt;/P&gt;&lt;P&gt;    DESCRIBE TABLE xt041a LINES tfill_041a.&lt;/P&gt;&lt;P&gt;    IF tfill_041a = 0.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '171'&lt;/P&gt;&lt;P&gt;                            beleg_count space space space.&lt;/P&gt;&lt;P&gt;      PERFORM log_abort USING c_msgid '013'.&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;  tabix = 0.&lt;/P&gt;&lt;P&gt;  IF bbkpf-auglv(1) = nodata&lt;/P&gt;&lt;P&gt;  OR bbkpf-auglv    = space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '162'&lt;/P&gt;&lt;P&gt;                          beleg_count space space space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  LOOP AT xt041a WHERE auglv = bbkpf-auglv.&lt;/P&gt;&lt;P&gt;    tabix = sy-tabix.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  IF tabix = 0.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '163'&lt;/P&gt;&lt;P&gt;                          beleg_count bbkpf-auglv space space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                         space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "auglv_pruefen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  AUGLV_SETZEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Ausgleichsvorgang aus T041A ermitteln;&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       entsprechenden Ausgleichsvorgang im Loop ankreuzen.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;*ORM AUGLV_SETZEN.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TABIX = 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IF BBKPF-AUGLV(1) = NODATA&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;OR BBKPF-AUGLV    = SPACE.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  MESSAGE I162 WITH BELEG_COUNT.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  MESSAGE I016.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  PERFORM DUMP_WA USING 'BBKPF'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  MESSAGE A013.&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;LOOP AT XT041A WHERE AUGLV = BBKPF-AUGLV.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  TABIX = SY-TABIX.&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;ENDLOOP.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IF TABIX = 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  MESSAGE I163 WITH BELEG_COUNT BBKPF-AUGLV.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  MESSAGE I016.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  PERFORM DUMP_WA USING 'BBKPF'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  MESSAGE A013.&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;*------- Ausgleichsvorgang im Loop ankreuzen -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IF FL_CHECK = SPACE.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  CLEAR FTA.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FTA-FNAM(12)   = 'RF05A-XPOS1('.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FTA-FNAM+12(2) = TABIX.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FTA-FNAM+14(1) = ')'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FTA-FVAL       = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  APPEND FTA.&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;*NDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       FORM BBKPF_ERWEITERUNG_PRUEFEN.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Falls der Kunde eine alte BBKPF-Struktur benutzt werden die&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       neuen Felder mit NODATA initialisiert.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM bbkpf_erweiterung_pruefen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF bbkpf-sende(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBKPF-Erweiterung um XBWAE zu 4.6C&lt;/P&gt;&lt;P&gt;    IF bbkpf-xbwae(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBKPF-Erweiterung um XPRFG zu 4.5B&lt;/P&gt;&lt;P&gt;      IF bbkpf-xprfg(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBKPF-Erweiterung zu 4.5B: AUGTX&lt;/P&gt;&lt;P&gt;        IF bbkpf-augtx(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBKPF-Erweiterung zu 4.5B: KURSF_M(10)&lt;/P&gt;&lt;P&gt;          IF bbkpf-kursf_m(1) NE nodata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- BBKPF-Erweiterung zu 4.0C: STGRD(2),&lt;/P&gt;&lt;P&gt;            IF bbkpf-stgrd(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBKPF-Erweiterung zu 4.0A: BRNCH(4), NUMPG(3)&lt;/P&gt;&lt;P&gt;              IF bbkpf-brnch(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBKPF-Erweiterung zu 3.0A: DOCID(10), BARCD(40),STODT&lt;/P&gt;&lt;P&gt;                IF bbkpf-docid(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBKPF-Erweiterung zu 2.2A: XMWST(1)&lt;/P&gt;&lt;P&gt;                  IF bbkpf-xmwst(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBKPF-Erweiterung zu 2.1A: VBUND --&lt;/P&gt;&lt;P&gt;                    bbkpf-vbund(1) = nodata.&lt;/P&gt;&lt;P&gt;                  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                  bbkpf-xmwst(1) = nodata.&lt;/P&gt;&lt;P&gt;                ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                bbkpf-docid(1) = nodata.&lt;/P&gt;&lt;P&gt;                bbkpf-barcd(1) = nodata.&lt;/P&gt;&lt;P&gt;                bbkpf-stodt(1) = nodata.&lt;/P&gt;&lt;P&gt;              ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;              bbkpf-brnch(1) = nodata.&lt;/P&gt;&lt;P&gt;              bbkpf-numpg(1) = nodata.&lt;/P&gt;&lt;P&gt;            ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            bbkpf-stgrd(1) = nodata.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          bbkpf-kursf_m(1) = nodata.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        bbkpf-augtx(1) = nodata.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      bbkpf-xprfg(1) = nodata.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    bbkpf-xbwae(1) = nodata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF xmess_bbkpf-sende NE 'X'.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '174'&lt;/P&gt;&lt;P&gt;                            beleg_count 'BBKPF' nodata space.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '023' 'BBKPF' space space space.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '024' space space space space.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '025' 'BBKPF' space space space.&lt;/P&gt;&lt;P&gt;      xmess_bbkpf-sende = 'X'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "bbkpf_erweiterung_pruefen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       FORM BBSEG_ERWEITERUNG_PRUEFEN.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Falls der Kunde eine alte BBSEG-Struktur benutzt, werden die&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       neuen Felder mit NODATA initialisiert.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM bbseg_erweiterung_pruefen.&lt;/P&gt;&lt;P&gt;  IF bbseg-sende(1) NE nodata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ueberpruefen, ob die in der BBSEG-Struktur vorhandenen Includes&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;aktiv sind. Wenn ja kann Erweiterungspruefung (beruecksichtigt nur&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Felder aus dem Standard) nicht durchgefuehrt werden.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'DD_EXIST_TABLE'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        tabname = 'SI_BBSEGV'&lt;/P&gt;&lt;P&gt;        status  = 'A'&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        subrc   = subrc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF subrc = 0.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '872'&lt;/P&gt;&lt;P&gt;                            'SI_BBSEGV' space space space.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung 4.7: IBAN, VALID_FROM&lt;/P&gt;&lt;P&gt;    IF bbseg-valid_from(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung 4.7: GRANT_NBR, FKBER_LONG, ERLKZ&lt;/P&gt;&lt;P&gt;      IF bbseg-erlkz(1) NE nodata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;BBSEG-Erweiterung CESSION_KZ&lt;/P&gt;&lt;P&gt;        IF bbseg-cession_kz(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung 4.7: DTAMS&lt;/P&gt;&lt;P&gt;          IF bbseg-dtams(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung: BKREF&lt;/P&gt;&lt;P&gt;            IF bbseg-bkref(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung: RECNNR, E_MIVE&lt;/P&gt;&lt;P&gt;              IF bbseg-recnnr(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung: ANRED (Anrede CpD)&lt;/P&gt;&lt;P&gt;                IF bbseg-anred  NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung: IDXSP&lt;/P&gt;&lt;P&gt;                  IF bbseg-idxsp(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung zu 4.6B: J_1KFREPRE, J_1KFTBUS, J_1KFTIND&lt;/P&gt;&lt;P&gt;                    IF bbseg-j_1kfrepre(1) NE nodata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung Immobilien zu 4.5B, Umzug von KI3,&lt;/P&gt;&lt;P&gt;*------- WENR, GENR, GRNR, MENR, MIVE, NKSL, EMPSL, SVWNR, SBERI&lt;/P&gt;&lt;P&gt;*------- andere Felder: KKBER, EMPFB, KURSR_M&lt;/P&gt;&lt;P&gt;                      IF bbseg-wenr(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung zu 4.0C: PYCUR,PYAMT,BUPLA,SECCO,LSTAR,EGDEB&lt;/P&gt;&lt;P&gt;                        IF bbseg-pycur(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung zu 4.0B: DTAWS&lt;/P&gt;&lt;P&gt;                          IF bbseg-dtaws(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung zu 4.0A: XNEGP,GRICD,GRIRG,GITYP,FITYP,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                  STCDT,STKZN,STCD3,STCD4,...,DTWS4&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                            IF bbseg-xnegp(1) NE nodata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung zu 3.1H: FIPEX&lt;/P&gt;&lt;P&gt;                              IF bbseg-fipex(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung zu 3.0F: RSTGR&lt;/P&gt;&lt;P&gt;                                IF bbseg-rstgr(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung zu 3.0E: VBUND,FKBER,DABRZ,XSTBA&lt;/P&gt;&lt;P&gt;                                  IF bbseg-vbund(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung zu 3.0D: WDATE, WGBKZ, XAKTZ, WNAME, WORT1,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                  WBZOG, WORT2, WBANK, WLZBP, DISKP,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                  DISKT, WINFW, WINHW, WEVWV, WSTAT,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                  WMWKZ, WSTKZ&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                                    IF bbseg-wdate(1) NE nodata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung zu 3.0A: XREF1(11), XREF2(12),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                  KBLPOS(3), KBLNR(10)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                                      IF bbseg-xref1(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung zu 2.2A: PPRCT(10), PROJK(24), UZAWE(2),&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                  TXJCD(10), FISTL(16), GEBER(10),&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                  DMBE2(16), DMBE3(16), PARGB(4),&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                                        IF bbseg-pprct(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung zu 2.1D: XEGDR, RECID&lt;/P&gt;&lt;P&gt;                                          IF bbseg-xegdr(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBSEG-Erweiterung zu 2.1C: NPLNR, VORNR&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                            bbseg-nplnr(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                            bbseg-vornr(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                          ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                          bbseg-xegdr(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                          bbseg-recid(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                        bbseg-pprct(1)  = nodata.&lt;/P&gt;&lt;P&gt;                                        bbseg-projk(1)  = nodata.&lt;/P&gt;&lt;P&gt;                                        bbseg-uzawe(1)  = nodata.&lt;/P&gt;&lt;P&gt;                                        bbseg-txjcd(1)  = nodata.&lt;/P&gt;&lt;P&gt;                                        bbseg-fistl(1)  = nodata.&lt;/P&gt;&lt;P&gt;                                        bbseg-geber(1)  = nodata.&lt;/P&gt;&lt;P&gt;                                        bbseg-dmbe2(1)  = nodata.&lt;/P&gt;&lt;P&gt;                                        bbseg-dmbe3(1)  = nodata.&lt;/P&gt;&lt;P&gt;                                        bbseg-pargb(1)  = nodata.&lt;/P&gt;&lt;P&gt;                                      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                      bbseg-xref1(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                      bbseg-xref2(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                      bbseg-kblpos(1)  = nodata.&lt;/P&gt;&lt;P&gt;                                      bbseg-kblnr(1)   = nodata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                    ENDIF.&lt;/P&gt;&lt;P&gt;                                    bbseg-wdate(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-wgbkz(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-xaktz(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-wname(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-wort1(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-wbzog(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-wort2(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-wbank(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-wlzbp(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-diskp(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-diskt(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-winfw(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-winhw(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-wevwv(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-wstat(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-wmwkz(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                    bbseg-wstkz(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                  bbseg-vbund(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                  bbseg-fkber(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                  bbseg-dabrz(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                  bbseg-xstba(1)   = nodata.&lt;/P&gt;&lt;P&gt;                                ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                bbseg-rstgr(1)   = nodata.&lt;/P&gt;&lt;P&gt;                              ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                              bbseg-fipex(1)   = nodata.&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;                            bbseg-xnegp(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-gricd(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-grirg(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-gityp(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-fityp(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-stcdt(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-stkzn(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-stcd3(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-stcd4(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-xref3(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-kidno(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-dtws1(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-dtws2(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-dtws3(1)   = nodata.&lt;/P&gt;&lt;P&gt;                            bbseg-dtws4(1)   = nodata.&lt;/P&gt;&lt;P&gt;                          ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                          bbseg-dtaws(1)   = nodata.&lt;/P&gt;&lt;P&gt;                        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                        bbseg-pycur(1)   = nodata.&lt;/P&gt;&lt;P&gt;                        bbseg-pyamt(1)   = nodata.&lt;/P&gt;&lt;P&gt;                        bbseg-bupla(1)   = nodata.&lt;/P&gt;&lt;P&gt;                        bbseg-secco(1)   = nodata.&lt;/P&gt;&lt;P&gt;                        bbseg-lstar(1)   = nodata.&lt;/P&gt;&lt;P&gt;                        bbseg-egdeb(1)   = nodata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                      ENDIF.&lt;/P&gt;&lt;P&gt;                      bbseg-wenr(1)   = nodata.&lt;/P&gt;&lt;P&gt;                      bbseg-genr(1)   = nodata.&lt;/P&gt;&lt;P&gt;                      bbseg-grnr(1)   = nodata.&lt;/P&gt;&lt;P&gt;                      bbseg-menr(1)   = nodata.&lt;/P&gt;&lt;P&gt;                      bbseg-mive(1)   = nodata.&lt;/P&gt;&lt;P&gt;                      bbseg-nksl(1)   = nodata.&lt;/P&gt;&lt;P&gt;                      bbseg-empsl(1)   = nodata.&lt;/P&gt;&lt;P&gt;                      bbseg-svwnr(1)   = nodata.&lt;/P&gt;&lt;P&gt;                      bbseg-sberi(1)   = nodata.&lt;/P&gt;&lt;P&gt;                      bbseg-kkber(1)   = nodata.&lt;/P&gt;&lt;P&gt;                      bbseg-empfb(1)   = nodata.&lt;/P&gt;&lt;P&gt;                      bbseg-kursr_m(1) = nodata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                    ENDIF.&lt;/P&gt;&lt;P&gt;                    bbseg-j_1kfrepre(1) = nodata.&lt;/P&gt;&lt;P&gt;                    bbseg-j_1kftbus(1)  = nodata.&lt;/P&gt;&lt;P&gt;                    bbseg-j_1kftind(1)  = nodata.&lt;/P&gt;&lt;P&gt;                  ENDIF.&lt;/P&gt;&lt;P&gt;                  bbseg-idxsp(1) = nodata.&lt;/P&gt;&lt;P&gt;                ENDIF.&lt;/P&gt;&lt;P&gt;                bbseg-anred(1) = nodata.&lt;/P&gt;&lt;P&gt;              ENDIF.&lt;/P&gt;&lt;P&gt;              bbseg-recnnr(1) = nodata.&lt;/P&gt;&lt;P&gt;              bbseg-e_mive(1) = nodata.&lt;/P&gt;&lt;P&gt;            ENDIF.&lt;/P&gt;&lt;P&gt;            bbseg-bkref(1) = nodata.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;          bbseg-dtams(1) = nodata.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        bbseg-cession_kz(1) = nodata.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      bbseg-grant_nbr(1) = nodata.&lt;/P&gt;&lt;P&gt;      bbseg-fkber_long(1) = nodata.&lt;/P&gt;&lt;P&gt;      bbseg-erlkz(1) = nodata.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    bbseg-iban(1) = nodata.&lt;/P&gt;&lt;P&gt;    bbseg-valid_from(1) = nodata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF xmess_bbseg-sende NE 'X'.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '174'&lt;/P&gt;&lt;P&gt;                            beleg_count 'BBSEG' nodata space.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '023'&lt;/P&gt;&lt;P&gt;                            'BBSEG' space space space.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '024'&lt;/P&gt;&lt;P&gt;                            space space space space.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '025'&lt;/P&gt;&lt;P&gt;                            'BBSEG' space space space.&lt;/P&gt;&lt;P&gt;      xmess_bbseg-sende = 'X'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "bbseg_erweiterung_pruefen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       FORM BBTAX_ERWEITERUNG_PRUEFEN.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Falls der Kunde eine alte BBTAX-Struktur benutzt werden die&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       neuen Felder mit NODATA initialisiert.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM bbtax_erweiterung_pruefen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF bbtax-sende(1) NE nodata.&lt;/P&gt;&lt;P&gt;*------- BBTAX-Erweiterung zu 4.0A: H2STE(16), H3STE(16)&lt;/P&gt;&lt;P&gt;    bbtax-h2ste(1) = nodata.&lt;/P&gt;&lt;P&gt;    bbtax-h3ste(1) = nodata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF xmess_bbtax-sende NE 'X'.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '174'&lt;/P&gt;&lt;P&gt;                            beleg_count 'BBTAX' nodata space.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '023'&lt;/P&gt;&lt;P&gt;                            'BBTAX' space space space.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '024'&lt;/P&gt;&lt;P&gt;                            space space space space.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '025'&lt;/P&gt;&lt;P&gt;                            'BBTAX' space space space.&lt;/P&gt;&lt;P&gt;      xmess_bbtax-sende = 'X'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "bbtax_erweiterung_pruefen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  BELEG_ABSCHLIESSEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM beleg_abschliessen.&lt;/P&gt;&lt;P&gt;  CHECK fl_check = space.&lt;/P&gt;&lt;P&gt;  IF bbkpf-tcode = 'FB01'&lt;/P&gt;&lt;P&gt;  OR bbkpf-tcode = 'FBB1'                                   "P30K125019&lt;/P&gt;&lt;P&gt;  OR bbkpf-tcode = 'FBS1'&lt;/P&gt;&lt;P&gt;  OR bbkpf-tcode = 'FBV1'.             "4.0&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'POSTING_INTERFACE_DOCUMENT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        i_tcode  = bbkpf-tcode&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        e_subrc  = subrc&lt;/P&gt;&lt;P&gt;        e_msgid  = msgid&lt;/P&gt;&lt;P&gt;        e_msgty  = msgty&lt;/P&gt;&lt;P&gt;        e_msgno  = msgno&lt;/P&gt;&lt;P&gt;        e_msgv1  = msgv1&lt;/P&gt;&lt;P&gt;        e_msgv2  = msgv2&lt;/P&gt;&lt;P&gt;        e_msgv3  = msgv3&lt;/P&gt;&lt;P&gt;        e_msgv4  = msgv4&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        t_ftpost = ftpost&lt;/P&gt;&lt;P&gt;        t_fttax  = fttax&lt;/P&gt;&lt;P&gt;        t_blntab = xblntab&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        OTHERS   = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSEIF bbkpf-tcode = 'FB05'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Falls nur BSELK aber kein BSELP übergeben wurde, so wurden die Daten&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;aus der int. Tabelle SAVE_FTCLEAR noch nicht in die Tabelle FTCLEAR&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;uebertragen.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF NOT xftclear IS INITIAL.&lt;/P&gt;&lt;P&gt;      ftclear = save_ftclear.&lt;/P&gt;&lt;P&gt;      APPEND ftclear.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'POSTING_INTERFACE_CLEARING'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        i_auglv   = bbkpf-auglv&lt;/P&gt;&lt;P&gt;        i_tcode   = bbkpf-tcode&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        e_subrc   = subrc&lt;/P&gt;&lt;P&gt;        e_msgid   = msgid&lt;/P&gt;&lt;P&gt;        e_msgty   = msgty&lt;/P&gt;&lt;P&gt;        e_msgno   = msgno&lt;/P&gt;&lt;P&gt;        e_msgv1   = msgv1&lt;/P&gt;&lt;P&gt;        e_msgv2   = msgv2&lt;/P&gt;&lt;P&gt;        e_msgv3   = msgv3&lt;/P&gt;&lt;P&gt;        e_msgv4   = msgv4&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        t_ftpost  = ftpost&lt;/P&gt;&lt;P&gt;        t_ftclear = ftclear&lt;/P&gt;&lt;P&gt;        t_fttax   = fttax&lt;/P&gt;&lt;P&gt;        t_blntab  = xblntab&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        OTHERS    = 1.&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;&lt;/P&gt;&lt;P&gt;  IF function = 'B'.&lt;/P&gt;&lt;P&gt;*------- Batch Input  -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&lt;P&gt;    IF NOT sy-subrc IS INITIAL.&lt;/P&gt;&lt;P&gt;      IF NOT error_run IS INITIAL.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING sy-msgid 'I' sy-msgno&lt;/P&gt;&lt;P&gt;                              sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '622'&lt;/P&gt;&lt;P&gt;                              beleg_count group_count space space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '014'&lt;/P&gt;&lt;P&gt;                              'BBKPF' space space space.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING sy-msgid 'I' sy-msgno&lt;/P&gt;&lt;P&gt;                              sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '622'&lt;/P&gt;&lt;P&gt;                              beleg_count group_count space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;        PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    IF NOT sy-subrc IS INITIAL.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING sy-msgid 'I' sy-msgno&lt;/P&gt;&lt;P&gt;                            sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '622'&lt;/P&gt;&lt;P&gt;                            beleg_count group_count space space.&lt;/P&gt;&lt;P&gt;      PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;      PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;*------- Commit Work? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&lt;P&gt;    commit_count = commit_count + 1.&lt;/P&gt;&lt;P&gt;    IF commit_count = max_commit.&lt;/P&gt;&lt;P&gt;      COMMIT WORK.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'DEQUEUE_ALL'.&lt;/P&gt;&lt;P&gt;      CLEAR commit_count.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;*------- Call Transaction -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------" /&gt;&lt;P&gt;    IF subrc IS INITIAL AND sy-subrc IS INITIAL.&lt;/P&gt;&lt;P&gt;      LOOP AT xblntab.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING 'F5' 'I' '312'&lt;/P&gt;&lt;P&gt;                              xblntab-belnr xblntab-bukrs space space.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      IF NOT subrc IS INITIAL.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING msgid 'I' msgno&lt;/P&gt;&lt;P&gt;                              msgv1 msgv2 msgv3 msgv4.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING sy-msgid 'I' sy-msgno&lt;/P&gt;&lt;P&gt;                              sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM export_error_data.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    commit_count = commit_count + 1.&lt;/P&gt;&lt;P&gt;*------- bei Call Trans Commit Work nach jedem Beleg -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------" /&gt;&lt;P&gt;    PERFORM call_bi_end_akt_number.&lt;/P&gt;&lt;P&gt;    COMMIT WORK.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'DEQUEUE_ALL'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH: ftpost, ftclear, fttax, xblntab.&lt;/P&gt;&lt;P&gt;  CLEAR:   ftpost, ftclear, fttax, xblntab.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "beleg_abschliessen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  BELEG_ABSCHLIESSEN_OLD.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM beleg_abschliessen_old.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CHECK FL_CHECK = SPACE.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*------- Batch-Input erstellen -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IF XCALL = SPACE.&lt;/P&gt;&lt;/LI&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 TCODE     = BBKPF-TCODE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    TABLES    DYNPROTAB = FT.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*------- zunächst 'Call Transaction', nur bei Fehlern Batch-Input -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----" /&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;  CALL TRANSACTION BBKPF-TCODE USING  FT&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                               MODE   ANZ_MODE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                               UPDATE UPDATE.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  SUBRC = SY-SUBRC.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  PERFORM MESSAGE_CALL_TRANSACTION.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IF SUBRC NE 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    IF GROUP_OPEN NE 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      PERFORM MAPPE_OEFFNEN.&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;    CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      EXPORTING TCODE     = BBKPF-TCODE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      TABLES    DYNPROTAB = FT.&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;ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*------- Commit Work? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;COMMIT_COUNT = COMMIT_COUNT + 1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IF COMMIT_COUNT = MAX_COMMIT.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  COMMIT WORK.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  CLEAR COMMIT_COUNT.&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.                               "beleg_abschliessen_old&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  DATENSATZ_PRUEFEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Prüfung des Datensatzes (Typ 2):&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Tabellenname angegeben und gültig ?&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Tabellen in richtiger Reihenfolge übergeben ?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM datensatz_pruefen.&lt;/P&gt;&lt;P&gt;  satz2_count = satz2_count + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- wurde ein Kopfsatz übergeben ? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------" /&gt;&lt;P&gt;  IF bbkpf_ok IS INITIAL.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '151'&lt;/P&gt;&lt;P&gt;                          group_count space space space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '015'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BGR00'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Kennzeichen für Datensatz (Typ 2) gesetzt ? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------" /&gt;&lt;P&gt;  IF wa(1) NE '2'.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '152'&lt;/P&gt;&lt;P&gt;                          beleg_count satz2_count wa(1) space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Daten werden wegen der Feldlänge-Erweiterung des Feldes TBNAM&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;von 10B (&amp;lt;4.0) auf 30B verschoben&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF ( os_xon = xon ) AND ( error_run NE 'X' ).&lt;/P&gt;&lt;P&gt;    SHIFT wa BY 20 PLACES RIGHT.&lt;/P&gt;&lt;P&gt;    wa(31) = wa+20(11).&lt;/P&gt;&lt;P&gt;    IF wa+2(29) = 'SELP'.&lt;/P&gt;&lt;P&gt;      PERFORM bselp_field_lenght_convert CHANGING wa.&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;*------- Tabellenname angegeben ? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------" /&gt;&lt;P&gt;  IF wa+1(1)  = nodata&lt;/P&gt;&lt;P&gt;  OR wa+1(30) = space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '153'&lt;/P&gt;&lt;P&gt;                          beleg_count satz2_count space space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- erlaubte Tabellen? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------" /&gt;&lt;P&gt;  IF  wa+1(30) NE 'BBSEG'&lt;/P&gt;&lt;P&gt;  AND wa+1(30) NE 'BWITH'&lt;/P&gt;&lt;P&gt;  AND wa+1(30) NE 'BBTAX'&lt;/P&gt;&lt;P&gt;  AND wa+1(30) NE 'BSELK'&lt;/P&gt;&lt;P&gt;  AND wa+1(30) NE 'BSELP'&lt;/P&gt;&lt;P&gt;  AND wa+1(13) NE 'ZBSEG'&lt;/P&gt;&lt;P&gt;  AND wa+1(30) NE 'ZSELP'.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '164'&lt;/P&gt;&lt;P&gt;                          beleg_count satz2_count wa+1(30) space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  IF (   bbkpf-tcode EQ 'FB01'&lt;/P&gt;&lt;P&gt;      OR bbkpf-tcode EQ 'FBB1'                              "P30K125019&lt;/P&gt;&lt;P&gt;      OR bbkpf-tcode EQ 'FBS1'&lt;/P&gt;&lt;P&gt;      OR bbkpf-tcode EQ 'FBV1' )       "4.0&lt;/P&gt;&lt;P&gt;  AND NOT (    wa+1(30)    EQ 'BBSEG'&lt;/P&gt;&lt;P&gt;            OR wa+1(30)    EQ 'ZBSEG'&lt;/P&gt;&lt;P&gt;            OR wa+1(30)    EQ 'BWITH'&lt;/P&gt;&lt;P&gt;            OR wa+1(30)    EQ 'BBTAX' ).&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '165'&lt;/P&gt;&lt;P&gt;                       beleg_count satz2_count wa+1(30) bbkpf-tcode(20).&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;    IF wa+1(30) = 'BSELK'.&lt;/P&gt;&lt;P&gt;      bselk = i_bselk.&lt;/P&gt;&lt;P&gt;      bselk = wa.                                           "#EC ENHOK&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '017'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;      PERFORM dump_wa USING 'BSELK'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    IF wa+1(30) = 'BSELP'.&lt;/P&gt;&lt;P&gt;      bselp = i_bselp.&lt;/P&gt;&lt;P&gt;      bselp = wa.                                           "#EC ENHOK&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '017'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;      PERFORM dump_wa USING 'BSELP'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*------ Quellensteuer&lt;/P&gt;&lt;P&gt;  IF ( bbkpf-tcode NE 'FB01' AND&lt;/P&gt;&lt;P&gt;       bbkpf-tcode NE 'FBV1' )&lt;/P&gt;&lt;P&gt;       AND wa+1(30) EQ 'BWITH'.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '165'&lt;/P&gt;&lt;P&gt;                       beleg_count satz2_count wa+1(30) bbkpf-tcode(20).&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;    bwith = i_bwith.&lt;/P&gt;&lt;P&gt;    bwith = wa.                                             "#EC ENHOK&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '017'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BWITH'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*------ Quellensteuer: Direct Input erst zu 4.0C&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; if wa+1(10) eq 'BWITH' and&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    function = 'D'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   message i199 with beleg_count satz2_count wa+1(10).&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   message i016.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform dump_wa using 'BBKPF'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   bwith = i_bwith.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   bwith = wa.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   message i017.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   perform dump_wa using 'BWITH'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   message a013.&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;*------- Tabellen in erlaubter Reihenfolge (bei FB05)? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------" /&gt;&lt;P&gt;  IF bbkpf-tcode = 'FB05'.&lt;/P&gt;&lt;P&gt;    IF wa+1(30) EQ 'BBSEG'.&lt;/P&gt;&lt;P&gt;      IF bselk NE i_bselk&lt;/P&gt;&lt;P&gt;      OR bselp NE i_bselp.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '166'&lt;/P&gt;&lt;P&gt;                              beleg_count space space space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;        bbseg = i_bbseg.&lt;/P&gt;&lt;P&gt;        bbseg = wa.                                         "#EC ENHOK&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '017'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBSEG'.&lt;/P&gt;&lt;P&gt;        PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    IF  wa+1(30)   EQ 'BSELP'&lt;/P&gt;&lt;P&gt;    OR  wa+1(30)   EQ 'ZSELP'.&lt;/P&gt;&lt;P&gt;      IF bselk      EQ i_bselk.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '167'&lt;/P&gt;&lt;P&gt;                              beleg_count space space space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '017'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        bselp = i_bselp.&lt;/P&gt;&lt;P&gt;        bselp = wa.                                         "#EC ENHOK&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BSELP'.&lt;/P&gt;&lt;P&gt;        PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "datensatz_pruefen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  DATENSATZ_TRANSPORTIEREN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Datensatz (Typ 2) verarbeiten&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Falls der Kunde eigene Strukturen verwendet, sind diese&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       bereits in die B-Strukturen übertragen worden&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM datensatz_transportieren.&lt;/P&gt;&lt;P&gt;  CASE wa+2(09).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       BBSEG Belegsegment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;    WHEN 'BSEG'.&lt;/P&gt;&lt;P&gt;      save_tbnam = 'BBSEG'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM bbseg_erweiterung_pruefen.        "test bbseg_expansion_&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Prüfen und Übertragen der Kontonummer (DUMMYX/NEWKO) -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------" /&gt;&lt;P&gt;      IF  bbseg-dummyx(1) NE nodata                         "Note 559106&lt;/P&gt;&lt;P&gt;      AND bbseg-dummyx    NE space                          "Note 559106&lt;/P&gt;&lt;P&gt;      AND bbseg-newko(1)  NE nodata&lt;/P&gt;&lt;P&gt;      AND bbseg-newko     NE space&lt;/P&gt;&lt;P&gt;      AND bbseg-dummyx    NE bbseg-newko.                   "Note 559106&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '175'&lt;/P&gt;&lt;P&gt;                beleg_count satz2_count bbseg-dummyx space. "Note 559106&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '176'&lt;/P&gt;&lt;P&gt;                              bbseg-newko space space space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '177'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '017'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBSEG'.&lt;/P&gt;&lt;P&gt;        PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      IF  bbseg-dummyx(1) NE nodata                         "Note 559106&lt;/P&gt;&lt;P&gt;      AND bbseg-dummyx    NE space                          "Note 559106&lt;/P&gt;&lt;P&gt;      AND bbseg-newko(1)  NE nodata&lt;/P&gt;&lt;P&gt;      AND bbseg-newko     NE space&lt;/P&gt;&lt;P&gt;      AND bbseg-dummyx    EQ bbseg-newko.                   "Note 559106&lt;/P&gt;&lt;P&gt;        CLEAR bbseg-dummyx.                                 "Note 559106&lt;/P&gt;&lt;P&gt;        bbseg-dummyx = nodata.                              "Note 559106&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      IF  bbseg-dummyx(1) NE nodata                         "Note 559106&lt;/P&gt;&lt;P&gt;      AND bbseg-dummyx    NE space.                         "Note 559106&lt;/P&gt;&lt;P&gt;        bbseg-newko = bbseg-dummyx.                         "Note 559106&lt;/P&gt;&lt;P&gt;        CLEAR bbseg-dummyx.                                 "Note 559106&lt;/P&gt;&lt;P&gt;        bbseg-dummyx = nodata.                              "Note 559106&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF bbseg-newko    EQ space&lt;/P&gt;&lt;P&gt;      OR bbseg-newko    EQ nodata.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '145'&lt;/P&gt;&lt;P&gt;                              beleg_count satz2_count space space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '017'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBSEG'.&lt;/P&gt;&lt;P&gt;        PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Entweder Finanzposition FIPOS oder FIPEX füllen.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Beim gefülltem FIPOS wird das FIPEX ignoriert.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF  bbseg-fipos(1) NE nodata&lt;/P&gt;&lt;P&gt;      AND bbseg-fipos    NE space&lt;/P&gt;&lt;P&gt;      AND bbseg-fipex(1) NE nodata&lt;/P&gt;&lt;P&gt;      AND bbseg-fipex    NE space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '060'&lt;/P&gt;&lt;P&gt;                              beleg_count satz2_count 'FIPOS' 'FIPEX'.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '061'&lt;/P&gt;&lt;P&gt;                              beleg_count satz2_count 'FIPEX' space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '899'&lt;/P&gt;&lt;P&gt;                              'BBSEG-FIPOS' '=' bbseg-fipos space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '899'&lt;/P&gt;&lt;P&gt;                              'BBSEG-FIPEX' '=' bbseg-fipex space.&lt;/P&gt;&lt;P&gt;        CLEAR bbseg-fipex.&lt;/P&gt;&lt;P&gt;        bbseg-fipex = nodata.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Inhalt von FKBER in FKBER_LONG schreiben.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Falls beide Felder gefüllt sind, wird FKBER ignoriert&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF bbseg-fkber(1) NE nodata&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      AND bbseg-fkber   NE space.&lt;/P&gt;&lt;P&gt;        IF bbseg-fkber_long(1) NE nodata&lt;/P&gt;&lt;P&gt;        AND bbseg-fkber_long NE space.&lt;/P&gt;&lt;P&gt;          PERFORM log_msg USING c_msgid 'I' '060'&lt;/P&gt;&lt;P&gt;                          beleg_count satz2_count 'FKBER' 'FKBER_LONG'.&lt;/P&gt;&lt;P&gt;          PERFORM log_msg USING c_msgid 'I' '061'&lt;/P&gt;&lt;P&gt;                          beleg_count satz2_count 'FKBER' space.&lt;/P&gt;&lt;P&gt;          PERFORM log_msg USING c_msgid 'I' '899'&lt;/P&gt;&lt;P&gt;                          'BBSEG-FKBER' '=' bbseg-fkber space.&lt;/P&gt;&lt;P&gt;          PERFORM log_msg USING c_msgid 'I' '899'&lt;/P&gt;&lt;P&gt;                          'BBSEG-FKBER_LONG' '=' bbseg-fkber_long space.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          bbseg-fkber_long = bbseg-fkber.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        CLEAR bbseg-fkber.&lt;/P&gt;&lt;P&gt;        bbseg-fkber(1) = nodata.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF  bbseg-kursr(1)   NE nodata&lt;/P&gt;&lt;P&gt;      AND bbseg-kursr      NE space&lt;/P&gt;&lt;P&gt;      AND bbseg-kursr_m(1) NE nodata&lt;/P&gt;&lt;P&gt;      AND bbseg-kursr_m    NE space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '060'&lt;/P&gt;&lt;P&gt;                              beleg_count satz2_count 'KURSR' 'KURSR_M'.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '017'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBSEG'.&lt;/P&gt;&lt;P&gt;        PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------ IBAN Daten nur uebertragen, wenn Bankdaten vorhanden&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF bbseg-iban NE nodata OR&lt;/P&gt;&lt;P&gt;         bbseg-valid_from    NE nodata.&lt;/P&gt;&lt;P&gt;        IF bbseg-iban       EQ nodata OR&lt;/P&gt;&lt;P&gt;           bbseg-valid_from EQ nodata OR&lt;/P&gt;&lt;P&gt;           bbseg-bankn      EQ nodata OR&lt;/P&gt;&lt;P&gt;           bbseg-bankl      EQ nodata OR&lt;/P&gt;&lt;P&gt;           bbseg-banks      EQ nodata.&lt;/P&gt;&lt;P&gt;          bbseg-iban  = nodata.&lt;/P&gt;&lt;P&gt;          bbseg-valid_from = nodata.&lt;/P&gt;&lt;P&gt;          PERFORM log_msg USING c_msgid 'I' '061'&lt;/P&gt;&lt;P&gt;           beleg_count satz2_count 'IBAN' space.&lt;/P&gt;&lt;P&gt;          IF bbseg-bankn EQ nodata OR&lt;/P&gt;&lt;P&gt;             bbseg-banks EQ nodata OR&lt;/P&gt;&lt;P&gt;             bbseg-bankl EQ nodata.&lt;/P&gt;&lt;P&gt;            PERFORM log_msg USING 'F8' 'I' '025'&lt;/P&gt;&lt;P&gt;               space space space space.&lt;/P&gt;&lt;P&gt;          ENDIF.&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;*------ Kontoart ermitteln&lt;/P&gt;&lt;P&gt;      PERFORM kontoart_ermitteln.&lt;/P&gt;&lt;P&gt;      bbseg_count = bbseg_count + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------ Quellensteuer: Zähler inkrementieren (Debitor/Kreditor-Zeilen)&lt;/P&gt;&lt;P&gt;      IF xtbsl-koart = 'D' OR&lt;/P&gt;&lt;P&gt;         xtbsl-koart = 'K'.&lt;/P&gt;&lt;P&gt;        wt_count = wt_count + 1.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM fill_ftpost_with_bbseg_data USING bbseg_count.&lt;/P&gt;&lt;P&gt;      PERFORM fill_fttax_from_bbseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       BWITH Quellensteuer&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;    WHEN 'WITH'.&lt;/P&gt;&lt;P&gt;      IF bwith-witht    EQ space&lt;/P&gt;&lt;P&gt;      OR bwith-witht    EQ nodata.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '145'&lt;/P&gt;&lt;P&gt;                              beleg_count satz2_count space space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '017'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BWITH'.&lt;/P&gt;&lt;P&gt;        PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM fill_ftpost_with_bwith_data USING bbseg_count.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       BBSEG Belegsteuern&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;    WHEN 'BTAX'.&lt;/P&gt;&lt;P&gt;      IF bbseg_tax = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Abbruch: Steuern entweder neu oder alt übergeben&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '178'&lt;/P&gt;&lt;P&gt;                              beleg_count satz2_count space space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '179'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '017'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBSEG'.&lt;/P&gt;&lt;P&gt;        PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      IF bbkpf-xmwst = 'X'.&lt;/P&gt;&lt;P&gt;*------ Abbruch: Steuern entweder rechnen oder BBTAX übergeben -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----" /&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '149'&lt;/P&gt;&lt;P&gt;                              beleg_count satz2_count space space.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '017'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM dump_wa USING 'BBTAX'.&lt;/P&gt;&lt;P&gt;        PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM fill_fttax_with_bbtax_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       BSELK Selektionskopf (FB05)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;    WHEN 'SELK'.&lt;/P&gt;&lt;P&gt;      CLEAR xftclear.&lt;/P&gt;&lt;P&gt;      PERFORM move_bselk_to_save_ftclear.&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt; Selektion mit Avis , Nach Alter sortieren -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-------------" /&gt;&lt;P&gt;      IF bselk-avsid(1) NE nodata.     "Avis&lt;/P&gt;&lt;P&gt;        ftclear = save_ftclear.&lt;/P&gt;&lt;P&gt;        APPEND ftclear.&lt;/P&gt;&lt;P&gt;        CLEAR save_tbnam.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        xftclear = 'X'.&lt;/P&gt;&lt;P&gt;        save_tbnam = 'BSELK'.&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;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       BSELP Selektionspositionen (FB05)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;    WHEN 'SELP'.&lt;/P&gt;&lt;P&gt;      IF save_tbnam NE space.&lt;/P&gt;&lt;P&gt;        CASE save_tbnam.&lt;/P&gt;&lt;P&gt;          WHEN 'BSELP'.&lt;/P&gt;&lt;P&gt;          WHEN 'BSELK'.&lt;/P&gt;&lt;P&gt;          WHEN OTHERS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          vor BSELP muß BSELP oder BSELK kommen!&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            PERFORM log_msg USING c_msgid 'I' '146'&lt;/P&gt;&lt;P&gt;                                  beleg_count wa+1(10) space space.&lt;/P&gt;&lt;P&gt;            PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;            PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;            PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;        ENDCASE.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      save_tbnam = 'BSELP'.&lt;/P&gt;&lt;P&gt;      PERFORM fill_ftclear_with_bselp_data.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "datensatz_transportieren&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  DUMP_WA&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Im Abbruchfall soll der fehlerhafte Satz ausgedumpt werden.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM dump_wa USING table.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'NAMETAB_GET'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      langu          = sy-langu&lt;/P&gt;&lt;P&gt;      tabname        = table&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      nametab        = nametab&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      no_texts_found = 1.&lt;/P&gt;&lt;P&gt;  LOOP AT nametab.&lt;/P&gt;&lt;P&gt;    CLEAR char.&lt;/P&gt;&lt;P&gt;    char(5)    = nametab-tabname.&lt;/P&gt;&lt;P&gt;    char+5(1)  = '-'.&lt;/P&gt;&lt;P&gt;    char+6(10) = nametab-fieldname.&lt;/P&gt;&lt;P&gt;    ASSIGN (char) TO .&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '014'&lt;/P&gt;&lt;P&gt;                           char wert space space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "dump_wa&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  KOPFSATZ_LESEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Kopfdaten in Workarea lesen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM kopfsatz_lesen.&lt;/P&gt;&lt;P&gt;  CLEAR wa.&lt;/P&gt;&lt;P&gt;  READ DATASET ds_name INTO wa.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- End of File erreicht ? --&amp;gt; Exit -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------" /&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    xeof = 'X'.&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 wa(1) NE '1'.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '151'&lt;/P&gt;&lt;P&gt;                          group_count space space space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '015'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BGR00'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "kopfsatz_lesen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  KOPFSATZ_BEARBEITEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Transportieren und bearbeiten&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       der eingelesenen Belegkopfdaten.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Globale BI-Feldtabelle initialisieren .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Schalter und Strukturen initialisieren.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM kopfsatz_bearbeiten.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;REFRESH FT.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  bbkpf =  i_bbkpf.&lt;/P&gt;&lt;P&gt;  bbseg =  i_bbseg.&lt;/P&gt;&lt;P&gt;  bbtax =  i_bbtax.&lt;/P&gt;&lt;P&gt;  bselk =  i_bselk.&lt;/P&gt;&lt;P&gt;  bselp =  i_bselp.&lt;/P&gt;&lt;P&gt;  bwith =  i_bwith.&lt;/P&gt;&lt;P&gt;  CLEAR: satz2_count, satz2_cnt_akt, wt_count, bbseg_count.&lt;/P&gt;&lt;P&gt;  CLEAR: save_tbnam, fcode, bbseg_tax.&lt;/P&gt;&lt;P&gt;  REFRESH: ftpost, ftclear, fttax.&lt;/P&gt;&lt;P&gt;  REFRESH: t_bbkpf, t_bbseg, t_bbtax, t_bwith.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Daten werden wegen der Feldlänge-Erweiterung des Feldes TCODE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;von 4B (&amp;lt;4.0) auf 20B verschoben&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF ( os_xon = xon ) AND ( error_run NE 'X' ).&lt;/P&gt;&lt;P&gt;    SHIFT wa BY 16 PLACES RIGHT.&lt;/P&gt;&lt;P&gt;    wa(21) = wa+16(5).&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  bbkpf = wa.                                               "#EC ENHOK&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM bbkpf_erweiterung_pruefen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  beleg_count = beleg_count + 1.&lt;/P&gt;&lt;P&gt;  "record_count&lt;/P&gt;&lt;P&gt;  count = count + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------ Place to set a soft break-point -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------" /&gt;&lt;P&gt;  IF beleg_count = beleg_break.&lt;/P&gt;&lt;P&gt;    beleg_break = beleg_count.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Tcode übergeben / Tcode erlaubt ? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------" /&gt;&lt;P&gt;  IF bbkpf-tcode(1) EQ nodata&lt;/P&gt;&lt;P&gt;  OR bbkpf-tcode    EQ space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '161'&lt;/P&gt;&lt;P&gt;                          beleg_count space space space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  IF  bbkpf-tcode NE 'FB01'&lt;/P&gt;&lt;P&gt;  AND bbkpf-tcode NE 'FBS1'&lt;/P&gt;&lt;P&gt;  AND bbkpf-tcode NE 'FBB1'                                 "P30K125019&lt;/P&gt;&lt;P&gt;  AND bbkpf-tcode NE 'FB05'&lt;/P&gt;&lt;P&gt;  AND bbkpf-tcode NE 'FBV1'.           "4.0&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '154'&lt;/P&gt;&lt;P&gt;                          beleg_count bbkpf-tcode space space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- FB05: --&amp;gt; Ausgleichsvorgang auf Gültigkeit überpruefne -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------" /&gt;&lt;P&gt;  IF  bbkpf-tcode  = 'FB05'.&lt;/P&gt;&lt;P&gt;    PERFORM auglv_pruefen.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- BBKPF-Bukrs übergeben / merken -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------" /&gt;&lt;P&gt;  IF bbkpf-bukrs(1) EQ nodata&lt;/P&gt;&lt;P&gt;  OR bbkpf-bukrs    EQ space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '160'&lt;/P&gt;&lt;P&gt;                          beleg_count space space space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  bukrs = bbkpf-bukrs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF  bbkpf-kursf(1)   NE nodata&lt;/P&gt;&lt;P&gt;  AND bbkpf-kursf      NE space&lt;/P&gt;&lt;P&gt;  AND bbkpf-kursf_m(1) NE nodata&lt;/P&gt;&lt;P&gt;  AND bbkpf-kursf_m    NE space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '210'&lt;/P&gt;&lt;P&gt;                          beleg_count 'KURSF' 'KURSF_M' space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM fill_ftpost_with_bbkpf_data.&lt;/P&gt;&lt;P&gt;  bbkpf_ok = 'X'.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "kopfsatz_bearbeiten&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  MAPPE_OEFFNEN " open portfolio&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Öffnen der Buchungsschnittstelle&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM mappe_oeffnen.                              " open portfolio&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK function NE 'D'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt; Interne Buchungsschnittstelle initialisieren&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'POSTING_INTERFACE_START'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      i_function = function&lt;/P&gt;&lt;P&gt;      i_client   = bgr00-mandt&lt;/P&gt;&lt;P&gt;      i_group    = bgr00-group&lt;/P&gt;&lt;P&gt;      i_xbdcc    = xbdcc&lt;/P&gt;&lt;P&gt;      i_holddate = bgr00-start&lt;/P&gt;&lt;P&gt;      i_keep     = bgr00-xkeep&lt;/P&gt;&lt;P&gt;      i_mode     = anz_mode&lt;/P&gt;&lt;P&gt;      i_update   = update&lt;/P&gt;&lt;P&gt;      i_user     = bgr00-usnam.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF function = 'B'.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '007'&lt;/P&gt;&lt;P&gt;                          group_count bgr00-group space space.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  group_open = 'X'.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "mappe_oeffnen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  MAPPE_PRUEFEN_OEFFNEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Prüfen/Bearbeiten der Daten im Mappenvorsatz.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Sonderzeichen für NODATA bestimmen&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Öffnen der BDC-Queue für Datentransfer&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Initialstrukturen mit NODATA erzeugen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM mappe_pruefen_oeffnen.&lt;/P&gt;&lt;P&gt;  CLEAR bgr00.&lt;/P&gt;&lt;P&gt;  bgr00 = wa.                                               "#EC ENHOK&lt;/P&gt;&lt;P&gt;  group_count = group_count + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Mappenname gesetzt ? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------" /&gt;&lt;P&gt;  IF bgr00-group = space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '011'&lt;/P&gt;&lt;P&gt;                          group_count space space space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '015'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BGR00'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Mandant gesetzt / richtig gesetzt? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------" /&gt;&lt;P&gt;  IF bgr00-mandt IS INITIAL.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '005'&lt;/P&gt;&lt;P&gt;                          group_count space space space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '015'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BGR00'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  IF bgr00-mandt NE sy-mandt.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '006'&lt;/P&gt;&lt;P&gt;                          group_count bgr00-mandt sy-mandt space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '015'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BGR00'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Username gesetzt ? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------" /&gt;&lt;P&gt;  IF bgr00-usnam = space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '009'&lt;/P&gt;&lt;P&gt;                          group_count space space space.&lt;/P&gt;&lt;P&gt;    PERFORM log_msg USING c_msgid 'I' '015'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;    PERFORM dump_wa USING 'BGR00'.&lt;/P&gt;&lt;P&gt;    PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Sonderzeichen NODATA prüfen/übernehmen -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------" /&gt;&lt;P&gt;  IF bgr00-nodata = space.&lt;/P&gt;&lt;P&gt;    nodata = c_nodata.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    IF bgr00-nodata BETWEEN '0' AND '9'&lt;/P&gt;&lt;P&gt;    OR bgr00-nodata BETWEEN 'A' AND 'I'&lt;/P&gt;&lt;P&gt;    OR bgr00-nodata BETWEEN 'J' AND 'R'&lt;/P&gt;&lt;P&gt;    OR bgr00-nodata BETWEEN 'S' AND 'Z'&lt;/P&gt;&lt;P&gt;    OR bgr00-nodata BETWEEN 'a' AND 'i'&lt;/P&gt;&lt;P&gt;    OR bgr00-nodata BETWEEN 'j' AND 'r'&lt;/P&gt;&lt;P&gt;    OR bgr00-nodata BETWEEN 's' AND 'z'&lt;/P&gt;&lt;P&gt;    OR bgr00-nodata EQ      '+'        " wegen Zentrale&lt;/P&gt;&lt;P&gt;    OR bgr00-nodata EQ      '*'        " wegen Mehrwertst. rechnen&lt;/P&gt;&lt;P&gt;    OR bgr00-nodata EQ      '='.       " wegen Matchcode&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '010'&lt;/P&gt;&lt;P&gt;                            group_count bgr00-nodata space space.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '015'&lt;/P&gt;&lt;P&gt;                            space space space space.&lt;/P&gt;&lt;P&gt;      PERFORM dump_wa USING 'BGR00'.&lt;/P&gt;&lt;P&gt;      PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    nodata = bgr00-nodata.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  PERFORM log_msg USING c_msgid 'I' '012'&lt;/P&gt;&lt;P&gt;                        group_count nodata space space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Mappe öffnen -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------------" /&gt;&lt;P&gt;  IF  fl_check = space.&lt;/P&gt;&lt;P&gt;    PERFORM mappe_oeffnen.            " open portfolio&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Flags, Zähler initialisieren -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------" /&gt;&lt;P&gt;  CLEAR: xnewg, beleg_count, satz2_count, satz2_cnt_akt, wt_count.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Initialstrukturen erzeugen (NODATA-Sonderzeichen -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------" /&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;INIT_STRUCTURES_PRODUCING----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------" /&gt;&lt;P&gt;  IF nodata NE nodata_old.&lt;/P&gt;&lt;P&gt;    PERFORM init_strukturen_erzeugen(rfbibli0) USING nodata.&lt;/P&gt;&lt;P&gt;    PERFORM init_bbkpf(rfbibli0) USING i_bbkpf.&lt;/P&gt;&lt;P&gt;    PERFORM init_bbseg(rfbibli0) USING i_bbseg.&lt;/P&gt;&lt;P&gt;    PERFORM init_bbtax(rfbibli0) USING i_bbtax.&lt;/P&gt;&lt;P&gt;    PERFORM init_bselk(rfbibli0) USING i_bselk.&lt;/P&gt;&lt;P&gt;    PERFORM init_bselp(rfbibli0) USING i_bselp.&lt;/P&gt;&lt;P&gt;    PERFORM init_bwith(rfbibli0) USING i_bwith.&lt;/P&gt;&lt;P&gt;    nodata_old = nodata.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "mappe_pruefen_oeffnen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  MAPPE_SCHLIESSEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM mappe_schliessen.&lt;/P&gt;&lt;P&gt;  IF fl_check = space.&lt;/P&gt;&lt;P&gt;    IF group_open = 'X'.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'POSTING_INTERFACE_END'.&lt;/P&gt;&lt;P&gt;      IF function = 'B'.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '008'&lt;/P&gt;&lt;P&gt;                        group_count bgr00-group space space.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      CLEAR group_open.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    IF group_count &amp;gt; 0.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '019'&lt;/P&gt;&lt;P&gt;                      group_count bgr00-group space space.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "mappe_schliessen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  MAPPEN_WECHSEL&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Neuer Mappenvorsatz wurde gesendet.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Aktuelle Mappe wird geschlosssen, neue Mappe geöffnet.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM mappen_wechsel.                   "portfolios change&lt;/P&gt;&lt;P&gt;  PERFORM mappe_schliessen.            "close portfolio&lt;/P&gt;&lt;P&gt;  PERFORM mappe_pruefen_oeffnen.       "Portfolio_test open_.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "mappen_wechsel&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  MESSAGE_AUSGEBEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       'Call Transaction .. Using ..'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Meldung ins Protokoll ausgeben.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM message_call_transaction.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- neuer Eintrag aus T100 -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------" /&gt;&lt;P&gt;  IF t100-sprsl NE sy-langu&lt;/P&gt;&lt;P&gt;  OR t100-arbgb NE sy-msgid&lt;/P&gt;&lt;P&gt;  OR t100-msgnr NE sy-msgno.&lt;/P&gt;&lt;P&gt;    CLEAR: text, text1, text2, text3, msgvn.&lt;/P&gt;&lt;P&gt;    SELECT SINGLE * FROM t100 WHERE sprsl = sy-langu&lt;/P&gt;&lt;P&gt;                              AND   arbgb = sy-msgid&lt;/P&gt;&lt;P&gt;                              AND   msgnr = sy-msgno.&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      text = t100-text.&lt;/P&gt;&lt;P&gt;      DO 4 TIMES VARYING msgvn FROM sy-msgv1 NEXT sy-msgv2.&lt;/P&gt;&lt;P&gt;        IF text CA '$'.&lt;/P&gt;&lt;P&gt;          REPLACE '$' WITH msgvn INTO text.&lt;/P&gt;&lt;P&gt;          CONDENSE text.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        IF text CA '&amp;amp;'.&lt;/P&gt;&lt;P&gt;          REPLACE '&amp;amp;' WITH msgvn INTO text.&lt;/P&gt;&lt;P&gt;          CONDENSE text.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDDO.&lt;/P&gt;&lt;P&gt;      text1 = text(40).&lt;/P&gt;&lt;P&gt;      text2 = text+40(40).&lt;/P&gt;&lt;P&gt;      text3 = text+80(40).&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '172'&lt;/P&gt;&lt;P&gt;                      beleg_count text1 text2 text3.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '173'&lt;/P&gt;&lt;P&gt;                      beleg_count sy-msgno sy-msgv1 sy-msgv2.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- gleicher Eintrag aus T100 -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------" /&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    IF text NE space.&lt;/P&gt;&lt;P&gt;      CLEAR: text, text1, text2, text3, msgvn.&lt;/P&gt;&lt;P&gt;      text = t100-text.&lt;/P&gt;&lt;P&gt;      DO 4 TIMES VARYING msgvn FROM sy-msgv1 NEXT sy-msgv2.&lt;/P&gt;&lt;P&gt;        IF text CA '$'.&lt;/P&gt;&lt;P&gt;          REPLACE '$' WITH msgvn INTO text.&lt;/P&gt;&lt;P&gt;          CONDENSE text.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        IF text CA '&amp;amp;'.&lt;/P&gt;&lt;P&gt;          REPLACE '&amp;amp;' WITH msgvn INTO text.&lt;/P&gt;&lt;P&gt;          CONDENSE text.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDDO.&lt;/P&gt;&lt;P&gt;      text1 = text(40).&lt;/P&gt;&lt;P&gt;      text2 = text+40(40).&lt;/P&gt;&lt;P&gt;      text3 = text+80(40).&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '172'&lt;/P&gt;&lt;P&gt;                      beleg_count text1 text2 text3.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '173'&lt;/P&gt;&lt;P&gt;                      beleg_count sy-msgno sy-msgv1 sy-msgv2.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "message_call_transaction&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  SAVE_DATENSATZ_BEARBEITEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM save_datensatz_bearbeiten.&lt;/P&gt;&lt;P&gt;  satz2_cnt_akt = satz2_count.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               "save_datensatz_bearbeiten&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  KONTOART_ERMITTELN.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM kontoart_ermitteln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT xtbsl WHERE bschl = bbseg-newbs.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    SELECT SINGLE * FROM tbsl WHERE bschl = bbseg-newbs.&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      xtbsl = tbsl.&lt;/P&gt;&lt;P&gt;      APPEND xtbsl.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '156'&lt;/P&gt;&lt;P&gt;                            beleg_count satz2_cnt_akt bbseg-newbs space.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                            space space space space.&lt;/P&gt;&lt;P&gt;      PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '017'&lt;/P&gt;&lt;P&gt;                            space space space space.&lt;/P&gt;&lt;P&gt;      PERFORM dump_wa USING 'BBSEG'.&lt;/P&gt;&lt;P&gt;      PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "kontoart_ermitteln&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  VBUND_SENDEN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM vbund_senden.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CHECK FL_CHECK = SPACE.&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;CLEAR FT.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FT-PROGRAM  = 'SAPLF014'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FT-DYNPRO   = '0100'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FT-DYNBEGIN = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;APPEND FT.&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;CLEAR FT.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FT-FNAM = 'RF014-VBUND'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FT-FVAL = BBKPF-VBUND.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;APPEND FT.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;ENDFORM.                               "vbund_senden&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  MOVE_BSELK_TO_SAVE_FTCLEAR.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Selektionskopfdaten in SAVE_FTCLEAR sichern für&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Initialisierung von FTCLEAR&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM move_bselk_to_save_ftclear.&lt;/P&gt;&lt;P&gt;  CLEAR save_ftclear.&lt;/P&gt;&lt;P&gt;  IF bselk-agkon(1) NE nodata.&lt;/P&gt;&lt;P&gt;    save_ftclear-agkon = bselk-agkon.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  IF bselk-agkoa(1) NE nodata.&lt;/P&gt;&lt;P&gt;    save_ftclear-agkoa = bselk-agkoa.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  IF bselk-xnops(1) NE nodata.&lt;/P&gt;&lt;P&gt;    save_ftclear-xnops = bselk-xnops.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  IF bselk-agbuk(1) NE nodata.&lt;/P&gt;&lt;P&gt;    save_ftclear-agbuk = bselk-agbuk.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  IF bselk-agums(1) NE nodata.&lt;/P&gt;&lt;P&gt;    save_ftclear-agums = bselk-agums.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  IF bselk-avsid(1) NE nodata.         "Avis&lt;/P&gt;&lt;P&gt;    save_ftclear-avsid = bselk-avsid.  "Avis&lt;/P&gt;&lt;P&gt;  ENDIF.                               "Avis&lt;/P&gt;&lt;P&gt;  IF bselk-xfifo(1) NE nodata.&lt;/P&gt;&lt;P&gt;    save_ftclear-xfifo = bselk-xfifo.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "move_bselk_to_save_ftclear&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       Form  FILL_FTTAX_FROM_BBSEG.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Diese Routine hat die Aufgabe die FTTAX mit Daten aus BBSEG zu füllen&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Durch das neue Steuerhandling ab 2.2 sind die Steuerdaten in FTTAX&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; zu übergeben.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Durch diese Routine wird in einfachen Fällen eine Aufwärts-&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; kompatibilität gewährleistet&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM fill_fttax_from_bbseg.&lt;/P&gt;&lt;P&gt;  CLEAR fttax.&lt;/P&gt;&lt;P&gt;  IF       xtbsl-koart  =  'S'&lt;/P&gt;&lt;P&gt;  AND (    bbseg-wmwst(1) NE nodata&lt;/P&gt;&lt;P&gt;        OR bbseg-mwsts(1) NE nodata ).&lt;/P&gt;&lt;P&gt;    IF bbkpf-xmwst  = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Abbruch: Wenn XMWST übergeben,muß in Steuerfeldern NODATA stehen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '148'&lt;/P&gt;&lt;P&gt;                            beleg_count satz2_count space space.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '899'&lt;/P&gt;&lt;P&gt;                            'BBSEG-WMWST' '=' bbseg-wmwst space.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '899'&lt;/P&gt;&lt;P&gt;                            'BBSEG-MWSTS' '=' bbseg-mwsts space.&lt;/P&gt;&lt;P&gt;      PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;      PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Steuer wird über BBSEG versorgt -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------" /&gt;&lt;P&gt;    bbseg_tax = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Ausstieg bei Direct Input wg. Performance -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------" /&gt;&lt;P&gt;    CHECK function NE 'D'.                                  "30C&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF bbseg-wmwst = '&lt;STRONG&gt;' OR bbseg-mwsts = '&lt;/STRONG&gt;'.&lt;/P&gt;&lt;P&gt;      READ TABLE ftpost INDEX 1.&lt;/P&gt;&lt;P&gt;      IF ftpost-fnam NE 'BKPF-XMWST'.&lt;/P&gt;&lt;P&gt;        CLEAR: ftpost.&lt;/P&gt;&lt;P&gt;        ftpost-stype = 'K'.&lt;/P&gt;&lt;P&gt;        ftpost-count = '001'.&lt;/P&gt;&lt;P&gt;        ftpost-fnam = 'BKPF-XMWST'.&lt;/P&gt;&lt;P&gt;        ftpost-fval = 'X'.&lt;/P&gt;&lt;P&gt;        INSERT ftpost INDEX 1.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      IF bbseg-wmwst(1) NE nodata.&lt;/P&gt;&lt;P&gt;        fttax-fwste = bbseg-wmwst.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      IF bbseg-mwsts(1) NE nodata.&lt;/P&gt;&lt;P&gt;        fttax-hwste = bbseg-mwsts.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      fttax-mwskz = bbseg-mwskz.&lt;/P&gt;&lt;P&gt;      fttax-bschl = bbseg-newbs.&lt;/P&gt;&lt;P&gt;      APPEND fttax.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "fill_fttax_from_bbseg&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Include   Generiertes Coding ......&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;INCLUDE rfbibl02.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  LOOP_AT_TABLE_TFILE&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM loop_at_table_tfile.&lt;/P&gt;&lt;P&gt;  DATA: counter(5) TYPE n.&lt;/P&gt;&lt;P&gt;  CLEAR group_count .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM set_global_variable.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;    counter = counter + 1.&lt;/P&gt;&lt;P&gt;    IF function NE 'B' AND sy-batch = 'X'.&lt;/P&gt;&lt;P&gt;      jobid_ext+27(5) = counter.&lt;/P&gt;&lt;P&gt;      IMPORT tfile FROM DATABASE tfsave(fi) ID jobid_ext.&lt;/P&gt;&lt;P&gt;      IF sy-subrc &amp;lt;&amp;gt; 0 .&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      IF counter &amp;gt; 1.&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;/P&gt;&lt;P&gt;    LOOP AT tfile.&lt;/P&gt;&lt;P&gt;      wa = tfile-rec.&lt;/P&gt;&lt;P&gt;      IF sy-tabix = 1 AND counter = 1.&lt;/P&gt;&lt;P&gt;*------- erster Satz muss Mappensatz sein -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------" /&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;first sentence must be portfolios sentence "SRR 23649&lt;/P&gt;&lt;P&gt;        IF wa(1) NE '0'.&lt;/P&gt;&lt;P&gt;          PERFORM log_msg USING c_msgid 'I' '004'&lt;/P&gt;&lt;P&gt;                                ds_name space space space.&lt;/P&gt;&lt;P&gt;          PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        save_bgr00 = wa.                                    "#EC ENHOK&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CASE wa(1).&lt;/P&gt;&lt;P&gt;        WHEN '0'.&lt;/P&gt;&lt;P&gt;*------- neue Mappe -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt;new portfolio *----SRR 23649&lt;/P&gt;&lt;P&gt;          PERFORM letzten_beleg_abschliessen.    "lock last_record_&lt;/P&gt;&lt;P&gt;          PERFORM mappen_wechsel.&lt;/P&gt;&lt;P&gt;        WHEN '1'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;DEL&gt;- Kopfsatz *Head sentence&lt;/DEL&gt;--&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------" /&gt;&lt;P&gt;*----&lt;DEL&gt;- Beleg abschliessen *Lock record&lt;/DEL&gt;--&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------" /&gt;&lt;P&gt;          PERFORM letzten_beleg_abschliessen.   "lock last_record_&lt;/P&gt;&lt;P&gt;          PERFORM kopfsatz_bearbeiten.          "process head sentence&lt;/P&gt;&lt;P&gt;          PERFORM fill_t_bbkpf.&lt;/P&gt;&lt;P&gt;          REFRESH ertab.&lt;/P&gt;&lt;P&gt;          ertab = wa.&lt;/P&gt;&lt;P&gt;          APPEND ertab.&lt;/P&gt;&lt;P&gt;        WHEN '2'.&lt;/P&gt;&lt;P&gt;*----&lt;DEL&gt;- Belegsegment *Record segment&lt;/DEL&gt;--&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------" /&gt;&lt;P&gt;          PERFORM datensatz_pruefen.            "test record&lt;/P&gt;&lt;P&gt;          satz2_cnt_akt = satz2_count - 1.&lt;/P&gt;&lt;P&gt;          PERFORM wa_daten_uebertragen.        "transmit wa_data_&lt;/P&gt;&lt;P&gt;          PERFORM datensatz_transportieren.    "transport record&lt;/P&gt;&lt;P&gt;          PERFORM fill_t_bbseg.&lt;/P&gt;&lt;P&gt;          PERFORM fill_t_bwith.&lt;/P&gt;&lt;P&gt;          PERFORM fill_t_bbtax.&lt;/P&gt;&lt;P&gt;          ertab = wa.&lt;/P&gt;&lt;P&gt;          APPEND ertab.&lt;/P&gt;&lt;P&gt;        WHEN OTHERS.&lt;/P&gt;&lt;P&gt;*------- ungültiger Satztyp -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="------------------------------------------" /&gt;&lt;P&gt;          satz2_count = satz2_count + 1.&lt;/P&gt;&lt;P&gt;          PERFORM log_msg USING c_msgid 'I' '152'&lt;/P&gt;&lt;P&gt;                          beleg_count satz2_count wa(1) space.&lt;/P&gt;&lt;P&gt;          PERFORM log_msg USING c_msgid 'I' '016'&lt;/P&gt;&lt;P&gt;                          space space space space.&lt;/P&gt;&lt;P&gt;          PERFORM dump_wa USING 'BBKPF'.&lt;/P&gt;&lt;P&gt;          PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    REFRESH tfile.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;  PERFORM letzten_beleg_abschliessen.          "lock last_record_&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM mappe_schliessen.                    "close portfolio&lt;/P&gt;&lt;P&gt;*------- letzter CALL_BI_END_AKT_NUMBER  -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------------------------" /&gt;&lt;P&gt;  PERFORM call_bi_end_akt_number.&lt;/P&gt;&lt;P&gt;  COMMIT WORK.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'DEQUEUE_ALL'.&lt;/P&gt;&lt;P&gt;  CLEAR commit_count.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " LOOP_AT_TABLE_TFILE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  READ_DATASET_INTO_TABLE_TFILE&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;      lesen der Datei und speichers der Sätze in Tabelle TFILE       *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM read_dataset_into_table_tfile.&lt;/P&gt;&lt;P&gt;  DATA: new_pak TYPE i.&lt;/P&gt;&lt;P&gt;  DATA: counter(5) TYPE n,&lt;/P&gt;&lt;P&gt;        v_currency     LIKE ekko-waers,       "currency&lt;/P&gt;&lt;P&gt;        l_tabix        LIKE sy-tabix,          "Index&lt;/P&gt;&lt;P&gt;        l_items_line   LIKE sy-index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Datei öffnen -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; OPEN DATASET ds_name IN TEXT MODE ENCODING DEFAULT FOR INPUT.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*uploads the data from XL&lt;/P&gt;&lt;P&gt;  PERFORM gui_upload.&lt;/P&gt;&lt;P&gt;  PERFORM split_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*---Begin of Commenting for SRR23649&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----- now called in perform split_data its&lt;/P&gt;&lt;P&gt;**-- Populate BGR00 Structure&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; PERFORM f_create_bgr00.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**-- Create BBKPF structure and pass it to I_POST Table.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   PERFORM f_create_bbkpf.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Loop at t_item.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**-- Populate BBSEG Structure&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       PERFORM f_create_bbseg.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*---End ofCommenting for SRR23649&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Satz in Tabelle füllen, falls ungleich Space -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-------------" /&gt;&lt;P&gt;  IF NOT tfile IS INITIAL.&lt;/P&gt;&lt;P&gt;    PERFORM check_tfile.&lt;/P&gt;&lt;P&gt;    APPEND tfile.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------ beim BI (und evtl. CT und DI, falls diese nicht ueber BMV0&lt;/P&gt;&lt;P&gt;*------ sondern direkt durch RFBIBL00 aufgerufen wurden) existiert&lt;/P&gt;&lt;P&gt;*------ keine eindeutige Job-Id, daher wird die interne Tabelle TFILE&lt;/P&gt;&lt;P&gt;*------ am Stueck und nicht paketweise abgespeichert.&lt;/P&gt;&lt;P&gt;*------ Wenn man CT oder DI ueber BMV0 einplant, so ist SY-BATCH&lt;/P&gt;&lt;P&gt;*------ gesetzt.&lt;/P&gt;&lt;P&gt;  IF function NE 'B' AND sy-batch = 'X'.&lt;/P&gt;&lt;P&gt;    new_pak = sy-tabix MOD pack_size.&lt;/P&gt;&lt;P&gt;    IF new_pak = 0.&lt;/P&gt;&lt;P&gt;      counter = counter + 1.&lt;/P&gt;&lt;P&gt;      jobid_ext+27(5) = counter.&lt;/P&gt;&lt;P&gt;      EXPORT tfile TO DATABASE tfsave(fi) ID jobid_ext.&lt;/P&gt;&lt;P&gt;      REFRESH tfile.&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;&lt;/P&gt;&lt;P&gt;  IF new_pak NE 0.                     "gibt es Zeilen zum Uebertragen?&lt;/P&gt;&lt;P&gt;    counter = counter + 1.&lt;/P&gt;&lt;P&gt;    jobid_ext+27(5) = counter.&lt;/P&gt;&lt;P&gt;    EXPORT tfile TO DATABASE tfsave(fi) ID jobid_ext.&lt;/P&gt;&lt;P&gt;    REFRESH tfile.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " READ_DATASET_INTO_TABLE_TFILE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  CHECK_TFILE&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;      Prüfen der Tabelle TFILE                                       *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM check_tfile.&lt;/P&gt;&lt;P&gt;  STATICS: bbkpf_cnt TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Plausibilitätsprüfungen bei Belegköpfen -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------" /&gt;&lt;P&gt;  IF tfile+0(1) = '1'.&lt;/P&gt;&lt;P&gt;    IF  function CA 'DC'&lt;/P&gt;&lt;P&gt;    AND fl_check IS INITIAL.&lt;/P&gt;&lt;P&gt;      bbkpf_cnt = bbkpf_cnt + 1.&lt;/P&gt;&lt;P&gt;      IF sy-batch NE 'X'&lt;/P&gt;&lt;P&gt;      AND bbkpf_cnt &amp;gt; 20.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '032'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    IF function = 'D'&lt;/P&gt;&lt;P&gt;    AND ( tfile+1(4) EQ 'FB05'&lt;/P&gt;&lt;P&gt;    OR    tfile+1(4) EQ 'FBS1' ).&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '033'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;      PERFORM log_abort USING c_msgid '013'.&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;ENDFORM.                               " CHECK_TFILE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  ERROR_PROCESSING&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM error_processing.&lt;/P&gt;&lt;P&gt;  CHECK function NE 'B'.&lt;/P&gt;&lt;P&gt;  CHECK fl_check = space.&lt;/P&gt;&lt;P&gt;  REFRESH: efile, tfile.&lt;/P&gt;&lt;P&gt;  IMPORT save_bgr00 efile FROM DATABASE terrd(fi) ID jobid.&lt;/P&gt;&lt;P&gt;  LOOP AT efile.&lt;/P&gt;&lt;P&gt;    tfile = efile.&lt;/P&gt;&lt;P&gt;    APPEND tfile.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE tfile LINES tfill_tfile.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF tfill_tfile &amp;gt; 0.&lt;/P&gt;&lt;P&gt;    IF tbist_aktiv NE 'X'.&lt;/P&gt;&lt;P&gt;      DELETE FROM DATABASE terrd(fi) ID jobid.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    function = 'B'.&lt;/P&gt;&lt;P&gt;    error_run = 'X'.&lt;/P&gt;&lt;P&gt;    CLEAR: startnum, all_commit, commit_count, numerror,  count.&lt;/P&gt;&lt;P&gt;    tfile = save_bgr00.                                     "#EC ENHOK&lt;/P&gt;&lt;P&gt;    INSERT tfile INDEX 1.&lt;/P&gt;&lt;P&gt;    PERFORM loop_at_table_tfile.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " ERROR_PROCESSING&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  LETZTEN_BELEG_ABSCHLIESSEN&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM letzten_beleg_abschliessen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF count &amp;gt; startnum.&lt;/P&gt;&lt;P&gt;    IF function = 'D'.&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE t_bbseg LINES tfill_t_bbseg.&lt;/P&gt;&lt;P&gt;      IF tfill_t_bbseg &amp;gt; 0.&lt;/P&gt;&lt;P&gt;        PERFORM fast_input.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE ftpost LINES tfill_ftpost.&lt;/P&gt;&lt;P&gt;      IF tfill_ftpost &amp;gt; 0.&lt;/P&gt;&lt;P&gt;        PERFORM beleg_abschliessen.    "lock record&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  CLEAR: bbkpf_ok.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " LETZTEN_BELEG_ABSCHLIESSEN&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  FAST_ENTRY&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM fast_input.&lt;/P&gt;&lt;P&gt;  DATA: bukrs LIKE bkpf-bukrs,&lt;/P&gt;&lt;P&gt;        gjahr LIKE bkpf-gjahr,&lt;/P&gt;&lt;P&gt;        belnr LIKE bkpf-belnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK fl_check = space.&lt;/P&gt;&lt;P&gt;  IF bbkpf-tcode = 'FB01' OR bbkpf-tcode = 'FBB1'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Batch-Input FLAG for Check doc type&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    sy-binpt = 'X'.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'AC_DOCUMENT_DIRECT_INPUT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        i_nodata      = nodata&lt;/P&gt;&lt;P&gt;        i_grpid       = bgr00-group&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        e_bukrs       = bukrs&lt;/P&gt;&lt;P&gt;        e_gjahr       = gjahr&lt;/P&gt;&lt;P&gt;        e_belnr       = belnr&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        t_bbkpf       = t_bbkpf&lt;/P&gt;&lt;P&gt;        t_bbseg       = t_bbseg&lt;/P&gt;&lt;P&gt;        t_bbtax       = t_bbtax&lt;/P&gt;&lt;P&gt;        t_bwith       = t_bwith&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        error_message = 01.&lt;/P&gt;&lt;P&gt;    IF sy-subrc IS INITIAL.&lt;/P&gt;&lt;P&gt;      IF pa_xprot = 'X'.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING 'F5' 'I' '312'&lt;/P&gt;&lt;P&gt;                        belnr bukrs space space.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      IF sy-msgty = 'A'.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING sy-msgid 'I' sy-msgno&lt;/P&gt;&lt;P&gt;                              sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;        PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        IF sy-batch IS INITIAL.&lt;/P&gt;&lt;P&gt;          PERFORM log_msg USING sy-msgid 'I' sy-msgno&lt;/P&gt;&lt;P&gt;                                sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      PERFORM export_error_data.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MESSAGE w033.&lt;/P&gt;&lt;P&gt;    PERFORM export_error_data.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*------- Commit Work? -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="----------------------------------------------" /&gt;&lt;P&gt;  commit_count = commit_count + 1.&lt;/P&gt;&lt;P&gt;  IF commit_count = max_commit.&lt;/P&gt;&lt;P&gt;    PERFORM call_bi_end_akt_number.&lt;/P&gt;&lt;P&gt;    COMMIT WORK.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'DEQUEUE_ALL'.&lt;/P&gt;&lt;P&gt;    CLEAR commit_count.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Refresh muß hier erfolgen, da im Fehlerfall nicht im FBS initialisiert&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;werden kann&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  REFRESH: t_bbkpf,&lt;/P&gt;&lt;P&gt;           t_bbseg,&lt;/P&gt;&lt;P&gt;           t_bwith,&lt;/P&gt;&lt;P&gt;           t_bbtax.&lt;/P&gt;&lt;P&gt;  CLEAR:   t_bbkpf,                                         "30C&lt;/P&gt;&lt;P&gt;           t_bbseg,                                         "30C&lt;/P&gt;&lt;P&gt;           t_bwith,&lt;/P&gt;&lt;P&gt;           t_bbtax.                                         "30C&lt;/P&gt;&lt;P&gt;ENDFORM.                               " FAST_ENTRY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  FILL_T_BBKPF&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM fill_t_bbkpf.&lt;/P&gt;&lt;P&gt;  CHECK function = 'D'.&lt;/P&gt;&lt;P&gt;  APPEND bbkpf TO t_bbkpf.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " FILL_T_BBKPF&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  FILL_T_BBSEG&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM fill_t_bbseg.&lt;/P&gt;&lt;P&gt;  CHECK function = 'D'.&lt;/P&gt;&lt;P&gt;  IF wa+2(9) = 'BSEG'.&lt;/P&gt;&lt;P&gt;*------- falls ZBSEG wurde diese bereits in BBSEG gemoved -&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="-----------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   append bbseg to t_bbseg.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CLEAR wa_bbseg_di.&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING bbseg TO wa_bbseg_di.&lt;/P&gt;&lt;P&gt;    IF xtbsl-koart = 'D' OR&lt;/P&gt;&lt;P&gt;       xtbsl-koart = 'K'.&lt;/P&gt;&lt;P&gt;      wa_bbseg_di-wt_key = wt_count.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    APPEND wa_bbseg_di TO t_bbseg.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " FILL_T_BBSEG&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  FILL_T_BBTAX&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM fill_t_bbtax.&lt;/P&gt;&lt;P&gt;  CHECK function = 'D'.&lt;/P&gt;&lt;P&gt;  IF wa+2(9) = 'BTAX'.&lt;/P&gt;&lt;P&gt;    APPEND bbtax TO t_bbtax.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " FILL_T_BBSEG&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  GET_RESTART_INFO&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM get_restart_info.&lt;/P&gt;&lt;P&gt;  DATA: action.                                             " thk 30F&lt;/P&gt;&lt;P&gt;  DATA: counter(5) TYPE n.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK function NE 'B'.                                    "30C+&lt;/P&gt;&lt;P&gt;  CHECK fl_check = space.                                   "30C&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Startnummer holen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF sy-batch = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;THK zu 30F: Aufruf jetzt mit importing-parameter (Periodische Jobs)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  CALL FUNCTION 'GET_JOB_RUNTIME_INFO'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            JOBNAME         = JOBNAME&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;            NO_RUNTIME_INFO = 01.&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;    MESSAGE A051.&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;    CALL FUNCTION 'BI_GET_STARTING_NUMBER'&lt;/P&gt;&lt;P&gt;      IMPORTING&lt;/P&gt;&lt;P&gt;        jobid              = jobid&lt;/P&gt;&lt;P&gt;        actual_number      = startnum&lt;/P&gt;&lt;P&gt;        action             = action&lt;/P&gt;&lt;P&gt;        lasterrnum         = lasterrnum&lt;/P&gt;&lt;P&gt;        numerrors          = olderror&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        wrong_status_found = 02&lt;/P&gt;&lt;P&gt;        not_found          = 03.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF function NE 'B'.                                     "QHA30C+&lt;/P&gt;&lt;P&gt;      CASE sy-subrc.&lt;/P&gt;&lt;P&gt;        WHEN 0.                                             "QHA30C+&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;begin P30K110179&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          IF jobid+27(5) NE space.&lt;/P&gt;&lt;P&gt;            PERFORM log_msg USING c_msgid 'I' '209'&lt;/P&gt;&lt;P&gt;                                  jobid '27' space space.&lt;/P&gt;&lt;P&gt;            PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;          jobid_ext = jobid.&lt;/P&gt;&lt;P&gt;          CASE action.&lt;/P&gt;&lt;P&gt;            WHEN 'E'.                  " Fehler nachbuchen&lt;/P&gt;&lt;P&gt;              PERFORM log_msg USING c_msgid 'I' '034'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;              PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;            WHEN ' '.                  " Neustart&lt;/P&gt;&lt;P&gt;              DELETE FROM DATABASE terrd(fi) ID jobid.      "31H&lt;/P&gt;&lt;P&gt;              DO.&lt;/P&gt;&lt;P&gt;                counter = counter + 1.&lt;/P&gt;&lt;P&gt;                jobid_ext+27(5) = counter.&lt;/P&gt;&lt;P&gt;                DELETE FROM DATABASE tfsave(fi) ID jobid_ext.&lt;/P&gt;&lt;P&gt;                IF sy-subrc &amp;lt;&amp;gt; 0 .&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;              PERFORM execute_bi_end_akt_number.&lt;/P&gt;&lt;P&gt;            WHEN 'R'.                  " Wiederaufsetzen (Restart)&lt;/P&gt;&lt;P&gt;              all_commit = startnum.&lt;/P&gt;&lt;P&gt;              tfsave_fill = 'X'.&lt;/P&gt;&lt;P&gt;              PERFORM log_msg USING c_msgid 'I' '059'&lt;/P&gt;&lt;P&gt;                                    jobid space space space.&lt;/P&gt;&lt;P&gt;          ENDCASE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;end P30K110179&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          tbist_aktiv = 'X'.                                "QHA30C+&lt;/P&gt;&lt;P&gt;        WHEN 2.&lt;/P&gt;&lt;P&gt;          PERFORM log_msg USING c_msgid 'I' '053'&lt;/P&gt;&lt;P&gt;                                space space space space.&lt;/P&gt;&lt;P&gt;          PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;        WHEN 3.&lt;/P&gt;&lt;P&gt;          PERFORM log_msg USING c_msgid 'I' '054'&lt;/P&gt;&lt;P&gt;                                space space space space.&lt;/P&gt;&lt;P&gt;          PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF startnum NE 0.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '055'&lt;/P&gt;&lt;P&gt;                              startnum space space space.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        tbist_aktiv = 'X'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  ELSEIF STARTNUM = 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    MESSAGE I899 WITH 'Diese Mappe wird zum ersten Mal angefasst'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     "WICHTIG!&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     DELETE ETAB FROM DATABASE ....&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;    IF IS_ERROR = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     MESSAGE I899 WITH 'File' DS_NAME 'letzter Fehler bei' STARTNUM.&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;       MESSAGE I899 WITH 'File' DS_NAME 'Fortsetzung bei' STARTNUM.&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;  ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    startnum = 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_ERROR = SPACE.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    jobid   = 'RFBIBL00_'.&lt;/P&gt;&lt;P&gt;    jobid+9 = sy-uname.&lt;/P&gt;&lt;P&gt;    DELETE FROM DATABASE terrd(fi) ID jobid.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GET_STARTING_NUMBER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  CALL_BI_END_AKT_NUMBER&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM call_bi_end_akt_number.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CHECK SY-BATCH = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CHECK fl_check = space.              "QHA-&amp;gt;Steinwedel&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CHECK NOT jobid IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CHECK function NE 'B'.&lt;/P&gt;&lt;P&gt;  CHECK tbist_aktiv = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  all_commit = all_commit + commit_count.&lt;/P&gt;&lt;P&gt;  PERFORM execute_bi_end_akt_number.&lt;/P&gt;&lt;P&gt;  CLEAR commit_count.&lt;/P&gt;&lt;P&gt;  CLEAR numerror.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " CALL_BI_END_AKT_NUMBER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  EXECUTE_BI_END_AKT_NUMBER&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM execute_bi_end_akt_number.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'BI_END_AKT_NUMBER'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            jobname          = jobid&lt;/P&gt;&lt;P&gt;            actual_number    = all_commit&lt;/P&gt;&lt;P&gt;            number_of_errors = numerror"eine relative Zahl,&lt;/P&gt;&lt;P&gt;               "Anzahl Fehler seit dem letzem(!) COMMIT, wird im FB&lt;/P&gt;&lt;P&gt;                                       "kumuliert.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          EXTERNAL_NUMBER  = 'interne Nummernvergabe'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            internal_error   = 01&lt;/P&gt;&lt;P&gt;            not_found        = 02.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE sy-subrc.&lt;/P&gt;&lt;P&gt;    WHEN 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      MESSAGE I899 WITH 'BI_END_AKT_NUMBER' BELEG_COUNT.     "30Ctest&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 1.&lt;/P&gt;&lt;P&gt;      ROLLBACK WORK.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '056'&lt;/P&gt;&lt;P&gt;                              space space space space.&lt;/P&gt;&lt;P&gt;      PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;    WHEN 2.&lt;/P&gt;&lt;P&gt;      ROLLBACK WORK.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING c_msgid 'I' '054'&lt;/P&gt;&lt;P&gt;                              jobid space space space.&lt;/P&gt;&lt;P&gt;      PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " EXECUTE_BI_END_AKT_NUMBER&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  EXPORT_ERROR_DATA&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM export_error_data.&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE ertab LINES tfill_ertab.&lt;/P&gt;&lt;P&gt;  CHECK tfill_ertab &amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IMPORT save_bgr00 efile FROM DATABASE terrd(fi) ID jobid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT ertab.&lt;/P&gt;&lt;P&gt;    efile = ertab.&lt;/P&gt;&lt;P&gt;    APPEND efile.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  EXPORT save_bgr00 efile TO DATABASE terrd(fi) ID jobid.&lt;/P&gt;&lt;P&gt;  numerror = numerror + 1.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " EXPORT_ERROR_DATA&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  CALL_BI_CLOSE_ENTRY&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM call_bi_close_entry.&lt;/P&gt;&lt;P&gt;  DATA: counter(5) TYPE n.&lt;/P&gt;&lt;P&gt;  IF tbist_aktiv = 'X' AND sy-batch = 'X'.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'BI_CLOSE_ENTRY'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        jobname        = jobid&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        internal_error = 01&lt;/P&gt;&lt;P&gt;        not_found      = 02.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE sy-subrc.&lt;/P&gt;&lt;P&gt;      WHEN 0.&lt;/P&gt;&lt;P&gt;        DELETE FROM DATABASE terrd(fi) ID jobid.&lt;/P&gt;&lt;P&gt;        DO.&lt;/P&gt;&lt;P&gt;          counter = counter + 1.&lt;/P&gt;&lt;P&gt;          jobid_ext+27(5) = counter.&lt;/P&gt;&lt;P&gt;          DELETE FROM DATABASE tfsave(fi) ID jobid_ext.&lt;/P&gt;&lt;P&gt;          IF sy-subrc &amp;lt;&amp;gt; 0 .&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;      WHEN 1.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '057'&lt;/P&gt;&lt;P&gt;                             space space space space.&lt;/P&gt;&lt;P&gt;        PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;      WHEN 2.&lt;/P&gt;&lt;P&gt;        PERFORM log_msg USING c_msgid 'I' '054'&lt;/P&gt;&lt;P&gt;                              jobid space space space.&lt;/P&gt;&lt;P&gt;        PERFORM log_abort USING c_msgid '013'.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    IF function NE 'B'.&lt;/P&gt;&lt;P&gt;      DELETE FROM DATABASE terrd(fi) ID jobid.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;delete tfsave also in test run&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF fl_check EQ 'X' AND function NE 'B' AND sy-batch = 'X'.&lt;/P&gt;&lt;P&gt;    counter = 0.&lt;/P&gt;&lt;P&gt;    DO.&lt;/P&gt;&lt;P&gt;      counter = counter + 1.&lt;/P&gt;&lt;P&gt;      jobid_ext+27(5) = counter.&lt;/P&gt;&lt;P&gt;      DELETE FROM DATABASE tfsave(fi) ID jobid_ext.&lt;/P&gt;&lt;P&gt;      IF sy-subrc &amp;lt;&amp;gt; 0 .&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;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " CALL_BI_CLOSE_ENTRY&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  FILL_T_BWITH&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM fill_t_bwith.&lt;/P&gt;&lt;P&gt;  CHECK function = 'D'.&lt;/P&gt;&lt;P&gt;  IF wa+2(9) = 'WITH'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   append bwith to t_bwith.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CLEAR wa_bwith_di.&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING bwith TO wa_bwith_di.&lt;/P&gt;&lt;P&gt;    wa_bwith_di-wt_key = wt_count.&lt;/P&gt;&lt;P&gt;    APPEND wa_bwith_di TO t_bwith.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " FILL_T_BWITH&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*eject&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  BSELP_FIELD_LENGHT_CONVERT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;      Die Länge der Felder BSELP-FELDN, BSELP-SLVON und BSELP-SLBIS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      wird angepasst                                                 *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Feld           Länge vor 4.0A        Länge ab 4.0A             *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      BSELP-FELDN     5                    30&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      BSELP-SLVON    20                    30&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      BSELP-SLBIS    20                    30&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; ---&amp;gt; p_wa          aktuelle Zeile mit alten Feldlängen&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--- p_wa          aktuelle Zeile mit neuen Feldlängen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM bselp_field_lenght_convert CHANGING p_wa.&lt;/P&gt;&lt;P&gt;  DATA: wa_tmp(2600) TYPE c,           " help work area&lt;/P&gt;&lt;P&gt;        offset_o TYPE i,               " old offset (&amp;lt;4.0A)&lt;/P&gt;&lt;P&gt;        offset_n TYPE i.               " new offset (&amp;gt;= 4.0A)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR wa_tmp.&lt;/P&gt;&lt;P&gt;  wa_tmp(31) = p_wa(31).&lt;/P&gt;&lt;P&gt;  offset_n = 31.&lt;/P&gt;&lt;P&gt;  offset_o = 31.&lt;/P&gt;&lt;P&gt;  DO 18 TIMES.&lt;/P&gt;&lt;P&gt;    wa_tmp&lt;EM&gt;offset_n(5) = p_wa&lt;/EM&gt;offset_o(5).&lt;/P&gt;&lt;P&gt;    offset_n = offset_n + 30.&lt;/P&gt;&lt;P&gt;    offset_o = offset_o + 5.&lt;/P&gt;&lt;P&gt;    DO 2 TIMES.&lt;/P&gt;&lt;P&gt;      wa_tmp&lt;EM&gt;offset_n(20) = p_wa&lt;/EM&gt;offset_o(20).&lt;/P&gt;&lt;P&gt;      offset_n = offset_n + 30.&lt;/P&gt;&lt;P&gt;      offset_o = offset_o + 20.&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;  CLEAR p_wa.&lt;/P&gt;&lt;P&gt;  p_wa = wa_tmp.&lt;/P&gt;&lt;P&gt;ENDFORM.                               "bselp_field_lenght_convert&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  set_global_variable&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM set_global_variable.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK function NE 'D'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;-----  read currency exchange rate prefixes --------------------------&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'RATE_GET_PREFIXES'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      client   = sy-mandt&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      prefix_p = prefix_p&lt;/P&gt;&lt;P&gt;      prefix_m = prefix_m.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " set_global_variable&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  LOG_MSG&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;      collects info messages for log or displays pop up&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM log_msg USING    i_msgid LIKE sy-msgid&lt;/P&gt;&lt;P&gt;                      i_msgty LIKE sy-msgty&lt;/P&gt;&lt;P&gt;                      i_msgno LIKE sy-msgno&lt;/P&gt;&lt;P&gt;                      i_msgv1&lt;/P&gt;&lt;P&gt;                      i_msgv2&lt;/P&gt;&lt;P&gt;                      i_msgv3&lt;/P&gt;&lt;P&gt;                      i_msgv4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;declaration&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: h_fimsg LIKE fimsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK xinf EQ space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF xlog = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;log the message with the message handler&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    h_fimsg-msgid = i_msgid.&lt;/P&gt;&lt;P&gt;    h_fimsg-msgty = i_msgty.&lt;/P&gt;&lt;P&gt;    h_fimsg-msgno = i_msgno.&lt;/P&gt;&lt;P&gt;    h_fimsg-msgv1 = i_msgv1. CONDENSE h_fimsg-msgv1.&lt;/P&gt;&lt;P&gt;    h_fimsg-msgv2 = i_msgv2. CONDENSE h_fimsg-msgv2.&lt;/P&gt;&lt;P&gt;    h_fimsg-msgv3 = i_msgv3. CONDENSE h_fimsg-msgv3.&lt;/P&gt;&lt;P&gt;    h_fimsg-msgv4 = i_msgv4. CONDENSE h_fimsg-msgv4.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'FI_MESSAGE_COLLECT'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        i_fimsg       = h_fimsg&lt;/P&gt;&lt;P&gt;        i_xappn       = 'X'&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        msgid_missing = 1&lt;/P&gt;&lt;P&gt;        msgno_missing = 2&lt;/P&gt;&lt;P&gt;        msgty_missing = 3&lt;/P&gt;&lt;P&gt;        OTHERS        = 4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSEIF xpop = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;popup&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    MESSAGE ID     i_msgid&lt;/P&gt;&lt;P&gt;            TYPE   i_msgty&lt;/P&gt;&lt;P&gt;            NUMBER i_msgno&lt;/P&gt;&lt;P&gt;            WITH   i_msgv1 i_msgv2 i_msgv3 i_msgv4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " LOG_MSG&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  log_print&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;      display log&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM log_print.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF xlog = 'X'.&lt;/P&gt;&lt;P&gt;    IF NOT sy-batch IS INITIAL.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'FI_MESSAGE_PROTOCOL'&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          no_message = 1&lt;/P&gt;&lt;P&gt;          not_batch  = 2&lt;/P&gt;&lt;P&gt;          OTHERS     = 3.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'FI_MESSAGE_PRINT'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          i_xausn = 'X'&lt;/P&gt;&lt;P&gt;          i_comsg = 0&lt;/P&gt;&lt;P&gt;        EXCEPTIONS&lt;/P&gt;&lt;P&gt;          OTHERS  = 0.&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;ENDFORM.                    " log_print&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  log_abort&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;      foreground: stop program / background: message aXXX&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM log_abort USING i_msgid LIKE sy-msgid&lt;/P&gt;&lt;P&gt;                     i_msgno LIKE sy-msgno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-batch IS INITIAL.&lt;/P&gt;&lt;P&gt;    IF xlog = 'X'.&lt;/P&gt;&lt;P&gt;      PERFORM log_msg USING i_msgid 'I' i_msgno&lt;/P&gt;&lt;P&gt;                            space space space space.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    PERFORM log_print.&lt;/P&gt;&lt;P&gt;    ROLLBACK WORK.&lt;/P&gt;&lt;P&gt;    IF xpop = 'X'.                                          "Note 559106&lt;/P&gt;&lt;P&gt;      MESSAGE ID i_msgid                                    "Note 559106&lt;/P&gt;&lt;P&gt;              TYPE 'I'                                      "Note 559106&lt;/P&gt;&lt;P&gt;              NUMBER i_msgno.                               "Note 559106&lt;/P&gt;&lt;P&gt;    ELSEIF xlog = 'X' OR xinf = 'X' .                       "Note 559106&lt;/P&gt;&lt;P&gt;      MESSAGE ID i_msgid                                    "Note 559106&lt;/P&gt;&lt;P&gt;      TYPE 'S'                                              "Note 559106&lt;/P&gt;&lt;P&gt;      NUMBER i_msgno.                                       "Note 559106&lt;/P&gt;&lt;P&gt;    ENDIF.                                                  "Note 559106&lt;/P&gt;&lt;P&gt;    STOP.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM log_print.&lt;/P&gt;&lt;P&gt;    MESSAGE ID i_msgid&lt;/P&gt;&lt;P&gt;            TYPE 'A'&lt;/P&gt;&lt;P&gt;            NUMBER i_msgno.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " log_abort&lt;/P&gt;&lt;P&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;       FORM TABLES_PRUEFEN                                           *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&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;       Prüfen ob zur TABLES-Anweisung Tabelle vorhanden ist          *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM tables_pruefen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF rep(6) = 'TABLES'.&lt;/P&gt;&lt;P&gt;    tabtab = space.&lt;/P&gt;&lt;P&gt;    tabtab-tabname = rep+7(6).&lt;/P&gt;&lt;P&gt;    READ TABLE tabtab.&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      tabtab-vorhanden = xon.&lt;/P&gt;&lt;P&gt;      MODIFY tabtab INDEX sy-tabix.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      new_gn = xon.&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;ENDFORM.                    "TABLES_PRUEFEN&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  gui_upload&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM gui_upload .&lt;/P&gt;&lt;P&gt;  DATA w_file  TYPE string.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MOVE p_file TO w_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'GUI_UPLOAD'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      filename                = w_file&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      data_tab                = t_rawdata&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      file_open_error         = 1&lt;/P&gt;&lt;P&gt;      file_read_error         = 2&lt;/P&gt;&lt;P&gt;      no_batch                = 3&lt;/P&gt;&lt;P&gt;      gui_refuse_filetransfer = 4&lt;/P&gt;&lt;P&gt;      invalid_type            = 5&lt;/P&gt;&lt;P&gt;      no_authority            = 6&lt;/P&gt;&lt;P&gt;      unknown_error           = 7&lt;/P&gt;&lt;P&gt;      bad_data_format         = 8&lt;/P&gt;&lt;P&gt;      header_not_allowed      = 9&lt;/P&gt;&lt;P&gt;      separator_not_allowed   = 10&lt;/P&gt;&lt;P&gt;      header_too_long         = 11&lt;/P&gt;&lt;P&gt;      unknown_dp_error        = 12&lt;/P&gt;&lt;P&gt;      access_denied           = 13&lt;/P&gt;&lt;P&gt;      dp_out_of_memory        = 14&lt;/P&gt;&lt;P&gt;      disk_full               = 15&lt;/P&gt;&lt;P&gt;      dp_timeout              = 16&lt;/P&gt;&lt;P&gt;      OTHERS                  = 17.&lt;/P&gt;&lt;P&gt;  .&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE e000 WITH text-008.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " gui_upload&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  SPLIT_DATA&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;    Splitting data in header and line item details from&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    uploaded file and passing it in tfile internal structure&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    used to update the final file FTPOST&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM split_data .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; DATA: l_kursf TYPE bkpf-kursf,           "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: l_wrbtr TYPE bseg-wrbtr,&lt;/P&gt;&lt;P&gt;        l_dmbtr TYPE bseg-dmbtr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLASS cl_abap_conv_in_ce DEFINITION LOAD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : c_delim(1) TYPE c,&lt;/P&gt;&lt;P&gt;         c_delim_dyn TYPE CHAR1,&lt;/P&gt;&lt;P&gt;         c_delim_cmp TYPE CHAR1 VALUE '#'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  c_delim = cl_abap_conv_in_ce=&amp;gt;uccp('0009').&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;****Begin of Insertion by DEVK928551&lt;/P&gt;&lt;P&gt;*----Deleting empty rows from t_rawdata&lt;/P&gt;&lt;P&gt;  LOOP AT t_rawdata INTO wa_rawdata.&lt;/P&gt;&lt;P&gt;    IF  wa_rawdata-record+0(1) IS INITIAL.&lt;/P&gt;&lt;P&gt;      DELETE t_rawdata index sy-tabix.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF wa_rawdata-record+0(1) EQ '#'.&lt;/P&gt;&lt;P&gt;      DELETE t_rawdata index sy-tabix.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;*-- Populate BGR00 Structure&lt;/P&gt;&lt;P&gt;  PERFORM f_create_bgr00.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;****End of Insertion by DEVK928551&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE t_rawdata LINES record_count.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK record_count NE 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH: t_header,&lt;/P&gt;&lt;P&gt;           t_item.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT t_rawdata INTO wa_rawdata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     WRITE   wa_rawdata-record+0(1) TO c_delim_dyn.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     IF wa_rawdata-record+0(1) = c_h.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*SRR-25080 Begin.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if v_flag = ' 'and&lt;/P&gt;&lt;P&gt;        v_net eq '0'.&lt;/P&gt;&lt;P&gt;        wa_bbkpf-xmwst = nodata.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        wa_bbkpf-xmwst = 'X'.    "Calculate tax automatically&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if v_check = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;To append the header records.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;        APPEND  wa_bbkpf TO t1_file.&lt;/P&gt;&lt;P&gt;        clear : v_flag,&lt;/P&gt;&lt;P&gt;                v_net.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;*SRR-25080 End.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR: wa_header.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           v_kursf.                       "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SPLIT wa_rawdata-record AT c_delim INTO&lt;/P&gt;&lt;P&gt;         v_h&lt;/P&gt;&lt;P&gt;         wa_header-bukrs&lt;/P&gt;&lt;P&gt;         wa_header-blart&lt;/P&gt;&lt;P&gt;         v_bldat&lt;/P&gt;&lt;P&gt;         v_budat&lt;/P&gt;&lt;P&gt;         wa_header-waers&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        v_kursf                            "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;         wa_header-xblnr&lt;/P&gt;&lt;P&gt;         wa_header-bktxt&lt;/P&gt;&lt;P&gt;         v_stodt&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        wa_header-monat                    "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        v_wwert                            "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;         v_jv_total&lt;/P&gt;&lt;P&gt;         v_t_id&lt;/P&gt;&lt;P&gt;         wa_header-stgrd&lt;/P&gt;&lt;P&gt;         IN CHARACTER MODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     MOVE v_kursf TO l_kursf.               "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     WRITE l_kursf TO wa_header-kursf.      "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Changing the date format .&lt;/P&gt;&lt;P&gt;      PERFORM format_date CHANGING v_bldat.&lt;/P&gt;&lt;P&gt;      PERFORM format_date CHANGING v_budat.&lt;/P&gt;&lt;P&gt;      PERFORM format_date CHANGING v_stodt.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     PERFORM format_date CHANGING v_wwert.  "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MOVE v_bldat TO wa_header-bldat.&lt;/P&gt;&lt;P&gt;      MOVE v_budat TO wa_header-budat.&lt;/P&gt;&lt;P&gt;      MOVE v_stodt TO wa_header-stodt.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     MOVE v_wwert TO wa_header-wwert.       "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND wa_header TO t_header.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Begin of Insertion SRR23649     "DEVK928551&lt;/P&gt;&lt;P&gt;      PERFORM f_fill_bbkpf.&lt;/P&gt;&lt;P&gt;*-----End of Insertion   SRR23649     "DEVK928551&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSEIF c_delim_dyn NE c_delim_cmp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR :wa_item,&lt;/P&gt;&lt;P&gt;             v_wrbtr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SRR-25080 Begin.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**Flag to check that the item records for a particular header have been&lt;/P&gt;&lt;P&gt;*read.&lt;/P&gt;&lt;P&gt;      v_check = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SRR-25080 End.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SPLIT wa_rawdata-record AT c_delim INTO&lt;/P&gt;&lt;P&gt;          wa_item-posnr&lt;/P&gt;&lt;P&gt;          wa_item-bschl&lt;/P&gt;&lt;P&gt;          wa_item-hkont&lt;/P&gt;&lt;P&gt;          v_wrbtr&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         wa_item-bukrs                       "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          wa_item-kostl&lt;/P&gt;&lt;P&gt;          wa_item-prctr&lt;/P&gt;&lt;P&gt;          wa_item-pprct&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         wa_item-vbund                       "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          wa_item-aufnr&lt;/P&gt;&lt;P&gt;          wa_item-mwskz&lt;/P&gt;&lt;P&gt;          v_aloc&lt;/P&gt;&lt;P&gt;          wa_item-sgtxt&lt;/P&gt;&lt;P&gt;          wa_item-zzcgrp&lt;/P&gt;&lt;P&gt;          wa_item-zzplat&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         wa_item-zzpdt                        "SIR-06394 (SIR-7142)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          wa_item-bewar&lt;/P&gt;&lt;P&gt;          wa_item-projk&lt;/P&gt;&lt;P&gt;          wa_item-zuonr&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         v_dmbtr                             "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          wa_item-pernr&lt;/P&gt;&lt;P&gt;          wa_item-zzpdt.                        "SIR-7142&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           v_dmbtr TO l_dmbtr.               "DEVK919700&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;Start of SRR-17283&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     MOVE: v_wrbtr TO l_wrbtr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     WRITE l_wrbtr TO wa_item-wrbtr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BEGIN OF SRR 25764&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     REPLACE ',' WITH '.' INTO v_wrbtr.      "SRR25080&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  MOVE t_item-wrbtr TO v_wrbtr.&lt;/P&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;   REPLACE ',' WITH '' INTO v_wrbtr.&lt;/P&gt;&lt;P&gt;   condense v_wrbtr  no-gaps.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;END OF SRR 25764&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      WRITE v_wrbtr TO wa_item-wrbtr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of SRR-17283&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;     WRITE l_dmbtr TO wa_item-dmbtr.         "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*Selecting debit/credit indicator according to the posting key&lt;/P&gt;&lt;P&gt;*and populating the same in item table&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Start of SRR-18527&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     SELECT SINGLE shkzg FROM bseg&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            INTO v_shkzg&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            WHERE bschl = wa_item-bschl.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      SELECT SINGLE shkzg FROM tbsl&lt;/P&gt;&lt;P&gt;             INTO v_shkzg&lt;/P&gt;&lt;P&gt;             WHERE bschl = wa_item-bschl.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of SRR-18527&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MOVE v_shkzg TO wa_item-shkzg.&lt;/P&gt;&lt;P&gt;      CLEAR v_shkzg.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    CLEAR wa_item-vbund.                     "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          APPEND wa_item TO t_item.&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;*------ Begin of Insertion SRR23649           "DEVK928551&lt;/P&gt;&lt;P&gt;        PERFORM fill_bbseg.&lt;/P&gt;&lt;P&gt;*------ End of Insertion SRR23649             "DEVK928551&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SRR-25080 Begin.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**Determining the sum of debit &amp;amp; Credit amounts.&lt;/P&gt;&lt;P&gt;      IF wa_item-bschl eq '40'.&lt;/P&gt;&lt;P&gt;        v_net = v_net + wa_item-wrbtr.&lt;/P&gt;&lt;P&gt;      ELSEIF wa_item-bschl eq '50'.&lt;/P&gt;&lt;P&gt;        v_net = v_net - wa_item-wrbtr.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Check for GL Accounts.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;        v_flag = 'X'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF wa_item-mwskz eq ' '.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Check for tax code.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;        v_flag = 'X'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     if v_flag = ' 'and&lt;/P&gt;&lt;P&gt;       v_net eq '0'.&lt;/P&gt;&lt;P&gt;       wa_bbkpf-xmwst = c_sep .&lt;/P&gt;&lt;P&gt;     ELSE.&lt;/P&gt;&lt;P&gt;       wa_bbkpf-xmwst = 'X'.    "Calculate tax automatically&lt;/P&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     if v_check = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;To append the last header record.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;       APPEND  wa_bbkpf TO t1_file.&lt;/P&gt;&lt;P&gt;       clear : v_flag,&lt;/P&gt;&lt;P&gt;               v_net.&lt;/P&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;To append the header &amp;amp; item records to final table.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;   LOOP at t1_file.&lt;/P&gt;&lt;P&gt;       wa1_file = t1_file.&lt;/P&gt;&lt;P&gt;       wafile = wa1_file.&lt;/P&gt;&lt;P&gt;       append wafile to tfile.&lt;/P&gt;&lt;P&gt;       delete table t1_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       CLEAR: wafile,&lt;/P&gt;&lt;P&gt;              wa1_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;       LOOP at t_temp.&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Counter to check no. of item records under each header.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;         if t_temp-posnr &amp;gt; v_counter.&lt;/P&gt;&lt;P&gt;           wafile = t_temp.&lt;/P&gt;&lt;P&gt;           append wafile to tfile.&lt;/P&gt;&lt;P&gt;           DELETE table t_temp.&lt;/P&gt;&lt;P&gt;           v_counter = v_counter + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           CLEAR: wafile,&lt;/P&gt;&lt;P&gt;                  wa_temp.&lt;/P&gt;&lt;P&gt;         ELSE.   "SRR25080&lt;/P&gt;&lt;P&gt;           EXIT. "SRR25080&lt;/P&gt;&lt;P&gt;         ENDIF.&lt;/P&gt;&lt;P&gt;       ENDLOOP.&lt;/P&gt;&lt;P&gt;       clear v_counter.&lt;/P&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;&lt;/P&gt;&lt;P&gt;*SRR-25080 End.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " SPLIT_DATA&lt;/P&gt;&lt;P&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;     Form  format_date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM format_date&lt;/P&gt;&lt;P&gt;    CHANGING change_date.&lt;/P&gt;&lt;P&gt;  DATA: l_date(10) TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONCATENATE change_date&lt;EM&gt;6(4) change_date&lt;/EM&gt;0(2) change_date+3(2)&lt;/P&gt;&lt;P&gt;    INTO l_date SEPARATED BY space.&lt;/P&gt;&lt;P&gt;  CONDENSE l_date NO-GAPS.&lt;/P&gt;&lt;P&gt;  MOVE l_date TO change_date.&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.                    " format_date&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  f_create_bgr00&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;/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;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM f_create_bgr00 .&lt;/P&gt;&lt;P&gt;*-- Fill BGR00 struture and pass to table T_POST&lt;/P&gt;&lt;P&gt;  CLEAR wa_bgr00.&lt;/P&gt;&lt;P&gt;  wa_bgr00-stype        =    0.&lt;/P&gt;&lt;P&gt;  wa_bgr00-group        =    c_session_name. " 'BDC SESSION NAME'.&lt;/P&gt;&lt;P&gt;  wa_bgr00-mandt        =    sy-mandt.&lt;/P&gt;&lt;P&gt;  wa_bgr00-usnam        =    sy-uname.&lt;/P&gt;&lt;P&gt;  wa_bgr00-start        =    ' '.&lt;/P&gt;&lt;P&gt;  wa_bgr00-xkeep        =    'X'.&lt;/P&gt;&lt;P&gt;  wa_bgr00-nodata       =    c_sep.&lt;/P&gt;&lt;P&gt;  APPEND  wa_bgr00 TO tfile.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " f_create_bgr00&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  f_create_bbkpf&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;     This Perform is commented for SRR-23649&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     This functionality is called in previous&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     perfrom split_data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM f_create_bbkpf .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; DATA :l_con_date(10) TYPE c,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       v_no_of_fieldsin_bbkpf TYPE i,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       v_flag.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**-- Getting the No of Fields in the Structure BBKPF&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; DESCRIBE FIELD wa_bbkpf TYPE v_flag&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                   COMPONENTS v_no_of_fieldsin_bbkpf.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; CLEAR v_flag.&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; CLEAR wa_bbkpf.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; READ TABLE t_hedr_temp INTO wa_header INDEX 1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; IF sy-subrc EQ 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   wa_bbkpf-stype = 1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;**-----Begin of insertion SRR-23776            "  DEVK928551&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CLEAR     wa_constant.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   REFRESH   t_constant[].&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;fetching all company codes and document types from&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;zconstant table&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;   SELECT * FROM zconstant&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   INTO TABLE t_constant&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   WHERE objid = c_objectid_070&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   AND   pname = sy-repid.&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;comparing comapny codes with NA company codes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   READ TABLE t_constant INTO wa_constant&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   WITH KEY fval = wa_header-bukrs&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   TRANSPORTING NO FIELDS.&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Comparing document types existing in the&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;program if company codes exist&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF sy-subrc EQ 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     READ TABLE t_constant INTO wa_constant&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     WITH KEY fval = wa_header-blart&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     TRANSPORTING NO FIELDS.&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;if company codes relates to north america and document type is&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;(KR, KG, KA, DR, DG, DA and YI) calling transaction FB01&lt;/P&gt;&lt;/LI&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;       wa_bbkpf-tcode =   'FB01'.&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;if company code exist but document type does not exist&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;continue with normal processing&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     ELSEIF p_act EQ 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       wa_bbkpf-tcode =   'FBS1'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     ELSEIF p_park EQ 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       wa_bbkpf-tcode =   'FBV1'.&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;LI level="2" type="ul"&gt;&lt;P&gt;if company code does not exist continue with normal processing&lt;/P&gt;&lt;/LI&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ELSEIF p_act EQ 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     wa_bbkpf-tcode =   'FBS1'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ELSEIF p_park EQ 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     wa_bbkpf-tcode =   'FBV1'.&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;-&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt; End of Insertion SRR-23776         "  DEVK928551&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   WRITE: wa_header-budat TO wa_bbkpf-budat.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   WRITE: wa_header-bldat TO wa_bbkpf-bldat.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   WRITE: wa_header-stodt TO wa_bbkpf-stodt.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   wa_bbkpf-blart = wa_header-blart.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   wa_bbkpf-bukrs = wa_header-bukrs.&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;  wa_bbkpf-monat = wa_header-monat.       "  DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   wa_bbkpf-xmwst = 'X'.    "Calculate tax automatically&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   wa_bbkpf-waers = wa_header-waers.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   wa_bbkpf-xblnr = wa_header-xblnr.&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;   wa_bbkpf-kursf = wa_header-kursf.      "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   wa_bbkpf-bktxt = wa_header-bktxt.&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;   wa_bbkpf-wwert = wa_header-wwert.      "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   wa_bbkpf-stgrd = wa_header-stgrd.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;***--- Assigning the Structures to field symbols&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ASSIGN wa_bbkpf TO &amp;lt;f1&amp;gt;.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   DO v_no_of_fieldsin_bbkpf TIMES.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     ASSIGN COMPONENT sy-index OF STRUCTURE &amp;lt;f1&amp;gt; TO &amp;lt;f3&amp;gt;.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IF &amp;lt;f3&amp;gt; IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        &amp;lt;f3&amp;gt; = c_sep.&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;   APPEND  wa_bbkpf TO tfile.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CLEAR wa_bbkpf.                      "DEVK928551&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;ENDFORM.                    " f_create_bbkpf&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  f_create_bbseg&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;     This Perform is commented for SRR-23649&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     This functionality is called in previous&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     perfrom split_data.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM f_create_bbseg .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; DATA v_flag(1).&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; DATA v_no_of_fieldsin_bbseg TYPE i.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**-- Getting the No of Fields in the Structure ZBSEG&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; DESCRIBE FIELD wa_bbseg TYPE v_flag&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                   COMPONENTS v_no_of_fieldsin_bbseg.&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; CLEAR wa_bbseg.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;----- Begin of change SRR23649&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;changes include renaming of t_item to&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;t_item_temp&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-stype  = 2.              "Record Type&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-tbnam  = 'BBSEG'.        "Table Name&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-kostl  = t_item-kostl.   "Cost Centre&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-prctr  = t_item-prctr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-newbs  = t_item-bschl.    "Posting Key&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-newko  = t_item-hkont.    "Ac No.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-wrbtr  = t_item-wrbtr.    "Amount in Doc Currency&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;wa_bbseg-rke_bukrs  = t_item-bukrs. "Company code     "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-pprct  = t_item-pprct.    "Partner Profit Center&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt; wa_bbseg-vbund  = t_item-vbund.    "Trading partner  "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-aufnr  = t_item-aufnr.    "Order&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-mwskz  = t_item-mwskz.    "Tax Code&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-sgtxt  = t_item-sgtxt.    "Line item text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-zzcgrp = t_item-zzcgrp.   "Customer Group&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-zzplat = t_item-zzplat.   "Platform&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;wa_bbseg-newbw  = t_item-bewar.    "Transaction Type&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-projk  = t_item-projk.    "WBS Element&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-zuonr  = t_item-zuonr.    "Assignment no.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;**Begin of deletion DEVK919700&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt; wa_bbseg-dmbtr  = t_item-dmbtr.    "Amount in local Currency&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;**End of deletion DEVK919700&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-pernr  = t_item-pernr.    "Personnel No.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-bewar  = t_item-bewar.    "Transaction type&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;***--- Filling with Special Character.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ASSIGN wa_bbseg TO &amp;lt;f1&amp;gt;.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; DO v_no_of_fieldsin_bbseg TIMES.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ASSIGN COMPONENT sy-index OF STRUCTURE &amp;lt;f1&amp;gt; TO &amp;lt;f3&amp;gt;.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF &amp;lt;f3&amp;gt; IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     &amp;lt;f3&amp;gt; = c_sep.&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; APPEND wa_bbseg  TO tfile.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " f_create_bbseg&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  f_fill_bbkpf&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     Perform to fill bbkpf table which will be used to fill&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     final internal structure tfile&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;form f_fill_bbkpf .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :  l_con_date(10) TYPE c,&lt;/P&gt;&lt;P&gt;        v_no_of_fieldsin_bbkpf TYPE i,&lt;/P&gt;&lt;P&gt;        v_flag.&lt;/P&gt;&lt;P&gt;*-- Getting the No of Fields in the Structure BBKPF&lt;/P&gt;&lt;P&gt;  DESCRIBE FIELD wa_bbkpf TYPE v_flag&lt;/P&gt;&lt;P&gt;                    COMPONENTS v_no_of_fieldsin_bbkpf.&lt;/P&gt;&lt;P&gt;  CLEAR v_flag.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR wa_bbkpf.&lt;/P&gt;&lt;P&gt;    wa_bbkpf-stype = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Begin of insertion SRR-23776            "  DEVK928551&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR     wa_constant.&lt;/P&gt;&lt;P&gt;    REFRESH   t_constant[].&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fetching all company codes and document types from&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;zconstant table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT * FROM zconstant&lt;/P&gt;&lt;P&gt;    INTO TABLE t_constant&lt;/P&gt;&lt;P&gt;    WHERE objid = c_objectid_070&lt;/P&gt;&lt;P&gt;    AND   pname = sy-repid.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;comparing comapny codes with NA company codes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    READ TABLE t_constant INTO wa_constant&lt;/P&gt;&lt;P&gt;    WITH KEY fval = wa_header-bukrs&lt;/P&gt;&lt;P&gt;    TRANSPORTING NO FIELDS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Comparing document types existing in the&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;program if company codes exist&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      READ TABLE t_constant INTO wa_constant&lt;/P&gt;&lt;P&gt;      WITH KEY fval = wa_header-blart&lt;/P&gt;&lt;P&gt;      TRANSPORTING NO FIELDS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if company codes relates to north america and document type is&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;(KR, KG, KA, DR, DG, DA and YI) calling transaction FB01&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        wa_bbkpf-tcode =   'FB01'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if company code exist but document type does not exist&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;continue with normal processing&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      ELSEIF p_act EQ 'X'.&lt;/P&gt;&lt;P&gt;        wa_bbkpf-tcode =   'FBS1'.&lt;/P&gt;&lt;P&gt;      ELSEIF p_park EQ 'X'.&lt;/P&gt;&lt;P&gt;        wa_bbkpf-tcode =   'FBV1'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if company code does not exist continue with normal processing&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSEIF p_act EQ 'X'.&lt;/P&gt;&lt;P&gt;      wa_bbkpf-tcode =   'FBS1'.&lt;/P&gt;&lt;P&gt;    ELSEIF p_park EQ 'X'.&lt;/P&gt;&lt;P&gt;      wa_bbkpf-tcode =   'FBV1'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----End of insertion SRR-23776            "  DEVK928551&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    wa_header-header = v_h.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE: wa_header-budat TO wa_bbkpf-budat.&lt;/P&gt;&lt;P&gt;    WRITE: wa_header-bldat TO wa_bbkpf-bldat.&lt;/P&gt;&lt;P&gt;    WRITE: wa_header-stodt TO wa_bbkpf-stodt.&lt;/P&gt;&lt;P&gt;    wa_bbkpf-blart = wa_header-blart.&lt;/P&gt;&lt;P&gt;    wa_bbkpf-bukrs = wa_header-bukrs.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  wa_bbkpf-monat = wa_header-monat.       "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  wa_bbkpf-xmwst = 'X'.    "Calculate tax automatically     SRR-25080&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    wa_bbkpf-waers = wa_header-waers.&lt;/P&gt;&lt;P&gt;    wa_bbkpf-xblnr = wa_header-xblnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   wa_bbkpf-kursf = wa_header-kursf.      "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    wa_bbkpf-bktxt = wa_header-bktxt.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   wa_bbkpf-wwert = wa_header-wwert.      "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    wa_bbkpf-stgrd = wa_header-stgrd.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**--- Assigning the Structures to field symbols&lt;/P&gt;&lt;P&gt;    ASSIGN wa_bbkpf TO  = c_sep.&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;*SRR-25080 Begin&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   APPEND  wa_bbkpf TO t1_file.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CLEAR wa_bbkpf.                         "DEVK928551&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*SRR-25080 End.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " f_fill_bbkpf&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_bbseg&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;      Filling item level details in final file&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      tfile&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form fill_bbseg .&lt;/P&gt;&lt;P&gt;DATA v_flag(1).&lt;/P&gt;&lt;P&gt;   wa_item-item = 'i'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         DATA v_flag(1).&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA v_no_of_fieldsin_bbseg TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-- Getting the No of Fields in the Structure ZBSEG&lt;/P&gt;&lt;P&gt;  DESCRIBE FIELD wa_bbseg TYPE v_flag&lt;/P&gt;&lt;P&gt;                    COMPONENTS v_no_of_fieldsin_bbseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR wa_bbseg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;----- Begin of change SRR23649&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;changes include renaming of t_item to&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;t_item_temp&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF wa_item-bschl is not initial.&lt;/P&gt;&lt;P&gt;  wa_bbseg-stype  = 2.              "Record Type&lt;/P&gt;&lt;P&gt;  wa_bbseg-tbnam  = 'BBSEG'.        "Table Name&lt;/P&gt;&lt;P&gt;  wa_bbseg-kostl  = wa_item-kostl.   "Cost Centre&lt;/P&gt;&lt;P&gt;  wa_bbseg-prctr  = wa_item-prctr.&lt;/P&gt;&lt;P&gt;  wa_bbseg-newbs  = wa_item-bschl.    "Posting Key&lt;/P&gt;&lt;P&gt;  wa_bbseg-newko  = wa_item-hkont.    "Ac No.&lt;/P&gt;&lt;P&gt;  wa_bbseg-wrbtr  = wa_item-wrbtr.    "Amount in Doc Currency&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;wa_bbseg-rke_bukrs  = t_item-bukrs. "Company code     "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  wa_bbseg-pprct  = wa_item-pprct.    "Partner Profit Center&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-vbund  = t_item-vbund.    "Trading partner  "DEVK919700&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  wa_bbseg-aufnr  = wa_item-aufnr.    "Order&lt;/P&gt;&lt;P&gt;  wa_bbseg-mwskz  = wa_item-mwskz.    "Tax Code&lt;/P&gt;&lt;P&gt;  wa_bbseg-sgtxt  = wa_item-sgtxt.    "Line item text&lt;/P&gt;&lt;P&gt;  wa_bbseg-zzcgrp = wa_item-zzcgrp.   "Customer Group&lt;/P&gt;&lt;P&gt;  wa_bbseg-zzplat = wa_item-zzplat.   "Platform&lt;/P&gt;&lt;P&gt;  wa_bbseg-zzpdt  = wa_item-zzpdt.    "Product Code     "SIR-06394&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;wa_bbseg-newbw  = t_item-bewar.    "Transaction Type&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  wa_bbseg-projk  = wa_item-projk.    "WBS Element&lt;/P&gt;&lt;P&gt;  wa_bbseg-zuonr  = wa_item-zuonr.    "Assignment no.&lt;/P&gt;&lt;P&gt;*Begin of deletion DEVK919700&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; wa_bbseg-dmbtr  = t_item-dmbtr.    "Amount in local Currency&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*End of deletion DEVK919700&lt;/P&gt;&lt;P&gt;  wa_bbseg-pernr  = wa_item-pernr.    "Personnel No.&lt;/P&gt;&lt;P&gt;  wa_bbseg-bewar  = wa_item-bewar.    "Transaction type&lt;/P&gt;&lt;P&gt;**--- Filling with Special Character.&lt;/P&gt;&lt;P&gt;  ASSIGN wa_bbseg TO  = c_sep.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SRR-25080 Begin.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  move wa_bbseg to wa_temp.&lt;/P&gt;&lt;P&gt;  wa_temp-posnr = wa_item-posnr.&lt;/P&gt;&lt;P&gt;  APPEND wa_temp to t_temp.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---" /&gt;&lt;P&gt; End of Insertion SRR  23649      "  DEVK928551&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " fill_bbseg&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Hema&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 02 Aug 2007 05:07:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574228#M588121</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-02T05:07:52Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574229#M588122</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Hema,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Define numeric field as CHAR fields in the program and while writing them instead of '=' use WRITE &amp;lt;A&amp;gt; TO &amp;lt;B&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Atish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 02 Aug 2007 05:09:58 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574229#M588122</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-02T05:09:58Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574230#M588123</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;currency value change in charter type.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 02 Aug 2007 05:10:23 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574230#M588123</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-02T05:10:23Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574231#M588124</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; I have declared v_wrbtr as char type only.But still when i try to process the session for the 3rd test case (1.293,00) in the o/p i am getting 1.29300 and error as 'enter numeric value'.I have tried this for all the decimal notations.Even then it is not working.Could u pls suggest me a proper solution for this?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Hema&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 02 Aug 2007 05:21:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574231#M588124</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-02T05:21:00Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574232#M588125</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Hema,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have you tried WRITE TO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Atish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 02 Aug 2007 05:25:58 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574232#M588125</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-02T05:25:58Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574233#M588126</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; can u give me the syntax of that statement WRITE TO?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Hema&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 02 Aug 2007 05:31:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574233#M588126</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-02T05:31:55Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574234#M588127</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Hema,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Just looked throgh your code, What you are done is used REPLACE ',' &lt;/P&gt;&lt;P&gt;Insteas use REPLACE ALL OCCURANCES OF ','&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Atish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 02 Aug 2007 05:36:45 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574234#M588127</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-02T05:36:45Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574235#M588128</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi hema,&lt;/P&gt;&lt;P&gt; Please try to this:&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt; DATA : V_AMOUNT LIKE BSID-WRBTR.     "DECIMALS 2.&lt;/P&gt;&lt;P&gt; DATA: NUMBER TYPE P DECIMALS 2.&lt;/P&gt;&lt;P&gt;  MOVE '1293.00' TO NUMBER.&lt;/P&gt;&lt;P&gt;  V_AMOUNT = NUMBER .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We will take care while concern with quantity and currency fields.&lt;/P&gt;&lt;P&gt;Hope this helps you. Reply for queries, shall post the updates. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards.  &lt;/P&gt;&lt;P&gt;Kumar.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 02 Aug 2007 05:41:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574235#M588128</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-02T05:41:31Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574236#M588129</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Atish,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; I have tried using this 'replace all occurances of' but still for the 3rd test case it is not working.In the o/p i am getting 1,29300 and error as 'enter numeric value'.&lt;/P&gt;&lt;P&gt;Here the problem is while processing all the comas should be replaced by decimals and decimals by comas and in the o/p again it has to be replaced back to its normal value as given in the test case.like for example if 1.293,00 is the test case value and it is changed to 1,293.00 during processing,but in the o/p i should get 1.293,00&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What is the logic for this?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Hema&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 02 Aug 2007 09:49:56 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574236#M588129</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-02T09:49:56Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574237#M588130</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I realise this is an old post, but I recently had an issue like this, which was caused by a conflict with the Default Decimal Point flag in the User Preferences (see SU01).&lt;/P&gt;&lt;P&gt;I got around it by checking that value with the following select statement (cv_dcpfm is typed as xudcpfm):&lt;/P&gt;&lt;P&gt;___________________________________________________________________&lt;/P&gt;&lt;P&gt;SELECT SINGLE dcpfm FROM usr01 INTO cv_dcpfm WHERE bname = sy-uname.&lt;/P&gt;&lt;P&gt;___________________________________________________________________&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Based on the results I used a CASE statement to decide whether to REPLACE the commas or not.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Apr 2016 16:37:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574237#M588130</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2016-04-21T16:37:20Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574238#M588131</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;it might be due to the the default parameters of your SAP user ID from which you are logging into the system. Check in transaction SU01 or SU01D.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 22 Apr 2016 06:52:58 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2574238#M588131</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2016-04-22T06:52:58Z</dc:date>
    </item>
  </channel>
</rss>

