<?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/2625907#M603357</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;have you tried to use the REPLACE statement in order to change the '.' with ',' or the other way round?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Alexandros.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 01 Aug 2007 12:49:38 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-08-01T12:49:38Z</dc:date>
    <item>
      <title>BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2625906#M603356</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;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;P&gt;       v_wrbtr1(13) TYPE c,&lt;/P&gt;&lt;P&gt;       v_wrbtr2(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;   CALL FUNCTION 'CURRENCY_AMOUNT_SAP_TO_IDOC'&lt;/P&gt;&lt;P&gt;     EXPORTING&lt;/P&gt;&lt;P&gt;       currency          = wa_header-waers&lt;/P&gt;&lt;P&gt;       sap_amount        = wa_item-wrbtr&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IDOC_AMOUNT       =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;             .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   REPLACE ',' WITH space INTO v_wrbtr.&lt;/P&gt;&lt;P&gt;  condense v_wrbtr no-gaps.&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;endform.                    " fill_bbseg&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;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'CURRENCY_AMOUNT_SAP_TO_IDOC'&lt;/P&gt;&lt;P&gt;     EXPORTING&lt;/P&gt;&lt;P&gt;       currency          = wa_header-waers&lt;/P&gt;&lt;P&gt;       sap_amount        = wa_item-wrbtr&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IDOC_AMOUNT       =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;             .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   REPLACE ',' WITH space INTO v_wrbtr.&lt;/P&gt;&lt;P&gt;  condense v_wrbtr no-gaps.&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;&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>Wed, 01 Aug 2007 12:44:42 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2625906#M603356</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-01T12:44:42Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2625907#M603357</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;have you tried to use the REPLACE statement in order to change the '.' with ',' or the other way round?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Alexandros.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Aug 2007 12:49:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2625907#M603357</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-01T12:49:38Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2625908#M603358</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi &lt;/P&gt;&lt;P&gt;when you use currency &lt;/P&gt;&lt;P&gt;quantity &lt;/P&gt;&lt;P&gt;values will be defined as character type of some length&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;then u won't get any problem &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward if use full&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ex&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;curency(30) type c.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Aug 2007 12:52:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2625908#M603358</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-01T12:52:22Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2625909#M603359</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Before passing the values , write this piece of code it will solve your problem&lt;/P&gt;&lt;P&gt;Data: AMOUNT(18).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MOVE currency-wrbtr TO amount.&lt;/P&gt;&lt;P&gt;DO.&lt;/P&gt;&lt;P&gt;REPLACE ',' with ' ' INTO AMOUNT.&lt;/P&gt;&lt;P&gt;IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;CONDENSE AMOUNT WITH NO-GAPS.&lt;/P&gt;&lt;P&gt;EXIT.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pass AMOUNT instead of currency-wrb to your BDC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;SaiRam&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Aug 2007 12:56:22 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2625909#M603359</guid>
      <dc:creator>former_member196280</dc:creator>
      <dc:date>2007-08-01T12:56:22Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2625910#M603360</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;just refer to the link below&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sapmaterial.com/?gclid=CN322K28t4sCFQ-WbgodSGbK2g" target="test_blank"&gt;http://www.sapmaterial.com/?gclid=CN322K28t4sCFQ-WbgodSGbK2g&lt;/A&gt;    &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;step by step procedure with screen shots&amp;lt;/b&amp;gt;		&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;ravish&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;plz dont forget to reward points if helpful&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Aug 2007 12:58:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2625910#M603360</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-01T12:58:38Z</dc:date>
    </item>
    <item>
      <title>Re: BDC</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2625911#M603361</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;try...&lt;/P&gt;&lt;P&gt;data: v_amt(18).&lt;/P&gt;&lt;P&gt;move wrbtr to v_amt.&lt;/P&gt;&lt;P&gt;do.&lt;/P&gt;&lt;P&gt;replace ',' with ' ' into v_amt.&lt;/P&gt;&lt;P&gt;condense v_amt no-gaps.&lt;/P&gt;&lt;P&gt;enddo.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Aug 2007 12:59:30 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc/m-p/2625911#M603361</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-08-01T12:59:30Z</dc:date>
    </item>
  </channel>
</rss>

