<?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 idoc program examples in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-program-examples/m-p/1197380#M130064</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Please send me some sample exicuted complete programs regarding &amp;lt;b&amp;gt;below topics.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; a)idoc inbound development&lt;/P&gt;&lt;P&gt; b)idoc outbound development&lt;/P&gt;&lt;P&gt; c)idoc inbound process&lt;/P&gt;&lt;P&gt; d)idoc outboun process&lt;/P&gt;&lt;P&gt; e)idoc configuration&lt;/P&gt;&lt;P&gt; f)idoc inbound scheduling.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  in process methods:&lt;/P&gt;&lt;P&gt;         a)from message control.&lt;/P&gt;&lt;P&gt;         b)from stand alone programs.&lt;/P&gt;&lt;P&gt;         c)from change pointers.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Please send me reply&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 11 Jan 2006 14:09:32 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-01-11T14:09:32Z</dc:date>
    <item>
      <title>idoc program examples</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-program-examples/m-p/1197380#M130064</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Please send me some sample exicuted complete programs regarding &amp;lt;b&amp;gt;below topics.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; a)idoc inbound development&lt;/P&gt;&lt;P&gt; b)idoc outbound development&lt;/P&gt;&lt;P&gt; c)idoc inbound process&lt;/P&gt;&lt;P&gt; d)idoc outboun process&lt;/P&gt;&lt;P&gt; e)idoc configuration&lt;/P&gt;&lt;P&gt; f)idoc inbound scheduling.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  in process methods:&lt;/P&gt;&lt;P&gt;         a)from message control.&lt;/P&gt;&lt;P&gt;         b)from stand alone programs.&lt;/P&gt;&lt;P&gt;         c)from change pointers.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Please send me reply&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Jan 2006 14:09:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-program-examples/m-p/1197380#M130064</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-01-11T14:09:32Z</dc:date>
    </item>
    <item>
      <title>Re: idoc program examples</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-program-examples/m-p/1197381#M130065</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;see ale edi idocs by aravind nagpal, in there example programms are there. and see the help.sap.com and sapgenie.com,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 20 Jan 2006 15:18:32 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-program-examples/m-p/1197381#M130065</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-01-20T15:18:32Z</dc:date>
    </item>
    <item>
      <title>Re: idoc program examples</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-program-examples/m-p/1197382#M130066</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;   Check the below code for sample Outbound IDOC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT ZF_IDOC_OUT_CDS_REF_EXP NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;                               LINE-SIZE 165&lt;/P&gt;&lt;P&gt;                               LINE-COUNT 65&lt;/P&gt;&lt;P&gt;                               MESSAGE-ID ZF_0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Program Name      :      ZF_IDOC_OUT_CDS_REF_EXP&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Title             :      GM Interface from SAP to CDS Refunds &amp;amp;&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                             Expenditures&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                            interagency invs&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Analyst           :&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Developer         :&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Date              :&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Description       :      Daily Interface of Federal Grant related&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                            expenditure and refund transactions to&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                            CDS.Only records for Business area&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                            implemented on SAP ( begining 7/1 wave 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                            agencies,begining 10/1 wave 1&amp;amp;2 agencies,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                            begining 1/1/03 wave 1,2,&amp;amp;3 agencies )&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                            should be included on the file.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   Special Instruction: 	 --&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MODIFICATION LOG&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Date     	Correction No.   Changed by 	Description&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;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Constants&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;constants : c_idoc_type      like edidc-idoctp value 'ZCDS_REF_EXP01',&lt;/P&gt;&lt;P&gt;                                                 " used for idoc type&lt;/P&gt;&lt;P&gt;            c_message_type   like edmsg-msgtyp value   'ZCDS_REF_EXP',&lt;/P&gt;&lt;P&gt;                                                 " used for message type&lt;/P&gt;&lt;P&gt;            c_rcvprn         like edidc-rcvprn value 'COPA_BC',&lt;/P&gt;&lt;P&gt;                                                 " used for recieving&lt;/P&gt;&lt;P&gt;                                                 " port&lt;/P&gt;&lt;P&gt;            c_h              value 'H',          " header segment -&lt;/P&gt;&lt;P&gt;                                                 " hdr_ind&lt;/P&gt;&lt;P&gt;            c_bmis(4)        value 'BMIS',       " header segment -&lt;/P&gt;&lt;P&gt;                                                 " ag_id&lt;/P&gt;&lt;P&gt;            c_7177877901(10) VALUE '7177877901', " header segment -&lt;/P&gt;&lt;P&gt;                                                 " trans_ag_ph&lt;/P&gt;&lt;P&gt;            C_AFG840M01(9)   VALUE 'AFG840M01',  " header segment -&lt;/P&gt;&lt;P&gt;                                                 " file_lbl&lt;/P&gt;&lt;P&gt;            C_P              VALUE 'P',          " header segment -&lt;/P&gt;&lt;P&gt;                                                 " file_typ_cd&lt;/P&gt;&lt;P&gt;            C_FILLER         VALUE '',           " header segment -&lt;/P&gt;&lt;P&gt;                                                 " filler&lt;/P&gt;&lt;P&gt;            C_COPA(4)        VALUE 'COPA',       " Financial management&lt;/P&gt;&lt;P&gt;                                                 " area&lt;/P&gt;&lt;P&gt;            C_CON(3)         VALUE 'CON',        " Control segment-&lt;/P&gt;&lt;P&gt;                                                 " maint-cd&lt;/P&gt;&lt;P&gt;            C_T              VALUE 'T',          " Trailer segment-&lt;/P&gt;&lt;P&gt;                                                 " trlr-ind&lt;/P&gt;&lt;P&gt;            C_54(2)          VALUE '54',         " constant for value&lt;/P&gt;&lt;P&gt;                                                 " type&lt;/P&gt;&lt;P&gt;            C_95(2)          VALUE '95',         " constant for value&lt;/P&gt;&lt;P&gt;                                                 " type&lt;/P&gt;&lt;P&gt;            C_66(2)          VALUE '66',         " constant for value&lt;/P&gt;&lt;P&gt;                                                 " type&lt;/P&gt;&lt;P&gt;            C_999900(6)      VALUE '999900',     " Constant for obj.no&lt;/P&gt;&lt;P&gt;            C_XX999999(8)    value 'XX999999',   " constant for funding&lt;/P&gt;&lt;P&gt;                                                 " source&lt;/P&gt;&lt;P&gt;            C_KG(2)          VALUE 'KG',         " Constant for document&lt;/P&gt;&lt;P&gt;                                                 " type&lt;/P&gt;&lt;P&gt;            C_REF(3)         VALUE 'REF',        " maintnence code 'REF'&lt;/P&gt;&lt;P&gt;            C_EXP(3)         VALUE 'EXP',        " maintnence code 'EXP'&lt;/P&gt;&lt;P&gt;            C_ZQ(2)          VALUE 'ZQ',         " Constant for document&lt;/P&gt;&lt;P&gt;                                                 " type&lt;/P&gt;&lt;P&gt;            C_VT(2)          VALUE 'VT',         " Constant for document&lt;/P&gt;&lt;P&gt;                                                 " type&lt;/P&gt;&lt;P&gt;            C_KR(2)          VALUE 'KR',         " Constant for document&lt;/P&gt;&lt;P&gt;                                                 " type&lt;/P&gt;&lt;P&gt;            C_460(3)         VALUE '460',        " Constant for item&lt;/P&gt;&lt;P&gt;                                                 " text&lt;/P&gt;&lt;P&gt;            C_461(3)         VALUE '461',        " Constant for item&lt;/P&gt;&lt;P&gt;                                                 " text&lt;/P&gt;&lt;P&gt;            C_462(3)         VALUE '462',        " Constant for item&lt;/P&gt;&lt;P&gt;                                                 " text&lt;/P&gt;&lt;P&gt;            C_465(3)         VALUE '465',        " Constant for item&lt;/P&gt;&lt;P&gt;                                                 " text&lt;/P&gt;&lt;P&gt;            C_470(3)         VALUE '470',        " Constant for item&lt;/P&gt;&lt;P&gt;                                                 " text&lt;/P&gt;&lt;P&gt;            C_1300500(7)     VALUE '1300500',    " Debit G/l acct.no&lt;/P&gt;&lt;P&gt;            C_4000200(7)     VALUE '4000200',    " Credit G/l acct.no&lt;/P&gt;&lt;P&gt;            C_4000300(7)     VALUE '4000300',    " Credit G/l acct.no&lt;/P&gt;&lt;P&gt;            C_TCODE          LIKE TSTC-TCODE VALUE 'FB50',    " Trans.&lt;/P&gt;&lt;P&gt;                                                              " code&lt;/P&gt;&lt;P&gt;            C_UPDATE         VALUE 'S',          " Call trans. update&lt;/P&gt;&lt;P&gt;                                                 " mode&lt;/P&gt;&lt;P&gt;            C_MODE           VALUE 'N',          " mode for call trans.&lt;/P&gt;&lt;P&gt;            C_GROUP          LIKE APQI-GROUPID VALUE 'SFB50'," Session&lt;/P&gt;&lt;P&gt;                                                              " group id&lt;/P&gt;&lt;P&gt;            c_sb(2)          value 'SB',         " document type in&lt;/P&gt;&lt;P&gt;                                                 " BDC&lt;/P&gt;&lt;P&gt;            c_s              value 'S',          " Debit acct.type&lt;/P&gt;&lt;P&gt;            c_C0(2)          value 'C0',         " Tax code&lt;/P&gt;&lt;P&gt;            C_P004(4)        value 'P004',       " payment term for&lt;/P&gt;&lt;P&gt;                                                 " pay upon receipt&lt;/P&gt;&lt;P&gt;            c_y3(3)          value 'Y%3',        " constant for acct.&lt;/P&gt;&lt;P&gt;                                                 " type&lt;/P&gt;&lt;P&gt;            C_HEADER_SEGMENT LIKE EDIDD-SEGNAM VALUE 'Z1BMISHDR' ,&lt;/P&gt;&lt;P&gt;                                                 " header segment name&lt;/P&gt;&lt;P&gt;            C_DATA_SEGMENT   LIKE EDIDD-SEGNAM VALUE 'Z1BMISDATA',&lt;/P&gt;&lt;P&gt;                                                 " data segment name&lt;/P&gt;&lt;P&gt;            C_CONTROL_SEGMENT LIKE EDIDD-SEGNAM VALUE 'Z1BMISCON',&lt;/P&gt;&lt;P&gt;                                                 " control segment name&lt;/P&gt;&lt;P&gt;            C_TRAILER_SEGMENT LIKE EDIDD-SEGNAM VALUE 'Z1BMISTRLR',&lt;/P&gt;&lt;P&gt;                                                 " trailer segment name&lt;/P&gt;&lt;P&gt;            c_x         value 'X',               " To manipulate flag&lt;/P&gt;&lt;P&gt;            c_success type i value 1,                " Success Report&lt;/P&gt;&lt;P&gt;            c_failure type i value 2,                " Failure Report&lt;/P&gt;&lt;P&gt;            c_1              value '1',              " outbound&lt;/P&gt;&lt;P&gt;                                                     " indicator&lt;/P&gt;&lt;P&gt;            c_orp(3)          value 'OR%',           " constant for&lt;/P&gt;&lt;P&gt;                                                     " object number&lt;/P&gt;&lt;P&gt;            c_50p(3)          value '50%',           " constant for fund&lt;/P&gt;&lt;P&gt;            c_70p(3)          value '70%',           " constant for fund&lt;/P&gt;&lt;P&gt;            c_80p(3)          value '80%',           " constant for fund&lt;/P&gt;&lt;P&gt;            c_54P(3)         value '54%',            " constant for&lt;/P&gt;&lt;P&gt;                                                     " value type&lt;/P&gt;&lt;P&gt;            c_66P(3)          value '66%',           " constant for&lt;/P&gt;&lt;P&gt;                                                     " value type&lt;/P&gt;&lt;P&gt;            c_95P(3)          value '95%',           " constant for&lt;/P&gt;&lt;P&gt;                                                     " value type&lt;/P&gt;&lt;P&gt;            c_and(1)          value '&amp;amp;'.&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;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Table Declarations&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;tables : fmifiit,              " FI Line Item Table in Funds Management&lt;/P&gt;&lt;P&gt;         bkpf,                 " Accounting Document Header&lt;/P&gt;&lt;P&gt;         aufk,                 " Order master data&lt;/P&gt;&lt;P&gt;         edp13.                " Partner Profile: Outbound (technical&lt;/P&gt;&lt;P&gt;                               " parameters)&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;Variables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;data : v_total_records type i,              " total number of records&lt;/P&gt;&lt;P&gt;       v_total_refs type i,                 " total number of refund&lt;/P&gt;&lt;P&gt;                                            " records&lt;/P&gt;&lt;P&gt;       v_total_exps type i,                 " total number of&lt;/P&gt;&lt;P&gt;                                            " expenditure records&lt;/P&gt;&lt;P&gt;       v_total_exp_trbtr type p,            " total refund&lt;/P&gt;&lt;P&gt;       v_total_ref_trbtr type p,            " total expenditure&lt;/P&gt;&lt;P&gt;       v_date like sy-datum,&lt;/P&gt;&lt;P&gt;       V_MESSTXT(99)   TYPE C,              " messasge text&lt;/P&gt;&lt;P&gt;       v_line          type i,              " For line number&lt;/P&gt;&lt;P&gt;       v_amount LIKE FMIFIIT-trbtr       ,  " For summing amounts&lt;/P&gt;&lt;P&gt;       v_cost_center   like zfi_t_vfc-zfcrf," cost center&lt;/P&gt;&lt;P&gt;       v_mm(2),                             " to store Month&lt;/P&gt;&lt;P&gt;       v_dd(2),                             " to store Day&lt;/P&gt;&lt;P&gt;       v_yy(2),                             " to store year&lt;/P&gt;&lt;P&gt;       v_mmddyy(6),                         " date in MMDDYY format&lt;/P&gt;&lt;P&gt;       v_acc_number(7),                     " Account number&lt;/P&gt;&lt;P&gt;       v_lines        type i,               " Line number in error tab&lt;/P&gt;&lt;P&gt;       v_trbtr(15),&lt;/P&gt;&lt;P&gt;       v_zterm like lfb1-zterm,             " Payment terms&lt;/P&gt;&lt;P&gt;       v_currency      like  fmifiit-twaer,&lt;/P&gt;&lt;P&gt;       v_title like sy-lisel,               " Report Title&lt;/P&gt;&lt;P&gt;       v_top_amount(14),                    " field to be  passed to&lt;/P&gt;&lt;P&gt;                                            " Fun.Mod which converts&lt;/P&gt;&lt;P&gt;                                            " from lEGACY TO LOCAL DATA&lt;/P&gt;&lt;P&gt;       v_linc(4),&lt;/P&gt;&lt;P&gt;       v_amountc(13).&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;Flags&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;data : f_delete,        " to delete record from it_bkpf_fmifiit&lt;/P&gt;&lt;P&gt;       f_color,         " Flag for color swap&lt;/P&gt;&lt;P&gt;       f_flag type i,   " Flag to set report title in&lt;/P&gt;&lt;P&gt;       f_group .        " to indicate batch input session is open&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;Internal Tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;structures  to be filled with  segment data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : X_Z1BMISHDR like Z1BMISHDR,&lt;/P&gt;&lt;P&gt;       X_Z1BMISDATA like Z1BMISDATA,&lt;/P&gt;&lt;P&gt;       X_Z1BMISCON  like Z1BMISCON,&lt;/P&gt;&lt;P&gt;       X_Z1BMISTRLR like Z1BMISTRLR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;to hold data from bkpf and fmifiit tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : begin of i_bkpf_fmifiit occurs 0,&lt;/P&gt;&lt;P&gt;        int_order(12)  type  c,                  " internal order number&lt;/P&gt;&lt;P&gt;        fonds          like  fmifiit-fonds,      " Fund&lt;/P&gt;&lt;P&gt;        fmbelnr        like  fmifiit-fmbelnr,    " Document number for a&lt;/P&gt;&lt;P&gt;                                                 " TR-FM line item&lt;/P&gt;&lt;P&gt;        KNBELNR        like  fmifiit-KNBELNR,    " FI document number&lt;/P&gt;&lt;P&gt;        bus_area       like  fmifiit-bus_area,   " Business Area&lt;/P&gt;&lt;P&gt;        objnrz         like  fmifiit-objnrz,     " Object number&lt;/P&gt;&lt;P&gt;        wrttp          like  fmifiit-wrttp,      " Value type&lt;/P&gt;&lt;P&gt;        trbtr          like  fmifiit-trbtr,      " Amount in trans.&lt;/P&gt;&lt;P&gt;                                                 " currency&lt;/P&gt;&lt;P&gt;        sgtxt          like  fmifiit-sgtxt,      " Item Text&lt;/P&gt;&lt;P&gt;        twaer          like  fmifiit-twaer,&lt;/P&gt;&lt;P&gt;        blart          like  bkpf-blart,         " Document type&lt;/P&gt;&lt;P&gt;        auart          like  aufk-auart,         " Order Type&lt;/P&gt;&lt;P&gt;        budat          like  bkpf-budat,         " Posting date&lt;/P&gt;&lt;P&gt;        bldat          like  bkpf-bldat,         " Document date&lt;/P&gt;&lt;P&gt;       end of i_bkpf_fmifiit.&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;for program messages&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : begin of i_prog_msg occurs 0,&lt;/P&gt;&lt;P&gt;        pmsg1(50),&lt;/P&gt;&lt;P&gt;        pmsg2(50),&lt;/P&gt;&lt;P&gt;       end of i_prog_msg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;control record for IDOC&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : i_edidd like edidd occurs 0 with header line.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data Record for IDOC&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : begin of i_edidc occurs 1.&lt;/P&gt;&lt;P&gt;        include structure edidc.&lt;/P&gt;&lt;P&gt;data : end of i_edidc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Status record for IDOC&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;data : begin of i_edidc_comm occurs 1.&lt;/P&gt;&lt;P&gt;        include structure edidc.&lt;/P&gt;&lt;P&gt;data : end of i_edidc_comm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Batch inputdata of single transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:   I_BDCDATA LIKE BDCDATA    OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      messages of call transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:   I_MESSTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal table to store error records&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF I_ERROR_RECORDS OCCURS 0,&lt;/P&gt;&lt;P&gt;         line(4),                "(internal)inventory-managed material&lt;/P&gt;&lt;P&gt;         PMSG(30),               " program Error Message&lt;/P&gt;&lt;P&gt;         SMSG(80),               " system error message&lt;/P&gt;&lt;P&gt;       END OF I_ERROR_RECORDS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal table to store success records&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF I_success_RECORDS OCCURS 0,&lt;/P&gt;&lt;P&gt;         document_no(10),       " document no&lt;/P&gt;&lt;P&gt;         int_order(12),         " internal order number&lt;/P&gt;&lt;P&gt;         fonds(20),             " fund&lt;/P&gt;&lt;P&gt;       END OF I_success_RECORDS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : x_bkpf_fmifiit like i_bkpf_fmifiit.&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;Selection-screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="------------------------------------------------------------------" /&gt;&lt;P&gt;selection-screen : begin of block blk with frame title text-001.&lt;/P&gt;&lt;P&gt;  selection-screen skip 1.&lt;/P&gt;&lt;P&gt;  select-options : s_b_area for fmifiit-bus_area.&lt;/P&gt;&lt;P&gt;  select-options :  s_budat for bkpf-budat default sy-datum.&lt;/P&gt;&lt;P&gt;selection-screen : end of block blk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;At selection-screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;**----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;  perform fill_i_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;  if not i_bkpf_fmifiit[] is initial.&lt;/P&gt;&lt;P&gt;    perform delete_i_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; find number of records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  describe table i_bkpf_fmifiit lines v_total_records.&lt;/P&gt;&lt;P&gt;  if v_total_records = 0.&lt;/P&gt;&lt;P&gt;    message e000 with 'No records exist'(014).&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;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;Start-of-selection&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;**----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;populate control record&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform fill_control_record.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;populate header segment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform build_header_segment.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;populate data segment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform build_data_segment.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;populate control segment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform build_control_segment.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;populate trailer segment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform build_trailer_segment.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;create idoc&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform create_idocs.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;perform bdc for transaction fb50&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;perform bdc_fb50.&lt;/P&gt;&lt;P&gt;**----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;End-of-selection&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;**----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;End-of-selection.&lt;/P&gt;&lt;P&gt;perform error_messages.&lt;/P&gt;&lt;P&gt;perform sucess_messages.&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;Top-Of-Page&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;***********************************************************************&lt;/P&gt;&lt;P&gt;Top-Of-Page.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Display the Standard Heading&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_it_bkpf_fmifiit&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      subroutine to fill internal table it_bkpf_fmifiit&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM fill_i_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select fmifiit~fmbelnr&lt;/P&gt;&lt;P&gt;       fmifiit~knbelnr&lt;/P&gt;&lt;P&gt;       fmifiit~bus_area&lt;/P&gt;&lt;P&gt;       fmifiit~objnrz&lt;/P&gt;&lt;P&gt;       fmifiit~fonds&lt;/P&gt;&lt;P&gt;       fmifiit~wrttp&lt;/P&gt;&lt;P&gt;       fmifiit~trbtr&lt;/P&gt;&lt;P&gt;       fmifiit~sgtxt&lt;/P&gt;&lt;P&gt;       fmifiit~twaer&lt;/P&gt;&lt;P&gt;       bkpf~budat&lt;/P&gt;&lt;P&gt;       bkpf~blart&lt;/P&gt;&lt;P&gt;       bkpf~bldat&lt;/P&gt;&lt;P&gt;       into corresponding fields of table i_bkpf_fmifiit&lt;/P&gt;&lt;P&gt;       from bkpf&lt;/P&gt;&lt;P&gt;       join fmifiit&lt;/P&gt;&lt;P&gt;       on bkpf&lt;SUB&gt;belnr = fmifiit&lt;/SUB&gt;knbelnr&lt;/P&gt;&lt;P&gt;       where fmifiit~bus_area in s_b_area&lt;/P&gt;&lt;P&gt;       and  bkpf~budat in s_budat&lt;/P&gt;&lt;P&gt;       and  fmifiit~objnrz like c_orp&lt;/P&gt;&lt;P&gt;       and  ( fmifiit&lt;SUB&gt;fonds like c_50p or fmifiit&lt;/SUB&gt;fonds like c_70p or&lt;/P&gt;&lt;P&gt;                      fmifiit~fonds like c_80p )&lt;/P&gt;&lt;P&gt;       and  ( fmifiit&lt;SUB&gt;wrttp like c_54p or fmifiit&lt;/SUB&gt;wrttp like c_66p or&lt;/P&gt;&lt;P&gt;                      fmifiit~wrttp like c_95p ) .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_i_bkpf_fmifiit&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  delete_it_bkpf_fmifiit&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      subroutine to delete unwnated records from it_bkpf_fmifiit&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM delete_i_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;delete records which have object number 9-14 as 999900&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;or object number third character is not alphabet&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;delete i_bkpf_fmifiit&lt;/P&gt;&lt;P&gt;       where objnrz+2(1) NA sy-abcde&lt;/P&gt;&lt;P&gt;       or objnrz+8(6) EQ c_999900.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at i_bkpf_fmifiit.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;deletion indicator flag&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  clear f_delete.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;find internal order number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_bkpf_fmifiit-int_order = i_bkpf_fmifiit-objnrz+2(12).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;select order type , funding source from aufk&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select AUART zzfsc from aufk&lt;/P&gt;&lt;P&gt;               into (aufk-auart , aufk-zzfsc)&lt;/P&gt;&lt;P&gt;               up to 1 rows&lt;/P&gt;&lt;P&gt;               where AUFNR = i_bkpf_fmifiit-int_order.&lt;/P&gt;&lt;P&gt;  endselect.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if sy-subrc = 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;delete the record if funding source is XX999999&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    if aufk-zzfsc CO C_XX999999.&lt;/P&gt;&lt;P&gt;      delete i_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;      f_delete = C_X.&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;  if f_delete is initial.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;modify the order type value with value from previous select&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    i_bkpf_fmifiit-auart =  aufk-auart.&lt;/P&gt;&lt;P&gt;    v_top_amount = i_bkpf_fmifiit-trbtr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;set amount field using over punch logic&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'Z_SIGNED_NUMBER_CONV'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          GROSS_AMT       = v_top_amount&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;         CONV_AMT         =  v_top_amount&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;         INPUT_ERR        = 1&lt;/P&gt;&lt;P&gt;         WRONG_CHAR       = 2&lt;/P&gt;&lt;P&gt;         OTHERS           = 3&lt;/P&gt;&lt;P&gt;                .&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    i_bkpf_fmifiit-trbtr = v_top_amount.&lt;/P&gt;&lt;P&gt;    modify i_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " delete_i_bkpf_fmifiit&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_control_record&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      build outbound control information&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM fill_control_record.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;select control information from edp13&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; select * from edp13 into edp13&lt;/P&gt;&lt;P&gt;                            up to 1 rows&lt;/P&gt;&lt;P&gt;                            where mestyp eq c_message_type&lt;/P&gt;&lt;P&gt;                              and rcvprn =  c_rcvprn&lt;/P&gt;&lt;P&gt;                              and idoctyp = c_idoc_type.&lt;/P&gt;&lt;P&gt; endselect.&lt;/P&gt;&lt;P&gt;  i_edidc-direct = C_1.            "Outbound&lt;/P&gt;&lt;P&gt;  i_edidc-outmod = edp13-outmod.   "Collective processing&lt;/P&gt;&lt;P&gt;  i_edidc-rcvprn = edp13-rcvprn.   "Partner number of receiver&lt;/P&gt;&lt;P&gt;  i_edidc-rcvpor = edp13-rcvpor.   "Receiver port&lt;/P&gt;&lt;P&gt;  i_edidc-rcvprt = edp13-rcvprt.   "Partner type of receiver&lt;/P&gt;&lt;P&gt;  i_edidc-rcvpfc = edp13-rcvpfc.   "Partner function of recipient&lt;/P&gt;&lt;P&gt;  i_edidc-mestyp = edp13-mestyp.   "Message type&lt;/P&gt;&lt;P&gt;  i_edidc-mescod = edp13-mescod.   "Message code&lt;/P&gt;&lt;P&gt;  i_edidc-mesfct = edp13-mesfct.   "Message function&lt;/P&gt;&lt;P&gt;  i_edidc-test   = edp13-test.     "Test flag&lt;/P&gt;&lt;P&gt;  i_edidc-idoctp = edp13-idoctyp.  "Idoc Type&lt;/P&gt;&lt;P&gt;  i_edidc-cimtyp = edp13-cimtyp.   "Extension to Basic type&lt;/P&gt;&lt;P&gt;  i_edidc-std    = edp13-std.      "EDI standard&lt;/P&gt;&lt;P&gt;  i_edidc-stdvrs = edp13-stdvrs.   "Version of EDI standard&lt;/P&gt;&lt;P&gt;  i_edidc-stdmes = edp13-stdmes.   "EDI message type&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  append i_edidc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_control_record&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  build_header_segment&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      subroutine to build zibmishdr segment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM build_header_segment.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*header segment&lt;/P&gt;&lt;P&gt;X_Z1BMISHDR-hdr_ind      =   C_H.&lt;/P&gt;&lt;P&gt;X_Z1BMISHDR-ag_id        =   c_bmis.&lt;/P&gt;&lt;P&gt;X_Z1BMISHDR-trns_ag_ph   =   c_7177877901.&lt;/P&gt;&lt;P&gt;X_Z1BMISHDR-file_lbl     =   C_AFG840M01.&lt;/P&gt;&lt;P&gt;X_Z1BMISHDR-file_typ_cd  =   C_P.&lt;/P&gt;&lt;P&gt;X_Z1BMISHDR-creat_date   =   sy-datum. " format ccyymmdd&lt;/P&gt;&lt;P&gt;X_Z1BMISHDR-filler       =   C_FILLER.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign segment name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_edidd-segnam  = C_HEADER_SEGMENT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign segment data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_edidd-sdata   = X_Z1BMISHDR.&lt;/P&gt;&lt;P&gt;append i_edidd.&lt;/P&gt;&lt;P&gt;clear i_edidd.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " build_header_segment&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  build_data_segment&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      subroutine to build zibmisdata segment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM build_data_segment.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*main data segment&lt;/P&gt;&lt;P&gt;clear v_total_refs.&lt;/P&gt;&lt;P&gt;clear v_total_exps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at i_bkpf_fmifiit.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if document type is KG(Vendor Credit Memo)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  if i_bkpf_fmifiit-blart = C_KG.&lt;/P&gt;&lt;P&gt;     X_Z1BMISDATA-maint_code = C_REF.&lt;/P&gt;&lt;P&gt;     v_total_refs = v_total_refs + 1.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if document type is ZQ(Agencies not yet in SAP)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  elseif i_bkpf_fmifiit-blart = C_ZQ .&lt;/P&gt;&lt;P&gt;     if i_bkpf_fmifiit-sgtxt = c_460 or&lt;/P&gt;&lt;P&gt;        i_bkpf_fmifiit-sgtxt = c_461 or&lt;/P&gt;&lt;P&gt;        i_bkpf_fmifiit-sgtxt = c_462 or&lt;/P&gt;&lt;P&gt;        i_bkpf_fmifiit-sgtxt = c_465 or&lt;/P&gt;&lt;P&gt;        i_bkpf_fmifiit-sgtxt = c_470.&lt;/P&gt;&lt;P&gt;          delete i_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;          continue.&lt;/P&gt;&lt;P&gt;     endif.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if document type is VT(Transfer posting)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  elseif i_bkpf_fmifiit-blart = C_VT .&lt;/P&gt;&lt;P&gt;      if i_bkpf_fmifiit-wrttp = C_66.&lt;/P&gt;&lt;P&gt;          X_Z1BMISDATA-maint_code = C_EXP.&lt;/P&gt;&lt;P&gt;          v_total_exps = v_total_exps + 1.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if document type is  neither KG or ZQ&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  else .&lt;/P&gt;&lt;P&gt;     if i_bkpf_fmifiit-wrttp = C_66 or i_bkpf_fmifiit-wrttp = C_95.&lt;/P&gt;&lt;P&gt;       X_Z1BMISDATA-maint_code = C_REF.&lt;/P&gt;&lt;P&gt;       v_total_refs = v_total_refs + 1.&lt;/P&gt;&lt;P&gt;     endif.&lt;/P&gt;&lt;P&gt;     if i_bkpf_fmifiit-wrttp = C_54 .&lt;/P&gt;&lt;P&gt;       X_Z1BMISDATA-maint_code = C_EXP.&lt;/P&gt;&lt;P&gt;       v_total_exps = v_total_exps + 1.&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;select grant department from cross walk table&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;zfi_t_busareacw&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select ZDEPT from  zfi_t_busareacw&lt;/P&gt;&lt;P&gt;                      into  X_Z1BMISDATA-grant_dep&lt;/P&gt;&lt;P&gt;                      up to 1 rows&lt;/P&gt;&lt;P&gt;                      where GSBER = i_bkpf_fmifiit-bus_area.&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;Assign internal order 2-6 char to grant number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  X_Z1BMISDATA-grant_no  =  i_bkpf_fmifiit-int_order+1(5).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;select fund type from fincode&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  select single type  from  FMFINCODE&lt;/P&gt;&lt;P&gt;                      into  X_Z1BMISDATA-fund&lt;/P&gt;&lt;P&gt;                      where FIKRS   = C_COPA&lt;/P&gt;&lt;P&gt;                      and   FINCODE = i_bkpf_fmifiit-fonds.&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;depparment is same as grnat department&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  X_Z1BMISDATA-dept      = X_Z1BMISDATA-grant_dep.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;appropriarion is fonds 3-5 characters&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  X_Z1BMISDATA-approp    = i_bkpf_fmifiit-fonds+2(3).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Year   is fonds 6-7 characters&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  X_Z1BMISDATA-year      = i_bkpf_fmifiit-fonds+5(2).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Ledger is fonds first character&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  X_Z1BMISDATA-ledger    = i_bkpf_fmifiit-fonds+0(1).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;document id is assigned with the SAP FI document number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  X_Z1BMISDATA-doc_id    = i_bkpf_fmifiit-knbelnr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ICS posting date is assigned with SAP posting date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  v_date =  i_bkpf_fmifiit-budat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  v_mm  = v_date+4(2).&lt;/P&gt;&lt;P&gt;  v_dd  = v_date+6(2).&lt;/P&gt;&lt;P&gt;  v_yy  = v_date+2(2).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  concatenate v_mm v_dd v_yy into v_mmddyy.&lt;/P&gt;&lt;P&gt;  X_Z1BMISDATA-ics_post_date = v_mmddyy.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if document type is KR , then ics posting date is&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;modified based on the payment terms&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  if  i_bkpf_fmifiit-blart = C_KR.&lt;/P&gt;&lt;P&gt;    select         lfb1~ZTERM&lt;/P&gt;&lt;P&gt;                   into  v_zterm&lt;/P&gt;&lt;P&gt;                   up to 1 rows&lt;/P&gt;&lt;P&gt;                   from  FMIFIHD&lt;/P&gt;&lt;P&gt;                   join  lfb1&lt;/P&gt;&lt;P&gt;                   on    FMIFIHD&lt;SUB&gt;lifnr = lfb1&lt;/SUB&gt;lifnr&lt;/P&gt;&lt;P&gt;                   where FMIFIHD~fmbelnr = i_bkpf_fmifiit-FMBELNR.&lt;/P&gt;&lt;P&gt;      endselect.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     if v_zterm NE C_P004.&lt;/P&gt;&lt;P&gt;         v_zterm = v_zterm+1(2).&lt;/P&gt;&lt;P&gt;         X_Z1BMISDATA-ics_post_date = i_bkpf_fmifiit-bldat + v_zterm.&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;&lt;/P&gt;&lt;P&gt;  X_Z1BMISDATA-amount    = i_bkpf_fmifiit-trbtr.&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;find cuureny type and assign to v_currency&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  if v_currency is initial.&lt;/P&gt;&lt;P&gt;    v_currency = i_bkpf_fmifiit-twaer.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;find total expenditure amount&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  if X_Z1BMISDATA-maint_code = C_EXP.&lt;/P&gt;&lt;P&gt;    v_total_exp_trbtr = v_total_exp_trbtr + X_Z1BMISDATA-amount.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;find total refund amount&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  elseif X_Z1BMISDATA-maint_code = C_REF.&lt;/P&gt;&lt;P&gt;    v_total_ref_trbtr = v_total_ref_trbtr + X_Z1BMISDATA-amount.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill with blanks&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  X_Z1BMISDATA-filler = C_FILLER.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign segment name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_edidd-segnam  = C_DATA_SEGMENT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign segment data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  i_edidd-sdata   = X_Z1BMISDATA.&lt;/P&gt;&lt;P&gt;  append i_edidd.&lt;/P&gt;&lt;P&gt;  clear i_edidd.&lt;/P&gt;&lt;P&gt;  clear X_Z1BMISDATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " build_data_segment&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  build_control_segment&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      subroutine to build zibmiscon segment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM build_control_segment.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;control segment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;X_Z1BMISCON-maint_cd = C_CON.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign  total maintence records for expenditure&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;X_Z1BMISCON-tot_exp_no  = v_total_exps.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign  total expenditure amount&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;X_Z1BMISCON-tot_exp_amt = v_total_exp_trbtr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign  total maintence records for refund&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;X_Z1BMISCON-tot_ref_no  = v_total_refs.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign  total refund amount&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;X_Z1BMISCON-tot_ref_amt = v_total_ref_trbtr.&lt;/P&gt;&lt;P&gt;v_date = sy-datum.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;extract month from present date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;X_Z1BMISCON-postdat_mm  = v_date+4(2).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;extract day from present date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;X_Z1BMISCON-postdat_dd  = v_date+6(2).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;extract year from present date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;X_Z1BMISCON-postdat_yy  = v_date+2(2).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fiill with blanks&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;X_Z1BMISCON-filler = C_FILLER.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign segment name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_edidd-segnam  = C_CONTROL_SEGMENT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign segment data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_edidd-sdata   = X_Z1BMISCON.&lt;/P&gt;&lt;P&gt;append i_edidd.&lt;/P&gt;&lt;P&gt;clear i_edidd.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " build_control_segment&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  build_trailer_segment&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      subroutine to build zibmistrlr segment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM build_trailer_segment.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;trailer segment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;X_Z1BMISTRLR-trlr_ind    =   C_T.&lt;/P&gt;&lt;P&gt;X_Z1BMISTRLR-ag_id       =   C_BMIS.&lt;/P&gt;&lt;P&gt;X_Z1BMISTRLR-file_lbl    =   C_AFG840M01.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign total data segment records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;X_Z1BMISTRLR-file_tot_recs = v_total_records.&lt;/P&gt;&lt;P&gt;X_Z1BMISTRLR-filler      = C_FILLER.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign segment name&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_edidd-segnam  = C_TRAILER_SEGMENT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign segment data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;i_edidd-sdata   = X_Z1BMISTRLR.&lt;/P&gt;&lt;P&gt;append i_edidd.&lt;/P&gt;&lt;P&gt;clear i_edidd.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " build_trailer_segment&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  create_idocs&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      subroutine which creates IDOC document&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM create_idocs.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'MASTER_IDOC_DISTRIBUTE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      MASTER_IDOC_CONTROL                  = i_edidc&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      COMMUNICATION_IDOC_CONTROL           =  i_edidc_comm&lt;/P&gt;&lt;P&gt;      MASTER_IDOC_DATA                     =  i_edidd&lt;/P&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     ERROR_IN_IDOC_CONTROL                = 1&lt;/P&gt;&lt;P&gt;     ERROR_WRITING_IDOC_STATUS            = 2&lt;/P&gt;&lt;P&gt;     ERROR_IN_IDOC_DATA                   = 3&lt;/P&gt;&lt;P&gt;     SENDING_LOGICAL_SYSTEM_UNKNOWN       = 4&lt;/P&gt;&lt;P&gt;     OTHERS                               = 5&lt;/P&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;ENDFORM.                    " create_idocs&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  bdc_fb50&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    subroutine to call transaction fb50&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM bdc_fb50.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;sort the internal table by internal order and fund&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  sort i_bkpf_fmifiit by int_order fonds.&lt;/P&gt;&lt;P&gt;  clear i_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;  loop at i_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;    clear x_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;    X_bkpf_fmifiit = i_bkpf_fmifiit.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;when a new fonds occurs sum&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    at new fonds.&lt;/P&gt;&lt;P&gt;      sum.&lt;/P&gt;&lt;P&gt;      v_amount = i_bkpf_fmifiit-trbtr.&lt;/P&gt;&lt;P&gt;      i_bkpf_fmifiit = x_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;      i_bkpf_fmifiit-trbtr = v_amount.&lt;/P&gt;&lt;P&gt;      if v_amount is initial.&lt;/P&gt;&lt;P&gt;          clear i_prog_msg-pmsg1.&lt;/P&gt;&lt;P&gt;          i_prog_msg-pmsg1 = 'Record not created for internal order and&lt;/P&gt;&lt;P&gt;fund'(018).&lt;/P&gt;&lt;P&gt;          concatenate i_bkpf_fmifiit-int_order space&lt;/P&gt;&lt;P&gt;                      c_and&lt;/P&gt;&lt;P&gt;                      i_bkpf_fmifiit-fonds&lt;/P&gt;&lt;P&gt;                      ' as amount is zero '(019) into i_prog_msg-pmsg2&lt;/P&gt;&lt;P&gt;                       separated by space.&lt;/P&gt;&lt;P&gt;          append i_prog_msg.&lt;/P&gt;&lt;P&gt;          clear i_prog_msg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          delete i_bkpf_fmifiit&lt;/P&gt;&lt;P&gt;          where int_order =  i_bkpf_fmifiit-int_order&lt;/P&gt;&lt;P&gt;          and   fonds = i_bkpf_fmifiit-fonds.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;           modify i_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    endat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;delete the duplicates as we have already summed up them&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  delete adjacent duplicates from  i_bkpf_fmifiit&lt;/P&gt;&lt;P&gt;                             comparing int_order fonds.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill bdcdata internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  perform fill_bdc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " call_bdc_fb50&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_bdc_tab&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    subroutine to fill bdcdata&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form fill_bdc_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear  i_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;  loop at i_bkpf_fmifiit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    refresh i_bdcdata.&lt;/P&gt;&lt;P&gt;    clear   i_bdcdata.&lt;/P&gt;&lt;P&gt;    perform bdc_dynpro      using 'SAPMF05A' '1001'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;                                  '=BU'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;change the date format into  ddmmyyyy&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    concatenate  i_bkpf_fmifiit-Bldat+6(2)&lt;/P&gt;&lt;P&gt;                 i_bkpf_fmifiit-Bldat+4(2)&lt;/P&gt;&lt;P&gt;                 i_bkpf_fmifiit-Bldat+0(4)&lt;/P&gt;&lt;P&gt;                 into v_date.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill  bdcdata with document date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_HEAD-BLDAT'&lt;/P&gt;&lt;P&gt;                                  v_date.&lt;/P&gt;&lt;P&gt;    clear v_date.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill  bdcdata with currency type&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_HEAD-WAERS'&lt;/P&gt;&lt;P&gt;                                  i_bkpf_fmifiit-twaer.&lt;/P&gt;&lt;P&gt;    concatenate  i_bkpf_fmifiit-Budat+6(2)&lt;/P&gt;&lt;P&gt;                 i_bkpf_fmifiit-Budat+4(2)&lt;/P&gt;&lt;P&gt;                 i_bkpf_fmifiit-Budat+0(4)&lt;/P&gt;&lt;P&gt;                 into v_date.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill  bdcdata with posting date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_HEAD-BUDAT'&lt;/P&gt;&lt;P&gt;                                  v_date.&lt;/P&gt;&lt;P&gt;    clear v_date.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill  bdcdata with document type&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_HEAD-BLART'&lt;/P&gt;&lt;P&gt;                                  C_SB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if order type starts with Y and end with 3 then account number&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;is 4000300 else 4000200&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    if i_bkpf_fmifiit-auart EQ C_Y3.&lt;/P&gt;&lt;P&gt;      v_acc_number = C_4000300.&lt;/P&gt;&lt;P&gt;    else.&lt;/P&gt;&lt;P&gt;      v_acc_number = C_4000200.&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill  bdcdata with g/l acct.num&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_ITEM-HKONT(01)'&lt;/P&gt;&lt;P&gt;                                  v_acc_number.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill  bdcdata with account type&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_ITEM-SHKZG(01)'&lt;/P&gt;&lt;P&gt;                                  c_h.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;take off sign from amount&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    clear v_amount .&lt;/P&gt;&lt;P&gt;    V_AMOUNT = ABS( i_bkpf_fmifiit-TRBTR ).&lt;/P&gt;&lt;P&gt;    v_amountc = v_amount.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   v_amount = abs( i_bkpf_fmifiit-TRBTR ).&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   write i_bkpf_fmifiit-TRBTR to  v_amount no-sign.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill  bdcdata with amount&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_ITEM-WRBTR(01)'&lt;/P&gt;&lt;P&gt;                                  v_amountc.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill  bdcdata with taxcode&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_ITEM-MWSKZ(01)'&lt;/P&gt;&lt;P&gt;                                  c_C0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;select cost center from zfi_t_vfc&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    select zfcrf from  zfi_t_vfc&lt;/P&gt;&lt;P&gt;                 into v_cost_center&lt;/P&gt;&lt;P&gt;                 up to 1 rows&lt;/P&gt;&lt;P&gt;                 where zzaufnr = i_bkpf_fmifiit-int_order.&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;fill  bdcdata with cost centre&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_ITEM-KOSTL(01)'&lt;/P&gt;&lt;P&gt;                                  v_cost_center.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill  bdcdata with int. order&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_ITEM-AUFNR(01)'&lt;/P&gt;&lt;P&gt;                                 i_bkpf_fmifiit-int_order.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill  bdcdata  with fund&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_ITEM-GEBER(01)'&lt;/P&gt;&lt;P&gt;                                  i_bkpf_fmifiit-fonds.&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;fill bdcdata with data for debit account&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    V_acc_number = C_1300500.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill bdcdata with g/l acct.num&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_ITEM-HKONT(02)'&lt;/P&gt;&lt;P&gt;                                  V_acc_number.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill bdcdata with acct. type&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_ITEM-SHKZG(02)'&lt;/P&gt;&lt;P&gt;                                  c_S.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill bdcdata with amount&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_field       using 'ACGL_ITEM-WRBTR(02)'&lt;/P&gt;&lt;P&gt;                                  v_amountc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;call transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    perform bdc_transaction.&lt;/P&gt;&lt;P&gt;  endloop.&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  BDC_DYNPRO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    subroutine to start new screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BDC_DYNPRO USING PROGRAM DYNPRO.&lt;/P&gt;&lt;P&gt;  CLEAR I_BDCDATA.&lt;/P&gt;&lt;P&gt;  I_BDCDATA-PROGRAM  = PROGRAM.&lt;/P&gt;&lt;P&gt;  I_BDCDATA-DYNPRO   = DYNPRO.&lt;/P&gt;&lt;P&gt;  I_BDCDATA-DYNBEGIN = C_X.&lt;/P&gt;&lt;P&gt;  APPEND I_BDCDATA.&lt;/P&gt;&lt;P&gt;  clear i_bdcdata.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  BDC_FIELD&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    subroutine to insert a field&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BDC_FIELD USING FNAM FVAL type any.&lt;/P&gt;&lt;P&gt;  IF NOT FVAL IS INITIAL.&lt;/P&gt;&lt;P&gt;    CLEAR I_BDCDATA.&lt;/P&gt;&lt;P&gt;    I_BDCDATA-FNAM = FNAM.&lt;/P&gt;&lt;P&gt;    I_BDCDATA-FVAL = FVAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND I_BDCDATA.&lt;/P&gt;&lt;P&gt;    clear i_bdcdata.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  BDC_DYNPRO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    subroutine to start new transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BDC_TRANSACTION .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    REFRESH I_MESSTAB.&lt;/P&gt;&lt;P&gt;    clear i_messtab.&lt;/P&gt;&lt;P&gt;    CALL TRANSACTION C_TCODE USING I_BDCDATA&lt;/P&gt;&lt;P&gt;                     MODE   C_MODE&lt;/P&gt;&lt;P&gt;                     UPDATE C_UPDATE&lt;/P&gt;&lt;P&gt;                     MESSAGES INTO I_MESSTAB.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if call transaction fails&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;find no.of lines in message table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        DESCRIBE TABLE I_MESStab LINES v_LINES.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read the lasr message from table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        READ TABLE I_MESStab INDEX v_LINES.&lt;/P&gt;&lt;P&gt;*-- Format the error message&lt;/P&gt;&lt;P&gt;        PERFORM FORMAT_MESSAGE.&lt;/P&gt;&lt;P&gt;*-- Appending the error records into error table&lt;/P&gt;&lt;P&gt;        v_line = v_line + 1.&lt;/P&gt;&lt;P&gt;        I_ERROR_RECORDS-line =  v_line.&lt;/P&gt;&lt;P&gt;        I_ERROR_RECORDS-SMSG   = V_MESSTXT.&lt;/P&gt;&lt;P&gt;        APPEND I_ERROR_RECORDS.&lt;/P&gt;&lt;P&gt;        CLEAR  I_ERROR_RECORDS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;create new session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        if f_group is initial.&lt;/P&gt;&lt;P&gt;          clear v_date.&lt;/P&gt;&lt;P&gt;          v_date = sy-datum - 1.&lt;/P&gt;&lt;P&gt;          CALL FUNCTION 'BDC_OPEN_GROUP'&lt;/P&gt;&lt;P&gt;               EXPORTING  CLIENT   = SY-MANDT&lt;/P&gt;&lt;P&gt;                          GROUP    = C_GROUP&lt;/P&gt;&lt;P&gt;                          USER     = SY-uname&lt;/P&gt;&lt;P&gt;                          KEEP     = 'X'&lt;/P&gt;&lt;P&gt;                          HOLDDATE = v_date&lt;/P&gt;&lt;P&gt;               EXCEPTIONS&lt;/P&gt;&lt;P&gt;                 CLIENT_INVALID            = 1&lt;/P&gt;&lt;P&gt;                 DESTINATION_INVALID       = 2&lt;/P&gt;&lt;P&gt;                 GROUP_INVALID             = 3&lt;/P&gt;&lt;P&gt;                 GROUP_IS_LOCKED           = 4&lt;/P&gt;&lt;P&gt;                 HOLDDATE_INVALID          = 5&lt;/P&gt;&lt;P&gt;                 INTERNAL_ERROR            = 6&lt;/P&gt;&lt;P&gt;                 QUEUE_ERROR               = 7&lt;/P&gt;&lt;P&gt;                 RUNNING                   = 8&lt;/P&gt;&lt;P&gt;                 SYSTEM_LOCK_ERROR         = 9&lt;/P&gt;&lt;P&gt;                 USER_INVALID              = 10&lt;/P&gt;&lt;P&gt;                 OTHERS                    = 11.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        clear v_date.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if session created, set the flag f_group&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;            f_group = C_X.&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;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        if not f_group is initial.&lt;/P&gt;&lt;P&gt;              CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;                 EXPORTING TCODE     = C_TCODE&lt;/P&gt;&lt;P&gt;                 TABLES    DYNPROTAB = I_BDCDATA.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;        REFRESH i_BDCDATA.&lt;/P&gt;&lt;P&gt;        clear i_BDCDATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    else.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;find no.of lines in message table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        DESCRIBE TABLE I_MESStab LINES v_LINES.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read the last message&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        READ TABLE I_MESStab INDEX v_LINES.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;format the message&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        PERFORM FORMAT_MESSAGE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;extract document no. from formatted message&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        I_success_RECORDS-document_no =  V_MESSTXT+9(10).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign the internal order number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        I_success_RECORDS-int_order   = i_bkpf_fmifiit-int_order.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign the fund&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        I_success_RECORDS-fonds   = i_bkpf_fmifiit-fonds.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;append records to success messages&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        APPEND I_success_RECORDS.&lt;/P&gt;&lt;P&gt;        CLEAR  I_success_RECORDS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form 09 FORMAT_MESSAGE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      This subroutine is used to format the error message&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM FORMAT_MESSAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR V_MESSTXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'FORMAT_MESSAGE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;           ID        = SY-MSGID&lt;/P&gt;&lt;P&gt;           LANG      = 'E'&lt;/P&gt;&lt;P&gt;           NO        = I_MESSTAB-MSGNR&lt;/P&gt;&lt;P&gt;           V1        = I_MESSTAB-MSGV1&lt;/P&gt;&lt;P&gt;           V2        = I_MESSTAB-MSGV2&lt;/P&gt;&lt;P&gt;           V3        = I_MESSTAB-MSGV3&lt;/P&gt;&lt;P&gt;           V4        = I_MESSTAB-MSGV4&lt;/P&gt;&lt;P&gt;   iMPORTING&lt;/P&gt;&lt;P&gt;            MSG       = V_MESSTXT.&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_MESSAGE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  sucess_messages&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    subroutine to print sucess full messages&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form sucess_messages.&lt;/P&gt;&lt;P&gt;   f_flag = c_success.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;start a new page&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    new-page.&lt;/P&gt;&lt;P&gt;    ULINE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;change the color to col_normal&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    format color col_normal intensified on.&lt;/P&gt;&lt;P&gt;    write : /01 sy-vline.&lt;/P&gt;&lt;P&gt;    write : 02 'Total Maintenance Records for Expenditure'(006),&lt;/P&gt;&lt;P&gt;            v_total_exps.&lt;/P&gt;&lt;P&gt;    write : 165(01) sy-vline.&lt;/P&gt;&lt;P&gt;    format color col_normal intensified off.&lt;/P&gt;&lt;P&gt;    write : /01 sy-vline.&lt;/P&gt;&lt;P&gt;    write : 02 'Total Amount for Expenditure '(007),v_total_exp_trbtr&lt;/P&gt;&lt;P&gt;            currency v_currency, v_currency .&lt;/P&gt;&lt;P&gt;    write : 165(01) sy-vline.&lt;/P&gt;&lt;P&gt;    format color col_normal intensified on.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    write : /01 sy-vline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    write : 02 'Total Maintenance Records for Refunds '(008),&lt;/P&gt;&lt;P&gt;             v_total_refs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    write : 165(01) sy-vline.&lt;/P&gt;&lt;P&gt;    format color col_normal intensified off.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    write : /01 sy-vline.&lt;/P&gt;&lt;P&gt;    write : 02 'Total Amount for Refunds '(009),  v_total_ref_trbtr&lt;/P&gt;&lt;P&gt;             currency v_currency, v_currency .&lt;/P&gt;&lt;P&gt;    write : 165(01) sy-vline.&lt;/P&gt;&lt;P&gt;    uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    skip.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if there are any successful records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    if not I_success_RECORDS[] is initial.&lt;/P&gt;&lt;P&gt;      FORMAT COLOR COL_heading .&lt;/P&gt;&lt;P&gt;      write /01(90) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE :/1(01)    SY-VLINE,&lt;/P&gt;&lt;P&gt;             02(29) 'Document No'(010) ,&lt;/P&gt;&lt;P&gt;             31(01) SY-VLINE,&lt;/P&gt;&lt;P&gt;             32(29) 'Internal order'(011) ,&lt;/P&gt;&lt;P&gt;             61(01) sy-vline,&lt;/P&gt;&lt;P&gt;             62(28) 'Fund'(012),&lt;/P&gt;&lt;P&gt;             90(01) sy-vline.&lt;/P&gt;&lt;P&gt;      FORMAT COLOR off.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;loop   at sucessfull records messages&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    LOOP AT I_success_RECORDS.&lt;/P&gt;&lt;P&gt;    PERFORM COLOR_SWAP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WRITE :/1(01)    SY-vLINE,&lt;/P&gt;&lt;P&gt;           02(29) I_success_RECORDS-document_no ,&lt;/P&gt;&lt;P&gt;           31(01) SY-VLINE,&lt;/P&gt;&lt;P&gt;           32(29) I_success_RECORDS-int_order ,&lt;/P&gt;&lt;P&gt;           61(01) sy-vline,&lt;/P&gt;&lt;P&gt;           62(28) I_success_RECORDS-fonds,&lt;/P&gt;&lt;P&gt;           90(01) sy-vline.&lt;/P&gt;&lt;P&gt;&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;    if not I_success_RECORDS[] is initial.&lt;/P&gt;&lt;P&gt;      write /01(90) sy-uline.&lt;/P&gt;&lt;P&gt;    endif.&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  error_messages&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    subroutine to print error messages&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form error_messages.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if there are any error records&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;IF NOT I_ERROR_RECORDS[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    f_flag = c_failure.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    FORMAT COLOR COL_HEADING.&lt;/P&gt;&lt;P&gt;    WRITE :/1(01)    SY-VLINE,&lt;/P&gt;&lt;P&gt;           02(10) 'Line .No'(003),&lt;/P&gt;&lt;P&gt;           12(01) SY-VLINE,&lt;/P&gt;&lt;P&gt;           13(51) 'Reason For Failure'(004),&lt;/P&gt;&lt;P&gt;           64(01) sy-vline,&lt;/P&gt;&lt;P&gt;           65(100) 'SAP Message'(005) ,&lt;/P&gt;&lt;P&gt;           165(01) sy-vline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   FORMAT COLOR OFF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;loop   at error records messages&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    LOOP AT I_ERROR_RECORDS.&lt;/P&gt;&lt;P&gt;      PERFORM COLOR_SWAP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      WRITE :/1(01)    SY-VLINE,&lt;/P&gt;&lt;P&gt;           02(10) I_ERROR_RECORDS-line,&lt;/P&gt;&lt;P&gt;           12(01) SY-VLINE,&lt;/P&gt;&lt;P&gt;           13(51) I_ERROR_RECORDS-PMSG,&lt;/P&gt;&lt;P&gt;           64(01) sy-vline,&lt;/P&gt;&lt;P&gt;           65(100) I_ERROR_RECORDS-SMSG ,&lt;/P&gt;&lt;P&gt;           165(01) sy-vline.&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;    if not I_prog_msg[] is initial.&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE I_ERROR_RECORDS LINES v_LINES.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;loop   at program messages&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      LOOP AT I_prog_msg.&lt;/P&gt;&lt;P&gt;        v_lines = v_lines + 1.&lt;/P&gt;&lt;P&gt;        PERFORM COLOR_SWAP.&lt;/P&gt;&lt;P&gt;        v_linc = v_lines.&lt;/P&gt;&lt;P&gt;        WRITE :/1(01)    SY-VLINE,&lt;/P&gt;&lt;P&gt;             02(10) v_linc,&lt;/P&gt;&lt;P&gt;             12(01) SY-VLINE,&lt;/P&gt;&lt;P&gt;             13(51) I_prog_msg-PMSG1,&lt;/P&gt;&lt;P&gt;             64(01) sy-vline,&lt;/P&gt;&lt;P&gt;             65(100) space,&lt;/P&gt;&lt;P&gt;             165(01) sy-vline.&lt;/P&gt;&lt;P&gt;        PERFORM COLOR_SWAP.&lt;/P&gt;&lt;P&gt;       WRITE :/1(01)  SY-VLINE,&lt;/P&gt;&lt;P&gt;             02(10)   space,&lt;/P&gt;&lt;P&gt;             12(01) SY-VLINE,&lt;/P&gt;&lt;P&gt;             13(51) I_prog_msg-PMSG2,&lt;/P&gt;&lt;P&gt;             64(01) sy-vline,&lt;/P&gt;&lt;P&gt;             65(100) space,&lt;/P&gt;&lt;P&gt;             165(01) sy-vline.&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;    endif.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;IF NOT I_ERROR_RECORDS[] IS INITIAL.&lt;/P&gt;&lt;P&gt;  uline.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endform.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  TOP_OF_PAGE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Description : For Standard Top of Page&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF F_FLAG = C_SUCCESS.&lt;/P&gt;&lt;P&gt;    V_TITLE = 'Success Records'(013).&lt;/P&gt;&lt;P&gt;  ELSEIF F_FLAG = C_FAILURE.&lt;/P&gt;&lt;P&gt;    V_TITLE = 'Error Records'(002).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'Z_STANDARD_HEADER'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;P&gt;    ZTYPE              = C_H&lt;/P&gt;&lt;P&gt;TITLE2             = 'GM Interface from SAP to CDS Refunds &amp;amp;&lt;/P&gt;&lt;P&gt;Expenditures'(015)&lt;/P&gt;&lt;P&gt;     TITLE3             = V_TITLE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " TOP_OF_PAGE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  COLOR_SWAP&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Description : To Swap the display colour.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM COLOR_SWAP.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if flag is set&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  if f_color eq c_x.&lt;/P&gt;&lt;P&gt;    clear f_color.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;switch off the intensity&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    format color col_normal intensified off.&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if flag is not set.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    f_color = c_x.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;switch on the intensity&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    format color col_normal intensified on.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " COLOR_SWAP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Suresh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 20 Jan 2006 15:24:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/idoc-program-examples/m-p/1197382#M130066</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-01-20T15:24:21Z</dc:date>
    </item>
  </channel>
</rss>

