<?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: Production issue in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/production-issue/m-p/1996561#M405972</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Firstly thank u soo much for going through my coding.&lt;/P&gt;&lt;P&gt;1.The fksto field is removed out of select statement but the time taken for this select statement when checked in ST05 is not much differed from the previous one&lt;/P&gt;&lt;P&gt;2.The into corresponding fields is ok its not an issue any more.&lt;/P&gt;&lt;P&gt;3.There is no use of sorting the table t_tab_temp because it has no duplicate entries in the table because it has unique VBELN.&lt;/P&gt;&lt;P&gt;4.I did'nt got ur DO WHILE logic because the number of entries which the tabel i_vbrk has it loops and fills the table accordingly and deleting before the DO ENDDO i've tried is not possible in my scenario.&lt;/P&gt;&lt;P&gt;5.Appending clause i seriously tried it to remove form the query but this is adding the new entries into the old entries of my table and creating new temporary internal table needs to change so many logic's of my other queries which is really troublesome for me because its an production issue for me.&lt;/P&gt;&lt;P&gt;6.I've tried avoiding MOVE-CORRESPONING with just move its not displaying the output exaclty in its concern field in the Excel file.Cant compromise with this....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You said me to avoid using DO ENDDO LOOPS and asked me to replace with While endwhile can u give me coding corresponding to my logic so that i can avoid using the select statements inside this and could certainly improve the performance i feel because if i could get succeeded with this then i  can replace this with almost 3 do enddo loops.Please try getting this and thank u once again......&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 22 Mar 2007 07:31:07 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-03-22T07:31:07Z</dc:date>
    <item>
      <title>Production issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/production-issue/m-p/1996559#M405970</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;I have a production issue and my report takes around 4 to 5 hours for  its execution and i've finded out that the 2nd from first query has a corresponding tale with it and when i modified it to below one its displaying the output and when i check it in ST05 i have no i_bsad and i_bsid table query times mentioned in it.Where in when i have the corresponding tale included i get  the above both queries time interval and this table works fine.(i have to have this select statements included for my business scenario logic).But because of the inclusion of this this both table are eating lot of time.Need to include them and reduce the time comsumption of the both the tables.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT vbeln fkart vbtyp knumv fkdat  gjahr kdgrp rfbsk zterm bukrs&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; netwr kunrg kunag                                     &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           bstnk_vf xblnr mwsbk rfbsk&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INTO  TABLE i_vbrk&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                    FROM vbrk WHERE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     vbeln  IN zvbeln AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     vbtyp IN zvbtyp AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     fkdat  IN zfkdat AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     bukrs  IN zbukrs AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     kunag  IN zkunag AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     bstnk_vf IN zbstnkvf AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     xblnr  IN zxblnr AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     fksto NE 'X' .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT vbeln fkart vbtyp knumv fkdat bukrs gjahr kdgrp zterm netwr&lt;/P&gt;&lt;P&gt;    kunrg kunag &lt;/P&gt;&lt;P&gt;              bstnk_vf xblnr mwsbk rfbsk&lt;/P&gt;&lt;P&gt;              INTO CORRESPONDING FIELDS OF TABLE i_vbrk&lt;/P&gt;&lt;P&gt;                       FROM vbrk WHERE&lt;/P&gt;&lt;P&gt;                        vbeln  IN zvbeln AND&lt;/P&gt;&lt;P&gt;                        kunag  IN zkunag AND&lt;/P&gt;&lt;P&gt;                        fkdat  IN zfkdat AND&lt;/P&gt;&lt;P&gt;                        xblnr  IN zxblnr AND&lt;/P&gt;&lt;P&gt;                        bstnk_vf IN zbstnkvf AND&lt;/P&gt;&lt;P&gt;                        vbtyp IN zvbtyp AND&lt;/P&gt;&lt;P&gt;                        fksto NE 'X' AND&lt;/P&gt;&lt;P&gt;                        bukrs  IN zbukrs .&lt;/P&gt;&lt;P&gt;This are the both table which has to be included ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT belnr buzei dmbtr shkzg APPENDING TABLE i_bsad&lt;/P&gt;&lt;P&gt;        FROM bsad&lt;/P&gt;&lt;P&gt;        FOR ALL ENTRIES IN l_tab_temp&lt;/P&gt;&lt;P&gt;        WHERE&lt;/P&gt;&lt;P&gt;            bukrs EQ l_tab_temp-bukrs AND&lt;/P&gt;&lt;P&gt;            gjahr EQ l_tab_temp-gjahr AND&lt;/P&gt;&lt;P&gt;            belnr EQ l_tab_temp-vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT  belnr buzei shkzg dmbtr rebzg FROM bsid                              APPENDING CORRESPONDING FIELDS OF TABLE i_bsid&lt;/P&gt;&lt;P&gt;                          FOR ALL ENTRIES IN l_tab_temp&lt;/P&gt;&lt;P&gt;                          WHERE bukrs EQ l_tab_temp-bukrs&lt;/P&gt;&lt;P&gt;                          "PRA927038 "PRA927150  vbeln pick&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                         AND   NOT AUGBL = SPACE  &lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*AND  BELNR = L_TAB_TEMP-VBELN   &lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                         AND  gjahr = l_tab_temp-gjahr   &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                           AND  gjahr IN zgjahr.       &lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                           AND  vbeln = l_tab_temp-vbeln .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                             AND rebzg = l_tab_temp-vbeln&lt;/P&gt;&lt;P&gt;                             AND rebzj = l_tab_temp-gjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can any one help me in tuning this if u guys still have questions please ask me.And for your understanding this my coding please go through it&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; Report  ZAR_REC001                                                  *&lt;/P&gt;&lt;P&gt;*&amp;amp;                                                                     *&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;REPORT  zar_rec001    NO STANDARD PAGE HEADING&lt;/P&gt;&lt;P&gt;                      LINE-SIZE 355&lt;/P&gt;&lt;P&gt;                      LINE-COUNT 60&lt;/P&gt;&lt;P&gt;                      MESSAGE-ID zuserm.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS : slis.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES :  vbrk,&lt;/P&gt;&lt;P&gt;          vbrp,&lt;/P&gt;&lt;P&gt;          bsid,&lt;/P&gt;&lt;P&gt;          bsad,&lt;/P&gt;&lt;P&gt;          kna1,&lt;/P&gt;&lt;P&gt;          lfa1,&lt;/P&gt;&lt;P&gt;          knvv,&lt;/P&gt;&lt;P&gt;          zar1_detail,&lt;/P&gt;&lt;P&gt;          zar1_struc1,&lt;/P&gt;&lt;P&gt;          vbak,&lt;/P&gt;&lt;P&gt;          vbap,&lt;/P&gt;&lt;P&gt;          zcustomfields,&lt;/P&gt;&lt;P&gt;          konv,&lt;/P&gt;&lt;P&gt;          zvlxxsr,&lt;/P&gt;&lt;P&gt;          mara,&lt;/P&gt;&lt;P&gt;          t023t,&lt;/P&gt;&lt;P&gt;          sscrfields,&lt;/P&gt;&lt;P&gt;          konp,&lt;/P&gt;&lt;P&gt;          tvarv,&lt;/P&gt;&lt;P&gt;          tvkgr,&lt;/P&gt;&lt;P&gt;          tvgrt.                                            "IMR928046&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF t_tvkgr,&lt;/P&gt;&lt;P&gt;        vkgrp TYPE vbrp-vkgrp,&lt;/P&gt;&lt;P&gt;        END OF t_tvkgr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF ty_vbrp,                                   "IMR928046&lt;/P&gt;&lt;P&gt;        vkgrp TYPE vkgrp,&lt;/P&gt;&lt;P&gt;        END OF ty_vbrp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_zgjahr OCCURS 0,&lt;/P&gt;&lt;P&gt;       zgjahr LIKE bsid-gjahr,&lt;/P&gt;&lt;P&gt;      END OF i_zgjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_vbrk OCCURS 0,&lt;/P&gt;&lt;P&gt;        vbeln LIKE vbrk-vbeln,&lt;/P&gt;&lt;P&gt;        fkart LIKE vbrk-fkart,&lt;/P&gt;&lt;P&gt;        vbtyp LIKE vbrk-vbtyp,&lt;/P&gt;&lt;P&gt;        knumv LIKE vbrk-knumv,&lt;/P&gt;&lt;P&gt;        fkdat LIKE vbrk-fkdat,&lt;/P&gt;&lt;P&gt;        gjahr LIKE vbrk-gjahr,   "KRISHNA&lt;/P&gt;&lt;P&gt;        kdgrp LIKE vbrk-kdgrp,&lt;/P&gt;&lt;P&gt;        zterm LIKE vbrk-zterm,&lt;/P&gt;&lt;P&gt;        bukrs LIKE vbrk-bukrs,   "krishna&lt;/P&gt;&lt;P&gt;        rfbsk    LIKE vbrk-rfbsk,                           " KYH25882&lt;/P&gt;&lt;P&gt;        netwr LIKE vbrk-netwr,&lt;/P&gt;&lt;P&gt;        kunrg LIKE vbrk-kunrg,&lt;/P&gt;&lt;P&gt;        kunag LIKE vbrk-kunag,&lt;/P&gt;&lt;P&gt;        bstnk_vf LIKE vbrk-bstnk_vf,&lt;/P&gt;&lt;P&gt;        xblnr LIKE vbrk-xblnr,&lt;/P&gt;&lt;P&gt;        mwsbk LIKE vbrk-mwsbk,&lt;/P&gt;&lt;P&gt;        name1 LIKE kna1-name1,&lt;/P&gt;&lt;P&gt;        vkgrp LIKE knvv-vkgrp,&lt;/P&gt;&lt;P&gt;        bezei LIKE tvgrt-bezei,                             "IMR928046&lt;/P&gt;&lt;P&gt;        partialpmt LIKE vbrk-netwr,&lt;/P&gt;&lt;P&gt;        opendmbtr LIKE vbrk-netwr,&lt;/P&gt;&lt;P&gt;        gmdpercent LIKE vbrp-netwr,&lt;/P&gt;&lt;P&gt;        gmdnetwr LIKE vbrp-netwr,&lt;/P&gt;&lt;P&gt;        aubel    LIKE vbrp-aubel,&lt;/P&gt;&lt;P&gt;        aupos    LIKE vbrp-aupos,&lt;/P&gt;&lt;P&gt;        ihrez LIKE vbak-ihrez,&lt;/P&gt;&lt;P&gt;        kdmat  LIKE vbap-kdmat,&lt;/P&gt;&lt;P&gt;        mwsbp    LIKE vbrp-mwsbp,&lt;/P&gt;&lt;P&gt;        kzwi5    LIKE vbrp-kzwi5,&lt;/P&gt;&lt;P&gt;        due1     LIKE vbrp-netwr,&lt;/P&gt;&lt;P&gt;        due2     LIKE vbrp-netwr,&lt;/P&gt;&lt;P&gt;        due3     LIKE vbrp-netwr,&lt;/P&gt;&lt;P&gt;        due4     LIKE vbrp-netwr,&lt;/P&gt;&lt;P&gt;        due5     LIKE vbrp-netwr,&lt;/P&gt;&lt;P&gt;        due6     LIKE vbrp-netwr.&lt;/P&gt;&lt;P&gt;DATA:  END OF i_vbrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_vbrp OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE zar1_struc1.&lt;/P&gt;&lt;P&gt;DATA:   zzp_mfrnr LIKE vbrp-zzp_mfrnr,&lt;/P&gt;&lt;P&gt;        vgbel     LIKE vbrp-vgbel,&lt;/P&gt;&lt;P&gt;        vgpos     LIKE vbrp-vgpos.&lt;/P&gt;&lt;P&gt;DATA : END OF i_vbrp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : d_vbrp LIKE i_vbrp OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF d1_vbrp OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE  zar1_detail.&lt;/P&gt;&lt;P&gt;DATA : END OF d1_vbrp.&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_bsad OCCURS 0,&lt;/P&gt;&lt;P&gt;        belnr LIKE bsad-belnr,   "krishna&lt;/P&gt;&lt;P&gt;        buzei LIKE bsad-buzei,   "Vijay&lt;/P&gt;&lt;P&gt;        dmbtr LIKE bsad-dmbtr,   "krishna&lt;/P&gt;&lt;P&gt;        shkzg.                                              "ppo924471&lt;/P&gt;&lt;P&gt;DATA : END OF i_bsad.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- begin of ppo924396&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_bsid OCCURS 0,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       augbl like bsad-augbl,                              "PRA927038&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      vbeln LIKE bsid-vbeln,                               "vma928512&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        rebzg LIKE bsid-rebzg,                              "vma928512&lt;/P&gt;&lt;P&gt;        belnr LIKE bsid-belnr,&lt;/P&gt;&lt;P&gt;        buzei LIKE bsid-buzei,&lt;/P&gt;&lt;P&gt;        shkzg LIKE bsad-shkzg,                              "ppo924471&lt;/P&gt;&lt;P&gt;        dmbtr LIKE bsad-dmbtr.&lt;/P&gt;&lt;P&gt;DATA : END OF i_bsid.&lt;/P&gt;&lt;P&gt;DATA : l_partialpmt LIKE bsad-dmbtr.&lt;/P&gt;&lt;P&gt;*--- end of ppo924396&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_kunag OCCURS 0,&lt;/P&gt;&lt;P&gt;       kunag LIKE vbrk-kunag.&lt;/P&gt;&lt;P&gt;DATA : END OF i_kunag.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_knumv OCCURS 0,&lt;/P&gt;&lt;P&gt;       knumv LIKE vbrk-knumv.&lt;/P&gt;&lt;P&gt;DATA : END OF i_knumv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF i_konv OCCURS 0,&lt;/P&gt;&lt;P&gt;      knumv    LIKE konv-knumv,&lt;/P&gt;&lt;P&gt;      kposn    LIKE konv-kposn,&lt;/P&gt;&lt;P&gt;      kschl    LIKE konv-kschl,&lt;/P&gt;&lt;P&gt;      knumh    LIKE konv-knumh,&lt;/P&gt;&lt;P&gt;      kbetr    LIKE konv-kbetr,&lt;/P&gt;&lt;P&gt;      kwert    LIKE konv-kwert,&lt;/P&gt;&lt;P&gt;      kopos    LIKE konv-kopos,&lt;/P&gt;&lt;P&gt;     END   OF i_konv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_kna1 OCCURS 0,&lt;/P&gt;&lt;P&gt;        kunnr LIKE kna1-kunnr,&lt;/P&gt;&lt;P&gt;        name1 LIKE kna1-name1,&lt;/P&gt;&lt;P&gt;        name2 LIKE kna1-name2,&lt;/P&gt;&lt;P&gt;        name3 LIKE kna1-name3,&lt;/P&gt;&lt;P&gt;        stras LIKE kna1-stras,&lt;/P&gt;&lt;P&gt;        ort01 LIKE kna1-ort01,&lt;/P&gt;&lt;P&gt;        regio LIKE kna1-regio,&lt;/P&gt;&lt;P&gt;        pstlz LIKE kna1-pstlz,&lt;/P&gt;&lt;P&gt;        adrnr LIKE kna1-adrnr.&lt;/P&gt;&lt;P&gt;DATA : END OF i_kna1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*DATA : I_KNA1  TYPE HASHED TABLE OF T_KNA1 WITH UNIQUE KEY KUNNR.&lt;/P&gt;&lt;P&gt;*DATA : L_WA_KNA1 TYPE   T_KNA1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF t_t023t,&lt;/P&gt;&lt;P&gt;         matkl     LIKE t023t-matkl,&lt;/P&gt;&lt;P&gt;         wgbez     LIKE t023t-wgbez.&lt;/P&gt;&lt;P&gt;TYPES : END OF t_t023t.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : i_t023t  TYPE HASHED TABLE OF t_t023t WITH UNIQUE KEY matkl.&lt;/P&gt;&lt;P&gt;DATA : l_wa_t023t TYPE   t_t023t.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_t179t OCCURS 0,&lt;/P&gt;&lt;P&gt;         prodh LIKE t179t-prodh,&lt;/P&gt;&lt;P&gt;         vtext LIKE t179t-vtext.&lt;/P&gt;&lt;P&gt;DATA : END OF i_t179t.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF t_mara,&lt;/P&gt;&lt;P&gt;        matnr     LIKE  mara-matnr,&lt;/P&gt;&lt;P&gt;        mfrpn     LIKE  mara-mfrpn.&lt;/P&gt;&lt;P&gt;TYPES : END OF t_mara.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : i_mara  TYPE HASHED TABLE OF t_mara WITH UNIQUE KEY matnr.&lt;/P&gt;&lt;P&gt;DATA : l_wa_mara TYPE   t_mara.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_vbak OCCURS 0,&lt;/P&gt;&lt;P&gt;        vbeln      LIKE  vbak-vbeln,&lt;/P&gt;&lt;P&gt;        bname      LIKE  vbak-bname,&lt;/P&gt;&lt;P&gt;        zz_ccenter LIKE vbak-zz_ccenter,&lt;/P&gt;&lt;P&gt;        zz_dept    LIKE vbak-zz_dept,&lt;/P&gt;&lt;P&gt;        ihrez      LIKE vbak-ihrez.&lt;/P&gt;&lt;P&gt;DATA : END OF i_vbak.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF i_vbap  OCCURS 0,&lt;/P&gt;&lt;P&gt;      vbeln     LIKE  vbap-vbeln,&lt;/P&gt;&lt;P&gt;      posnr     LIKE  vbap-posnr,&lt;/P&gt;&lt;P&gt;      erdat     LIKE  vbap-erdat,&lt;/P&gt;&lt;P&gt;      prodh     LIKE  vbap-prodh,&lt;/P&gt;&lt;P&gt;      ihrez     LIKE  vbak-ihrez,&lt;/P&gt;&lt;P&gt;      kdmat     LIKE  vbap-kdmat,&lt;/P&gt;&lt;P&gt;      posex     LIKE  vbap-posex,&lt;/P&gt;&lt;P&gt;      END OF i_vbap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_zcustomfields OCCURS 0,&lt;/P&gt;&lt;P&gt;        vbeln   LIKE zcustomfields-vbeln,&lt;/P&gt;&lt;P&gt;        posnr   LIKE zcustomfields-posnr,&lt;/P&gt;&lt;P&gt;        valueid LIKE zcustomfields-valueid,&lt;/P&gt;&lt;P&gt;        value   LIKE zcustomfields-value.&lt;/P&gt;&lt;P&gt;DATA : END OF i_zcustomfields.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_vbpa OCCURS 0,&lt;/P&gt;&lt;P&gt;        vbeln     LIKE vbpa-vbeln,&lt;/P&gt;&lt;P&gt;        kunnr     LIKE vbpa-kunnr,&lt;/P&gt;&lt;P&gt;        adrnr     LIKE vbpa-adrnr.&lt;/P&gt;&lt;P&gt;DATA : END OF i_vbpa.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA d_vbpa LIKE i_vbpa OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF i_zvlxxsr OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE zvlxxsr.&lt;/P&gt;&lt;P&gt;DATA : END OF i_zvlxxsr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES: BEGIN OF t_lfa1,&lt;/P&gt;&lt;P&gt;       lifnr LIKE lfa1-lifnr,&lt;/P&gt;&lt;P&gt;       name1 LIKE lfa1-name1.&lt;/P&gt;&lt;P&gt;TYPES: END OF t_lfa1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : i_lfa1  TYPE HASHED TABLE OF t_lfa1 WITH UNIQUE KEY lifnr.&lt;/P&gt;&lt;P&gt;DATA : l_wa_lfa1 TYPE   t_lfa1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : i_tvkgr TYPE STANDARD TABLE OF t_tvkgr.&lt;/P&gt;&lt;P&gt;DATA : l_tvkgr TYPE t_tvkgr.&lt;/P&gt;&lt;P&gt;DATA : g_date_diff TYPE p.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:  fieldcat_sno  TYPE slis_t_fieldcat_alv,&lt;/P&gt;&lt;P&gt;         g_append_d_vbrp,&lt;/P&gt;&lt;P&gt;         tcode LIKE sy-tcode,&lt;/P&gt;&lt;P&gt;        fkimg_tot LIKE vbrp-fkimg,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Begin     DEVK926013  KYH26013&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       NETPR_TOT LIKE I_VBRP-NETPR,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       NETWR_TOT LIKE I_VBRP-NETPR,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       KBETR_TOT LIKE I_VBRP-NETPR,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       KBETRQTY_TOT LIKE I_VBRP-NETPR,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       GMDPERCENT_TOT LIKE I_VBRP-NETPR,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       GMDNETWR_TOT LIKE I_VBRP-NETPR,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        netpr_tot LIKE vbrp-netwr,&lt;/P&gt;&lt;P&gt;        netwr_tot LIKE vbrp-netwr,&lt;/P&gt;&lt;P&gt;        kbetr_tot LIKE vbrp-netwr,&lt;/P&gt;&lt;P&gt;        kbetrqty_tot LIKE vbrp-netwr,&lt;/P&gt;&lt;P&gt;        gmdpercent_tot LIKE vbrp-netwr,&lt;/P&gt;&lt;P&gt;        gmdnetwr_tot LIKE vbrp-netwr,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End     DEVK926013  KYH26013&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        auth_failure.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:  objnum LIKE vbrk-knumv.&lt;/P&gt;&lt;P&gt;DATA: auth(3) TYPE c.&lt;/P&gt;&lt;P&gt;DATA: authcnt TYPE i VALUE 0.&lt;/P&gt;&lt;P&gt;DATA: cntserno TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: l_from TYPE i,&lt;/P&gt;&lt;P&gt;      l_to   TYPE i,&lt;/P&gt;&lt;P&gt;      l_lines TYPE i,&lt;/P&gt;&lt;P&gt;      l_rows(9) TYPE p DECIMALS 5,&lt;/P&gt;&lt;P&gt;      l_loop TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- begin of ppo924234&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF down_sum OCCURS 0,&lt;/P&gt;&lt;P&gt;      vbeln LIKE vbrk-vbeln,&lt;/P&gt;&lt;P&gt;      fkart LIKE vbrk-fkart,&lt;/P&gt;&lt;P&gt;      fkdat(8),&lt;/P&gt;&lt;P&gt;      kunrg LIKE vbrk-kunrg,&lt;/P&gt;&lt;P&gt;      kunag LIKE vbrk-kunag,&lt;/P&gt;&lt;P&gt;      name1 LIKE kna1-name1,&lt;/P&gt;&lt;P&gt;      vkgrp LIKE knvv-vkgrp,&lt;/P&gt;&lt;P&gt;      bezei LIKE tvgrt-bezei,                               "IMR928046&lt;/P&gt;&lt;P&gt;      zterm LIKE vbrk-zterm,&lt;/P&gt;&lt;P&gt;      bstnk_vf LIKE vbrk-bstnk_vf,&lt;/P&gt;&lt;P&gt;      xblnr LIKE vbrk-xblnr,&lt;/P&gt;&lt;P&gt;      netwr(15),&lt;/P&gt;&lt;P&gt;      partialpmt(15),&lt;/P&gt;&lt;P&gt;      due1(15),&lt;/P&gt;&lt;P&gt;      due2(15),&lt;/P&gt;&lt;P&gt;      due3(15),&lt;/P&gt;&lt;P&gt;      due4(15),&lt;/P&gt;&lt;P&gt;      due5(15),&lt;/P&gt;&lt;P&gt;      due6(15),&lt;/P&gt;&lt;P&gt;      kdgrp LIKE vbrk-kdgrp,&lt;/P&gt;&lt;P&gt;      END OF down_sum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF down_sum_get OCCURS 0,&lt;/P&gt;&lt;P&gt;      line(255),&lt;/P&gt;&lt;P&gt;      END OF down_sum_get.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF down_det OCCURS 0,&lt;/P&gt;&lt;P&gt;      zzid TYPE zchar8,&lt;/P&gt;&lt;P&gt;      zcount(10),&lt;/P&gt;&lt;P&gt;      vbeln TYPE zvbeln,&lt;/P&gt;&lt;P&gt;      posnr(6),&lt;/P&gt;&lt;P&gt;      fkdat(8),&lt;/P&gt;&lt;P&gt;      bstnk_vf TYPE bstnk,&lt;/P&gt;&lt;P&gt;      fkimg(13),&lt;/P&gt;&lt;P&gt;      name1_mfg TYPE zmfg_zar1,&lt;/P&gt;&lt;P&gt;      matnr TYPE matnr,&lt;/P&gt;&lt;P&gt;      arktx TYPE arktx,&lt;/P&gt;&lt;P&gt;      netpr(11),&lt;/P&gt;&lt;P&gt;      kzwi5(13),&lt;/P&gt;&lt;P&gt;      netwr(15),&lt;/P&gt;&lt;P&gt;      kbetr(11),&lt;/P&gt;&lt;P&gt;      kbetrqty(11),&lt;/P&gt;&lt;P&gt;      mwsbp(13),&lt;/P&gt;&lt;P&gt;      gmdpercent(15),&lt;/P&gt;&lt;P&gt;      gmdnetwr(15),&lt;/P&gt;&lt;P&gt;      name1 TYPE zsold_zar1,&lt;/P&gt;&lt;P&gt;      name1_sh TYPE zship_zar1,&lt;/P&gt;&lt;P&gt;      name2_sh TYPE zship2_zar1,&lt;/P&gt;&lt;P&gt;      name3_sh TYPE zship3_zar1,&lt;/P&gt;&lt;P&gt;      stras_sh TYPE stras,&lt;/P&gt;&lt;P&gt;      ort01_sh TYPE ort01,&lt;/P&gt;&lt;P&gt;      regio_sh TYPE regio,&lt;/P&gt;&lt;P&gt;      pstlz_sh TYPE pstlz,&lt;/P&gt;&lt;P&gt;      bname TYPE zbname_zar1,&lt;/P&gt;&lt;P&gt;      vkgrp TYPE vkgrp,&lt;/P&gt;&lt;P&gt;      aubel TYPE vbeln_va ,&lt;/P&gt;&lt;P&gt;      aupos(6),&lt;/P&gt;&lt;P&gt;      audat(8),&lt;/P&gt;&lt;P&gt;      sernr TYPE gernr,&lt;/P&gt;&lt;P&gt;      prodh TYPE prodh_d,&lt;/P&gt;&lt;P&gt;      wgbez TYPE wgbez,&lt;/P&gt;&lt;P&gt;      vtext TYPE bezei20,&lt;/P&gt;&lt;P&gt;      asstg TYPE zasstg,&lt;/P&gt;&lt;P&gt;      matkl TYPE matkl,&lt;/P&gt;&lt;P&gt;      fkart TYPE fkart,&lt;/P&gt;&lt;P&gt;      kunag TYPE kunag,&lt;/P&gt;&lt;P&gt;      vbtyp TYPE vbtyp,&lt;/P&gt;&lt;P&gt;      ihrez TYPE ihrez,&lt;/P&gt;&lt;P&gt;      kdmat TYPE matnr_ku,&lt;/P&gt;&lt;P&gt;      posex TYPE posex,&lt;/P&gt;&lt;P&gt;      zz_ccenter TYPE zv_ccenter,&lt;/P&gt;&lt;P&gt;      zz_dept TYPE 	zv_dept,&lt;/P&gt;&lt;P&gt;      zz_cap_exp_code TYPE zv_cap_exp_code,&lt;/P&gt;&lt;P&gt;      zz_cap_exp_id TYPE zv_cap_exp_id,&lt;/P&gt;&lt;P&gt;      zz_project TYPE zv_project,&lt;/P&gt;&lt;P&gt;      zz_aprvd_by TYPE zv_aprvd_by,&lt;/P&gt;&lt;P&gt;      kdgrp_auft TYPE kdgrp_auft,&lt;/P&gt;&lt;P&gt;      END OF down_det.&lt;/P&gt;&lt;P&gt;*--- end of ppo924234&lt;/P&gt;&lt;P&gt;*--- begin of ppo924471&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF i_tvfk OCCURS 0,&lt;/P&gt;&lt;P&gt;      fkart TYPE fkart,&lt;/P&gt;&lt;P&gt;      END OF i_tvfk.&lt;/P&gt;&lt;P&gt;*--- end of ppo924471&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  begin of KYH&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: fiscal_yr_begn(8) TYPE c,&lt;/P&gt;&lt;P&gt;       fiscal_yr_end(8) TYPE c,&lt;/P&gt;&lt;P&gt;       fiscal_yr LIKE bsid-gjahr,&lt;/P&gt;&lt;P&gt;       fnyear(4) TYPE c,&lt;/P&gt;&lt;P&gt;       fnyear_pre(4) TYPE c.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  END of KYH&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA : v_gjahr LIKE bsid-gjahr.                             " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF t_konp,&lt;/P&gt;&lt;P&gt;       knumh  LIKE konp-knumh,&lt;/P&gt;&lt;P&gt;      kopos  LIKE konp-kopos,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     KBETR LIKE  KONP-KBETR.  " KYH26013&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;       kbetr LIKE  vbrk-netwr.                              " KYH26013&lt;/P&gt;&lt;P&gt;TYPES : END OF t_konp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :i_konp TYPE HASHED TABLE OF t_konp WITH UNIQUE KEY knumh kopos.&lt;/P&gt;&lt;P&gt;DATA : l_wa_konp TYPE t_konp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : l_e_fyv TYPE periv VALUE 10,&lt;/P&gt;&lt;P&gt;       l_i_fyear LIKE  t009b-bdatj,&lt;/P&gt;&lt;P&gt;       l_bsid_index TYPE sy-tabix VALUE 1,&lt;/P&gt;&lt;P&gt;       l_bsad_index TYPE sy-tabix VALUE 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLASS cl_abap_char_utilities DEFINITION LOAD.               "IMR928770&lt;/P&gt;&lt;P&gt;CONSTANTS:&lt;/P&gt;&lt;P&gt;    c_tab  TYPE c VALUE cl_abap_char_utilities=&amp;gt;horizontal_tab,&lt;/P&gt;&lt;P&gt;    c_cret TYPE c VALUE cl_abap_char_utilities=&amp;gt;cr_lf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS c_index TYPE i VALUE 2000.                        "KYH25969&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : BEGIN OF BLOCK blk1 WITH FRAME.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS : zkunag  FOR vbrk-kunag MATCHCODE OBJECT debi,&lt;/P&gt;&lt;P&gt;                 zvbeln FOR vbrk-vbeln MATCHCODE OBJECT vmcf,&lt;/P&gt;&lt;P&gt;                 zfkdat  FOR vbrk-fkdat OBLIGATORY,&lt;/P&gt;&lt;P&gt;                 zvkbur  FOR knvv-vkbur,&lt;/P&gt;&lt;P&gt;                 zvkgrp FOR knvv-vkgrp OBLIGATORY,&lt;/P&gt;&lt;P&gt;                 zbukrs  FOR bsid-bukrs OBLIGATORY,&lt;/P&gt;&lt;P&gt;                 zgjahr  FOR bsid-gjahr OBLIGATORY,&lt;/P&gt;&lt;P&gt;                 zvbtyp  FOR vbrk-vbtyp NO-DISPLAY,&lt;/P&gt;&lt;P&gt;                 zbstnkvf FOR vbrk-bstnk_vf,&lt;/P&gt;&lt;P&gt;                 zxblnr FOR vbrk-xblnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : END OF BLOCK blk1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : BEGIN OF BLOCK blk2 WITH FRAME.&lt;/P&gt;&lt;P&gt;PARAMETER : zopeninv  RADIOBUTTON GROUP inv,&lt;/P&gt;&lt;P&gt;            zallinv  RADIOBUTTON GROUP inv DEFAULT 'X'.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : END OF BLOCK blk2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : BEGIN OF BLOCK blk3 WITH FRAME.&lt;/P&gt;&lt;P&gt;PARAMETER : zinvoice AS CHECKBOX,&lt;/P&gt;&lt;P&gt;            zdebit AS CHECKBOX,&lt;/P&gt;&lt;P&gt;            zcredit AS CHECKBOX.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : END OF BLOCK blk3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : BEGIN OF BLOCK blk4 WITH FRAME.&lt;/P&gt;&lt;P&gt;PARAMETER : zsumrep RADIOBUTTON GROUP rep DEFAULT 'X',&lt;/P&gt;&lt;P&gt;            zdetrep RADIOBUTTON GROUP rep.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS : zmfrnr FOR vbrp-zzp_mfrnr MATCHCODE OBJECT kred.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 1.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN PUSHBUTTON /1(42) prun_det USER-COMMAND prun.&lt;/P&gt;&lt;P&gt;PARAMETERS: zid LIKE zar1_detail-zzid.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN : END OF BLOCK blk4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- begin of ppo924234&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK blk5 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_appfil RADIOBUTTON GROUP file DEFAULT 'X',&lt;/P&gt;&lt;P&gt;            p_prsfil RADIOBUTTON GROUP file.&lt;/P&gt;&lt;P&gt;PARAMETERS: filepath LIKE rlgrap-filename.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK blk5.&lt;/P&gt;&lt;P&gt;*--- end of ppo924234&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MOVE : 'Detail Report results of the previous run' TO prun_det.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  zid = sy-uname(8).&lt;/P&gt;&lt;P&gt;  tcode = sy-tcode.&lt;/P&gt;&lt;P&gt;  IF NOT tcode IS INITIAL.&lt;/P&gt;&lt;P&gt;    tvarv-name = 'ZTCODE_ZAR_INVOICE'.&lt;/P&gt;&lt;P&gt;    tvarv-type = 'P'.&lt;/P&gt;&lt;P&gt;    tvarv-low  = tcode.&lt;/P&gt;&lt;P&gt;    MODIFY tvarv.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF tcode NE 'ZAR2'.&lt;/P&gt;&lt;P&gt;    NEW-PAGE LINE-SIZE 255.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    NEW-PAGE LINE-SIZE 170.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;  IF sscrfields-ucomm = 'PRUN'.&lt;/P&gt;&lt;P&gt;    PERFORM call_ze16.&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;*--- begin of ppo924234&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON BLOCK blk5.&lt;/P&gt;&lt;P&gt;  IF p_prsfil = 'X' AND filepath IS INITIAL.&lt;/P&gt;&lt;P&gt;    MESSAGE e001(00) WITH 'Enter the File Name'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--- end of ppo924234&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  PERFORM check_tcode.&lt;/P&gt;&lt;P&gt;  PERFORM check_authorization.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF auth_failure = '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;  PERFORM get_sd_doc_category.&lt;/P&gt;&lt;P&gt;  PERFORM get_invoice_data.&lt;/P&gt;&lt;P&gt;  IF NOT  i_vbrk[] IS  INITIAL.                             "KYH25969&lt;/P&gt;&lt;P&gt;    PERFORM get_accounting_data.&lt;/P&gt;&lt;P&gt;    PERFORM get_other_data.&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    "KYH25969&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  IF NOT  i_vbrk[] IS  INITIAL.                             " KYH25969&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM process_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT zsumrep IS INITIAL.&lt;/P&gt;&lt;P&gt;*--- begin of ppo924234&lt;/P&gt;&lt;P&gt;      IF NOT filepath IS INITIAL.&lt;/P&gt;&lt;P&gt;        CLEAR down_sum.&lt;/P&gt;&lt;P&gt;        REFRESH down_sum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MOVE: 'Invoice No'              TO down_sum-vbeln,&lt;/P&gt;&lt;P&gt;              'ITyp'                    TO down_sum-fkart,&lt;/P&gt;&lt;P&gt;              'Bill Dt'                 TO down_sum-fkdat,&lt;/P&gt;&lt;P&gt;              'Bill-to#'                TO down_sum-kunrg,&lt;/P&gt;&lt;P&gt;              'Customer#'               TO down_sum-kunag,&lt;/P&gt;&lt;P&gt;              'Name'                    TO down_sum-name1,&lt;/P&gt;&lt;P&gt;              'SPN'                     TO down_sum-vkgrp,&lt;/P&gt;&lt;P&gt;              'Spn Name'                TO down_sum-bezei,  "IMR928046&lt;/P&gt;&lt;P&gt;              'PayT'                    TO down_sum-zterm,&lt;/P&gt;&lt;P&gt;              'PO No'                   TO down_sum-bstnk_vf,&lt;/P&gt;&lt;P&gt;              'Ref Doc'                 TO down_sum-xblnr,&lt;/P&gt;&lt;P&gt;              'Invoice Total'           TO down_sum-netwr,&lt;/P&gt;&lt;P&gt;              'Payments'                TO down_sum-partialpmt,&lt;/P&gt;&lt;P&gt;              'Due(00-29 Days)'         TO down_sum-due1,&lt;/P&gt;&lt;P&gt;              'Due(30-44 Days)'         TO down_sum-due2,&lt;/P&gt;&lt;P&gt;              'Due(45-59 Days)'         TO down_sum-due3,&lt;/P&gt;&lt;P&gt;              'Due(60-74 Days)'         TO down_sum-due4,&lt;/P&gt;&lt;P&gt;              'Due(75-89 Days)'         TO down_sum-due5,&lt;/P&gt;&lt;P&gt;              'Due(Ovr 90Days)'       TO down_sum-due6,&lt;/P&gt;&lt;P&gt;              'CGrp'                    TO down_sum-kdgrp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        APPEND down_sum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        LOOP AT i_vbrk.&lt;/P&gt;&lt;P&gt;          MOVE-CORRESPONDING i_vbrk TO down_sum.&lt;/P&gt;&lt;P&gt;          APPEND down_sum.&lt;/P&gt;&lt;P&gt;          CLEAR down_sum.&lt;/P&gt;&lt;P&gt;        ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        PERFORM download_file TABLES down_sum USING down_sum.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;*--- end of ppo924234&lt;/P&gt;&lt;P&gt;      PERFORM display_summary_output.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    for Detail report&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF NOT  i_vbrk[] IS  INITIAL.                         " KYH26282&lt;/P&gt;&lt;P&gt;        PERFORM get_data_for_detail_report.&lt;/P&gt;&lt;P&gt;        PERFORM process_data_for_detail_report.&lt;/P&gt;&lt;P&gt;        PERFORM display_detail_report.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        MESSAGE i001(00) WITH 'No data exists for the given selection'.&lt;/P&gt;&lt;P&gt;                                                            " KYH26282&lt;/P&gt;&lt;P&gt;      ENDIF.                                                "KYH26282&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MESSAGE i001(00) WITH 'No data exists for the given selection'.&lt;/P&gt;&lt;P&gt;                                                            "KYH25969&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25969&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  GET_INVOICE_DATA&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_invoice_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  TYPES : BEGIN OF t1_vbrp,&lt;/P&gt;&lt;P&gt;          vbeln TYPE vbeln,&lt;/P&gt;&lt;P&gt;          gmdnetwr LIKE zar1_struc1-gmdnetwr,&lt;/P&gt;&lt;P&gt;          gmdpercent LIKE zar1_struc1-gmdpercent,&lt;/P&gt;&lt;P&gt;          vkgrp TYPE vkgrp.&lt;/P&gt;&lt;P&gt;  TYPES END OF t1_vbrp.&lt;/P&gt;&lt;P&gt;  DATA : v_end_flag(1) TYPE c.&lt;/P&gt;&lt;P&gt;  DATA : l_tab_vbrp TYPE STANDARD TABLE OF t1_vbrp. "KYH&lt;/P&gt;&lt;P&gt;  DATA:  l_wa_vbrp  LIKE LINE OF i_vbrp.&lt;/P&gt;&lt;P&gt;  DATA : l1_vbrp TYPE t1_vbrp.&lt;/P&gt;&lt;P&gt;  DATA : l_tab_temp LIKE STANDARD TABLE OF i_vbrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : l_sy_tabix LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;         gmdnetwr LIKE i_vbrp-gmdnetwr,&lt;/P&gt;&lt;P&gt;         gmdpercent LIKE i_vbrp-gmdpercent,&lt;/P&gt;&lt;P&gt;         l_count LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;         l_tabix TYPE sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: l_sy_tabix, l_tabix.&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; SELECT vbeln fkart vbtyp knumv fkdat  gjahr kdgrp rfbsk zterm bukrs&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; netwr kunrg kunag                                     "IMR928882&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           bstnk_vf xblnr mwsbk rfbsk&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           INTO  TABLE i_vbrk&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                    FROM vbrk WHERE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     vbeln  IN zvbeln AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     vbtyp IN zvbtyp AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     fkdat  IN zfkdat AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     bukrs  IN zbukrs AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     kunag  IN zkunag AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     bstnk_vf IN zbstnkvf AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     xblnr  IN zxblnr AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                     fksto NE 'X' .&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-dbcnt NE 0.&lt;/P&gt;&lt;P&gt;    IF NOT zsumrep IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF NOT i_vbrk[] IS INITIAL.&lt;/P&gt;&lt;P&gt;        PERFORM fiscal_year_check.                          " KYH25882&lt;/P&gt;&lt;P&gt;        IF NOT i_vbrk[] IS INITIAL.                         " KYH25882&lt;/P&gt;&lt;P&gt;          REFRESH: l_tab_temp.&lt;/P&gt;&lt;P&gt;          CLEAR: l_from,&lt;/P&gt;&lt;P&gt;                 l_to,&lt;/P&gt;&lt;P&gt;                 l_lines,&lt;/P&gt;&lt;P&gt;                 l_rows,&lt;/P&gt;&lt;P&gt;                 l_loop.&lt;/P&gt;&lt;P&gt;          DESCRIBE TABLE i_vbrk LINES l_lines.&lt;/P&gt;&lt;P&gt;          l_from = 1.&lt;/P&gt;&lt;P&gt;          l_to = c_index.&lt;/P&gt;&lt;P&gt;          l_rows = l_lines / c_index.&lt;/P&gt;&lt;P&gt;          l_loop = CEIL( l_rows ).&lt;/P&gt;&lt;P&gt;          IF l_loop = 0.&lt;/P&gt;&lt;P&gt;            l_loop = 1.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          DO l_loop TIMES.&lt;/P&gt;&lt;P&gt;            APPEND LINES OF i_vbrk FROM l_from TO l_to TO l_tab_temp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            SELECT  vbeln posnr vkgrp  mwsbp kzwi5 aubel aupos&lt;/P&gt;&lt;P&gt;            kdgrp_auft&lt;/P&gt;&lt;P&gt;           APPENDING CORRESPONDING FIELDS OF  TABLE i_vbrp&lt;/P&gt;&lt;P&gt;                               FROM  vbrp  FOR ALL ENTRIES IN l_tab_temp&lt;/P&gt;&lt;P&gt;                               WHERE&lt;/P&gt;&lt;P&gt;                                             vbeln  = l_tab_temp-vbeln&lt;/P&gt;&lt;P&gt;                                             AND&lt;/P&gt;&lt;P&gt;                                             vkbur IN zvkbur AND&lt;/P&gt;&lt;P&gt;                                             vkgrp IN zvkgrp.&lt;/P&gt;&lt;P&gt;            REFRESH l_tab_temp.&lt;/P&gt;&lt;P&gt;            l_from = l_to + 1.&lt;/P&gt;&lt;P&gt;            l_to = l_to + c_index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          ENDDO.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;*Remove entries from VBRK checkinf for SPN on selection screen&lt;/P&gt;&lt;P&gt;        PERFORM check_spn.                                  " KRI926835&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF NOT i_vbrk[] IS INITIAL.&lt;/P&gt;&lt;P&gt;        PERFORM fiscal_year_check.                          " KYH25882&lt;/P&gt;&lt;P&gt;        IF NOT i_vbrk[] IS INITIAL.                         " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          REFRESH: l_tab_temp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          CLEAR: l_from,&lt;/P&gt;&lt;P&gt;                 l_to,&lt;/P&gt;&lt;P&gt;                 l_lines,&lt;/P&gt;&lt;P&gt;                 l_rows,&lt;/P&gt;&lt;P&gt;                 l_loop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          DESCRIBE TABLE i_vbrk LINES l_lines.&lt;/P&gt;&lt;P&gt;          l_from = 1.&lt;/P&gt;&lt;P&gt;          l_to = c_index.&lt;/P&gt;&lt;P&gt;          l_rows = l_lines / c_index.&lt;/P&gt;&lt;P&gt;          l_loop = CEIL( l_rows ).&lt;/P&gt;&lt;P&gt;          IF l_loop = 0.&lt;/P&gt;&lt;P&gt;            l_loop = 1.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          DO l_loop TIMES.&lt;/P&gt;&lt;P&gt;            APPEND LINES OF i_vbrk FROM l_from TO l_to TO l_tab_temp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;           SELECT vbeln posnr fkimg matnr arktx netwr vkgrp aubel aupos&lt;/P&gt;&lt;P&gt;           sernr&lt;/P&gt;&lt;P&gt;            zzp_mfrnr vgbel vgpos aupos matkl mwsbp kzwi5 kdgrp_auft&lt;/P&gt;&lt;P&gt;              APPENDING CORRESPONDING FIELDS OF  TABLE i_vbrp&lt;/P&gt;&lt;P&gt;               FROM  vbrp  FOR ALL ENTRIES IN l_tab_temp WHERE&lt;/P&gt;&lt;P&gt;                             vbeln  = l_tab_temp-vbeln AND&lt;/P&gt;&lt;P&gt;                             vkbur IN zvkbur AND&lt;/P&gt;&lt;P&gt;                             vkgrp IN zvkgrp AND&lt;/P&gt;&lt;P&gt;                             zzp_mfrnr IN zmfrnr.&lt;/P&gt;&lt;P&gt;            REFRESH l_tab_temp.&lt;/P&gt;&lt;P&gt;            l_from = l_to + 1.&lt;/P&gt;&lt;P&gt;            l_to = l_to + c_index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          ENDDO.&lt;/P&gt;&lt;P&gt;        ENDIF.                                              " KYH25882&lt;/P&gt;&lt;P&gt;&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 NOT i_vbrk[] IS INITIAL.                             "KYH25882&lt;/P&gt;&lt;P&gt;      SORT i_vbrk BY vbeln.                                 "KYH25882&lt;/P&gt;&lt;P&gt;      SORT i_vbrp BY vbeln posnr.                           "KYH25882&lt;/P&gt;&lt;P&gt;      LOOP AT i_vbrk.&lt;/P&gt;&lt;P&gt;        MOVE  i_vbrk-kunag TO i_kunag-kunag.&lt;/P&gt;&lt;P&gt;        APPEND i_kunag.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        MOVE i_vbrk-knumv TO i_knumv-knumv.&lt;/P&gt;&lt;P&gt;        APPEND i_knumv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDIF.                                                  " KYH25882&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_INVOICE_DATA&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  GET_ACCOUNTING_DATA&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_accounting_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : l_tab_vbrp LIKE STANDARD TABLE OF i_vbrp. "KYH&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: l_tab_temp LIKE STANDARD TABLE OF i_vbrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CONSTANTS c_index TYPE i VALUE 4000.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_vbrk[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    REFRESH: l_tab_temp.&lt;/P&gt;&lt;P&gt;    CLEAR: l_from,&lt;/P&gt;&lt;P&gt;            l_to,&lt;/P&gt;&lt;P&gt;            l_lines,&lt;/P&gt;&lt;P&gt;            l_rows,&lt;/P&gt;&lt;P&gt;            l_loop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DESCRIBE TABLE i_vbrk LINES l_lines.&lt;/P&gt;&lt;P&gt;    l_from = 1.&lt;/P&gt;&lt;P&gt;    l_to = c_index.&lt;/P&gt;&lt;P&gt;    l_rows = l_lines / c_index.&lt;/P&gt;&lt;P&gt;    l_loop = CEIL( l_rows ).&lt;/P&gt;&lt;P&gt;    IF l_loop = 0.&lt;/P&gt;&lt;P&gt;      l_loop = 1.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DO l_loop TIMES.&lt;/P&gt;&lt;P&gt;      APPEND LINES OF i_vbrk FROM l_from TO l_to TO l_tab_temp.&lt;/P&gt;&lt;P&gt;      DELETE l_tab_temp WHERE rfbsk &amp;lt;&amp;gt; 'C'.                 " KYH25882&lt;/P&gt;&lt;P&gt;      IF NOT l_tab_temp[] IS INITIAL .                      " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT belnr buzei dmbtr shkzg APPENDING TABLE i_bsad&lt;/P&gt;&lt;P&gt;        FROM bsad&lt;/P&gt;&lt;P&gt;        FOR ALL ENTRIES IN l_tab_temp&lt;/P&gt;&lt;P&gt;        WHERE&lt;/P&gt;&lt;P&gt;            bukrs EQ l_tab_temp-bukrs AND&lt;/P&gt;&lt;P&gt;            gjahr EQ l_tab_temp-gjahr AND&lt;/P&gt;&lt;P&gt;            belnr EQ l_tab_temp-vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDIF.                                                " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      REFRESH l_tab_temp.&lt;/P&gt;&lt;P&gt;      l_from = l_to + 1.&lt;/P&gt;&lt;P&gt;      l_to = l_to + c_index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;*--- begin of ppo924396&lt;/P&gt;&lt;P&gt;    REFRESH: l_tab_temp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR: l_from,&lt;/P&gt;&lt;P&gt;           l_to,&lt;/P&gt;&lt;P&gt;           l_lines,&lt;/P&gt;&lt;P&gt;           l_rows,&lt;/P&gt;&lt;P&gt;           l_loop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DESCRIBE TABLE i_vbrk LINES l_lines.&lt;/P&gt;&lt;P&gt;    l_from = 1.&lt;/P&gt;&lt;P&gt;    l_to = c_index.&lt;/P&gt;&lt;P&gt;    l_rows = l_lines / c_index.&lt;/P&gt;&lt;P&gt;    l_loop = CEIL( l_rows ).&lt;/P&gt;&lt;P&gt;    IF l_loop = 0.&lt;/P&gt;&lt;P&gt;      l_loop = 1.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DO l_loop TIMES.&lt;/P&gt;&lt;P&gt;      APPEND LINES OF i_vbrk FROM l_from TO l_to TO l_tab_temp.&lt;/P&gt;&lt;P&gt;      DELETE l_tab_temp WHERE rfbsk &amp;lt;&amp;gt; 'C'.                 " KYH25882&lt;/P&gt;&lt;P&gt;      IF NOT l_tab_temp[] IS INITIAL .                      " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        SELECT  belnr buzei shkzg dmbtr rebzg FROM bsid     "vma928512&lt;/P&gt;&lt;P&gt;                          APPENDING CORRESPONDING FIELDS OF TABLE i_bsid&lt;/P&gt;&lt;P&gt;                          FOR ALL ENTRIES IN l_tab_temp&lt;/P&gt;&lt;P&gt;                          WHERE bukrs EQ l_tab_temp-bukrs&lt;/P&gt;&lt;P&gt;                          "PRA927038 "PRA927150  vbeln pick&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDIF.                                                " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      REFRESH l_tab_temp.&lt;/P&gt;&lt;P&gt;      l_from = l_to + 1.&lt;/P&gt;&lt;P&gt;      l_to = l_to + c_index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT fkart FROM tvfk INTO TABLE i_tvfk WHERE vbtyp = 'O'.&lt;/P&gt;&lt;P&gt;                                                            "ppo924471&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   delete i_bsid where augbl = space.  " PRA927093&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_ACCOUNTING_DATA&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  GET_SD_DOC_CATEGORY&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_sd_doc_category .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Exclude SD Doc Category N and S&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  zvbtyp-sign = 'E'.&lt;/P&gt;&lt;P&gt;  zvbtyp-option = 'EQ'.&lt;/P&gt;&lt;P&gt;  zvbtyp-low = 'N'.&lt;/P&gt;&lt;P&gt;  APPEND zvbtyp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  zvbtyp-sign = 'E'.&lt;/P&gt;&lt;P&gt;  zvbtyp-option = 'EQ'.&lt;/P&gt;&lt;P&gt;  zvbtyp-low = 'S'.&lt;/P&gt;&lt;P&gt;  APPEND zvbtyp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get only Invoices&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF NOT zinvoice IS INITIAL.&lt;/P&gt;&lt;P&gt;    zvbtyp-sign = 'I'.&lt;/P&gt;&lt;P&gt;    zvbtyp-option = 'EQ'.&lt;/P&gt;&lt;P&gt;    zvbtyp-low = 'M'.&lt;/P&gt;&lt;P&gt;    APPEND zvbtyp.&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;Get only Credit Memos&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF NOT zcredit IS INITIAL.&lt;/P&gt;&lt;P&gt;    zvbtyp-sign = 'I'.&lt;/P&gt;&lt;P&gt;    zvbtyp-option = 'EQ'.&lt;/P&gt;&lt;P&gt;    zvbtyp-low = 'O'.&lt;/P&gt;&lt;P&gt;    APPEND zvbtyp.&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;Get only Debit Memos&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF NOT zdebit IS INITIAL.&lt;/P&gt;&lt;P&gt;    zvbtyp-sign = 'I'.&lt;/P&gt;&lt;P&gt;    zvbtyp-option = 'EQ'.&lt;/P&gt;&lt;P&gt;    zvbtyp-low = 'P'.&lt;/P&gt;&lt;P&gt;    APPEND zvbtyp.&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;GET Fiscal year.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF NOT zgjahr IS INITIAL.&lt;/P&gt;&lt;P&gt;    zgjahr-sign = 'I'.&lt;/P&gt;&lt;P&gt;    zgjahr-option = 'EQ'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   APPEND i_zgjahr.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    APPEND zgjahr.                                          "IMR928882&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;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_SD_DOC_CATEGORY&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  GET_OTHER_DATA&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_other_data .&lt;/P&gt;&lt;P&gt;  IF NOT i_kunag[] IS INITIAL.                              " KYH25882&lt;/P&gt;&lt;P&gt;    SORT i_kunag BY kunag.&lt;/P&gt;&lt;P&gt;    DELETE ADJACENT DUPLICATES FROM i_kunag COMPARING kunag.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT kunnr name1 name2 name3 stras ort01 regio pstlz adrnr FROM&lt;/P&gt;&lt;P&gt;    kna1      INTO CORRESPONDING FIELDS OF TABLE i_kna1 FOR ALL ENTRIES&lt;/P&gt;&lt;P&gt;              IN i_kunag WHERE kunnr = i_kunag-kunag.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   SELECT kunnr name1 name2 name3 stras ort01 regio pstlz adrnr FROM&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;kna1 INTO TABLE i_kna1 FOR ALL ENTRIES                     "IMR928882&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                IN i_kunag WHERE kunnr = i_kunag-kunag.&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;   IF NOT I_KNUMV[] IS INITIAL.          " KYH25882&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     SORT I_KNUMV BY KNUMV.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     DELETE ADJACENT DUPLICATES FROM I_KNUMV COMPARING KNUMV.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  ENDIF.                    "  KYH25882&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    "  KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_OTHER_DATA&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  PROCESS_DATA&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM process_data .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_vbrk[] IS INITIAL.                               " KYH25882&lt;/P&gt;&lt;P&gt;    DATA: l_sy_tabix LIKE sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR l_sy_tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SORT i_kna1 BY kunnr.&lt;/P&gt;&lt;P&gt;    SORT i_bsad BY belnr.&lt;/P&gt;&lt;P&gt;    SORT i_bsid BY belnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT i_vbrk.&lt;/P&gt;&lt;P&gt;      l_sy_tabix = sy-tabix.&lt;/P&gt;&lt;P&gt;      PERFORM invoice_total_get.                            "ppo924692&lt;/P&gt;&lt;P&gt;      PERFORM payments_get.&lt;/P&gt;&lt;P&gt;      IF NOT zopeninv IS INITIAL AND  i_vbrk-opendmbtr = 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      IF NOT zopeninv IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     start pradeep&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     perform openinvoices.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        DELETE i_vbrk.&lt;/P&gt;&lt;P&gt;        CONTINUE.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM customer_name_get. "krishna&lt;/P&gt;&lt;P&gt;      PERFORM return_cal_sum.                               "ppo925435&lt;/P&gt;&lt;P&gt;      PERFORM dues_data_get.                                "ppo925435&lt;/P&gt;&lt;P&gt;      PERFORM spn_get.                                      "IMR928046&lt;/P&gt;&lt;P&gt;      MODIFY i_vbrk INDEX l_sy_tabix.&lt;/P&gt;&lt;P&gt;      CLEAR i_vbrk.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;ENDFORM.                    " PROCESS_DATA&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  DISPLAY_SUMMARY_OUTPUT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM display_summary_output .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF i_vbrk[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    MESSAGE i001(00) WITH 'No data exists for the given selection'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM build_field_cat.&lt;/P&gt;&lt;P&gt;  PERFORM call_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " DISPLAY_SUMMARY_OUTPUT&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_FIELD_CAT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM build_field_cat .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: ls_fieldcat TYPE slis_fieldcat_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'VBELN'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ls_fieldcat-ref_tabname  = 'VBRK'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Invoice No'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'FKART'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ls_fieldcat-ref_tabname  = 'VBRK'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.                      "IMR928770&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'ITyp'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'FKDAT'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ls_fieldcat-ref_tabname  = 'VBRK'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Bill Dt'.                     "IMR928770&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'KUNRG'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ls_fieldcat-ref_tabname  = 'VBRK'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.                      "IMR928770&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Bill To #'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'KUNAG'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Customer #'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'NAME1'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ls_fieldcat-ref_tabname  = 'KNA1'.           "IMR928770&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Name'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'VKGRP'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ls_fieldcat-ref_tabname  = 'VBRP'.                       "IMR928770&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Spn'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.                                        "IMR928046&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'BEZEI'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ls_fieldcat-ref_tabname  = 'TVGRT'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Spn Name'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'ZTERM'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ls_fieldcat-ref_tabname  = 'VBRK'.                        "IMR928770&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'PayT'.                        "IMR928770&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'BSTNK_VF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ls_fieldcat-ref_tabname  = 'VBRK'.           "IMR928770&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Client PO'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'XBLNR'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ls_fieldcat-ref_tabname  = 'VBRK'.           "IMR928770&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Ref Doc'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'NETWR'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ls_fieldcat-ref_tabname  = 'VBRP'.            "IMR928770&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Invoice Total'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'PARTIALPMT'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Payment'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'DUE1'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Due ( 0 - 29)'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'DUE2'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Due ( 30 - 44)'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'DUE3'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Due ( 45 - 59)'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'DUE4'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Due ( 60 - 74)'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'DUE5'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Due ( 75 - 89)'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'DUE6'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-ref_tabname  = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'Due ( Over 90)'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR ls_fieldcat.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-fieldname    = 'KDGRP'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ls_fieldcat-ref_tabname  = 'VBRK'.             "IMR928770&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'I_VBRK'.&lt;/P&gt;&lt;P&gt;  ls_fieldcat-reptext_ddic = 'CGrp'.                        "IMR928770&lt;/P&gt;&lt;P&gt;  ls_fieldcat-key          = ' '.&lt;/P&gt;&lt;P&gt;  APPEND ls_fieldcat TO fieldcat_sno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " BUILD_FIELD_CAT&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  CALL_ALV&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM call_alv .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : l_prg LIKE sy-repid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  l_prg = sy-repid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      i_callback_program      = l_prg&lt;/P&gt;&lt;P&gt;      it_fieldcat             = fieldcat_sno&lt;/P&gt;&lt;P&gt;      i_callback_user_command = 'CALL_VF03'                 "ppo924692&lt;/P&gt;&lt;P&gt;      i_save                  = 'A'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      t_outtab                = i_vbrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " CALL_ALV&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  CUSTOMER_NAME_GET&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM customer_name_get .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE i_kna1 WITH KEY  kunnr = i_vbrk-kunag BINARY SEARCH.&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;    i_vbrk-name1 =  i_kna1-name1.&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;ENDFORM.                    " CUSTOMER_NAME_GET&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  INVOICE_TOTAL_GET&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM invoice_total_get .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  i_vbrk-netwr = i_vbrk-netwr + i_vbrk-mwsbk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " INVOICE_TOTAL_GET&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  PAYMENTS_GET&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM payments_get .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA :&lt;/P&gt;&lt;P&gt;  "L_PARTIALPMT LIKE BSAD-DMBTR,                         "ppo924396&lt;/P&gt;&lt;P&gt;         l_paydue LIKE bsad-dmbtr,&lt;/P&gt;&lt;P&gt;         l_shkzg,                                           "ppo924471&lt;/P&gt;&lt;P&gt;         l_shkzg_bsid,                                      "vma928665&lt;/P&gt;&lt;P&gt;         l_wa_bsad LIKE i_bsad,&lt;/P&gt;&lt;P&gt;         l_wa_bsid LIKE i_bsid.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CLEAR: l_partialpmt, l_paydue.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Begin of Changes  KYH DEVK925834&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR: i_tvfk, l_shkzg, l_shkzg_bsid.                     "vma928665&lt;/P&gt;&lt;P&gt;  SORT i_tvfk BY fkart.                                     " KYH25882&lt;/P&gt;&lt;P&gt;  READ TABLE i_tvfk WITH KEY fkart = i_vbrk-fkart BINARY SEARCH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;    l_shkzg      = 'H'.&lt;/P&gt;&lt;P&gt;    l_shkzg_bsid = 'S'.                                     "vma928665&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    l_shkzg = 'S'.&lt;/P&gt;&lt;P&gt;    l_shkzg_bsid = 'H'.                                     "vma928665&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;End of changes  KYH DEVK925834&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*--- begin of ppo924396&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT i_bsad BY belnr.&lt;/P&gt;&lt;P&gt; READ TABLE i_bsad TRANSPORTING NO FIELDS WITH KEY belnr = i_vbrk-vbeln&lt;/P&gt;&lt;P&gt;                                                 BINARY SEARCH.&lt;/P&gt;&lt;P&gt;                                                            " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;*--- begin of ppo924471&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; CLEAR: I_TVFK, L_SHKZG.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; READ TABLE I_TVFK WITH KEY FKART = I_VBRK-FKART.&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; L_SHKZG = 'H'.&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; L_SHKZG = 'S'.&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;*--- end of ppo924471&lt;/P&gt;&lt;P&gt;*--- end of ppo924396&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT i_bsad  WHERE belnr = i_vbrk-vbeln AND shkzg = l_shkzg.&lt;/P&gt;&lt;P&gt;                                                            "ppo924471.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IF i_bsad-belnr  NE i_vbrk-vbeln OR i_bsad-shkzg NE l_shkzg.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       EXIT.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      l_partialpmt = l_partialpmt + i_bsad-dmbtr.&lt;/P&gt;&lt;P&gt;      CLEAR i_bsad.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;*--- begin of ppo924396&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*sort i_bsid by belnr.&lt;/P&gt;&lt;P&gt;*READ TABLE i_bsid TRANSPORTING NO FIELDS WITH KEY belnr = i_vbrk-vbeln.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                                 BINARY SEARCH.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                                                            " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BEGIN           " KYH26588&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   LOOP AT I_BSID  FROM SY-TABIX. " WHERE BELNR = I_VBRK-VBELN&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                    AND SHKZG = H.                   "ppo924471&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    LOOP AT I_BSID  WHERE SHKZG = 'H'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*IF SY-SUBRC = 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    LOOP AT i_bsid   WHERE belnr = i_vbrk-vbeln&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                        AND    shkzg = 'H'.&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;{ begin of "vma928411------------------------------------------------*&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    LOOP AT i_bsid   WHERE rebzg = i_vbrk-vbeln             "vma928512&lt;/P&gt;&lt;P&gt;                       AND    shkzg = l_shkzg_bsid.         "vma928665&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       IF I_BSID-BELNR  NE I_VBRK-VBELN OR I_BSID-SHKZG NE L_SHKZG.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;END           " KYH26588&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      l_partialpmt = l_partialpmt + i_bsid-dmbtr.&lt;/P&gt;&lt;P&gt;      CLEAR i_bsid.&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;end of "vma928411 }--------------------------------------------------*&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*--- end of ppo924396&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;delete the processed records so that the number of&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;loops for next iteration will be reduced. "krishna&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; DELETE I_BSAD WHERE BELNR = I_VBRK-VBELN.   "krishna&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; DELETE I_BSID WHERE BELNR = I_VBRK-VBELN.   "krishna&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; i_vbrk-partialpmt =  l_partialpmt. "PRA927150&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; IF I_VBRK-NETWR EQ I_VBRK-PARTIALPMT.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   I_VBRK-OPENDMBTR = 0.&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;   LOOP AT I_BSID WHERE BELNR = I_VBRK-VBELN.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     L_PAYDUE = L_PAYDUE + I_BSID-DMBTR.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     CLEAR I_BSID.&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;   I_VBRK-OPENDMBTR = L_PAYDUE.&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;  i_vbrk-opendmbtr = i_vbrk-netwr - l_partialpmt.&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.                    " PAYMENTS_GET&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  DUES_DATA_GET&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM dues_data_get .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : l_dt_diff(6) TYPE n.&lt;/P&gt;&lt;P&gt;  CLEAR l_dt_diff.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  l_dt_diff = sy-datum - i_vbrk-fkdat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  i_vbrk-partialpmt = l_partialpmt.                         "PRA927135&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF ( l_dt_diff GE 0 ) AND ( l_dt_diff LE 29 ).&lt;/P&gt;&lt;P&gt;    i_vbrk-due1 = i_vbrk-opendmbtr.&lt;/P&gt;&lt;P&gt;  ELSEIF ( l_dt_diff GE 30 ) AND ( l_dt_diff LE 44 ).&lt;/P&gt;&lt;P&gt;    i_vbrk-due2 = i_vbrk-opendmbtr.&lt;/P&gt;&lt;P&gt;  ELSEIF ( l_dt_diff GE 45 ) AND ( l_dt_diff LE 59 ).&lt;/P&gt;&lt;P&gt;    i_vbrk-due3 = i_vbrk-opendmbtr.&lt;/P&gt;&lt;P&gt;  ELSEIF ( l_dt_diff GE 60 ) AND ( l_dt_diff LE 74 ).&lt;/P&gt;&lt;P&gt;    i_vbrk-due4 = i_vbrk-opendmbtr.&lt;/P&gt;&lt;P&gt;  ELSEIF ( l_dt_diff GE 75 ) AND ( l_dt_diff LE 89 ).&lt;/P&gt;&lt;P&gt;    i_vbrk-due5 = i_vbrk-opendmbtr.&lt;/P&gt;&lt;P&gt;  ELSEIF ( l_dt_diff GE 90 ).&lt;/P&gt;&lt;P&gt;    i_vbrk-due6 = i_vbrk-opendmbtr.&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;ENDFORM.                    " DUES_DATA_GET&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  GET_DATA_FOR_DETAIL_REPORT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_data_for_detail_report .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM get_material_info.&lt;/P&gt;&lt;P&gt;  PERFORM get_sd_info.&lt;/P&gt;&lt;P&gt;  PERFORM get_prod_hierarchies_info.&lt;/P&gt;&lt;P&gt;  PERFORM get_conditions_info.&lt;/P&gt;&lt;P&gt;  PERFORM get_serial_nos_info.&lt;/P&gt;&lt;P&gt;  PERFORM get_partner_profile_info.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_DATA_FOR_DETAIL_REPORT&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  PROCESS_DATA_FOR_DETAIL_REPORT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM process_data_for_detail_report .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR d_vbrp.&lt;/P&gt;&lt;P&gt;  REFRESH d_vbrp.&lt;/P&gt;&lt;P&gt;  IF NOT i_vbrp[] IS INITIAL .                              " KYH25882&lt;/P&gt;&lt;P&gt;    SORT i_t179t BY prodh.                                  " KYH25882&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   SORT I_VBPA BY VBELN.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SORT i_lfa1 BY lifnr.                                   " KYH25987&lt;/P&gt;&lt;P&gt;    SORT i_t023t BY matkl.                                  " KYH25882&lt;/P&gt;&lt;P&gt;    SORT i_mara BY matnr.                                   " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT i_vbrp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING i_vbrp TO d_vbrp.&lt;/P&gt;&lt;P&gt;      IF NOT d_vbrp-fkimg IS INITIAL.&lt;/P&gt;&lt;P&gt;        d_vbrp-netpr = ( d_vbrp-netwr - d_vbrp-kzwi5 ) / d_vbrp-fkimg.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      PERFORM move_vbrk_info.&lt;/P&gt;&lt;P&gt;      PERFORM move_material_info.&lt;/P&gt;&lt;P&gt;      PERFORM move_sd_info.&lt;/P&gt;&lt;P&gt;      PERFORM move_prod_hierarchies_info.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   PERFORM MOVE_CONDITIONS_INFO.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM move_partner_profile_info.&lt;/P&gt;&lt;P&gt;      PERFORM calculate_gmd.&lt;/P&gt;&lt;P&gt;      PERFORM move_serial_nos_info.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF g_append_d_vbrp IS INITIAL.&lt;/P&gt;&lt;P&gt;        MOVE-CORRESPONDING d_vbrp TO d1_vbrp.&lt;/P&gt;&lt;P&gt;        APPEND d_vbrp.&lt;/P&gt;&lt;P&gt;        APPEND d1_vbrp.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;*CLEAR : I_VBRP , D_VBRP ,D1_VBRP, I_VBAK , I_VBAP , I_MARA , I_KNA1.&lt;/P&gt;&lt;P&gt;      CLEAR : i_vbrp , d_vbrp ,d1_vbrp, i_vbak , i_vbap ,&lt;/P&gt;&lt;P&gt;      i_kna1.                                               "KYH26443&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;  CLEAR i_mara.                                             "  KYH26443&lt;/P&gt;&lt;P&gt;ENDFORM.                    " PROCESS_DATA_FOR_DETAIL_REPORT&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  DISPLAY_DETAIL_REPORT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM display_detail_report .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DELETE FROM zar1_detail WHERE ( zcount GE 0 ) OR ( zzid EQ space ).&lt;/P&gt;&lt;P&gt;  IF NOT d1_vbrp[] IS INITIAL.                              " KYH25882&lt;/P&gt;&lt;P&gt;    LOOP AT d1_vbrp.&lt;/P&gt;&lt;P&gt;      d1_vbrp-zzid   = zid.&lt;/P&gt;&lt;P&gt;      d1_vbrp-zcount = sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF d1_vbrp-vbtyp EQ 'O'.&lt;/P&gt;&lt;P&gt;        d1_vbrp-netwr = d1_vbrp-netwr * -1.&lt;/P&gt;&lt;P&gt;        d1_vbrp-kbetr = d1_vbrp-kbetr * -1.&lt;/P&gt;&lt;P&gt;        d1_vbrp-netpr = d1_vbrp-netpr * -1.&lt;/P&gt;&lt;P&gt;        d1_vbrp-kbetrqty = d1_vbrp-kbetrqty * -1.&lt;/P&gt;&lt;P&gt;        d1_vbrp-gmdnetwr = d1_vbrp-gmdnetwr * -1.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ADD d1_vbrp-fkimg TO fkimg_tot.&lt;/P&gt;&lt;P&gt;      ADD d1_vbrp-netpr TO netpr_tot.&lt;/P&gt;&lt;P&gt;      ADD d1_vbrp-netwr TO netwr_tot.&lt;/P&gt;&lt;P&gt;      ADD d1_vbrp-kbetr TO kbetr_tot.&lt;/P&gt;&lt;P&gt;      ADD d1_vbrp-kbetrqty TO kbetrqty_tot.&lt;/P&gt;&lt;P&gt;      ADD d1_vbrp-gmdpercent TO gmdpercent_tot.&lt;/P&gt;&lt;P&gt;      ADD d1_vbrp-gmdnetwr TO gmdnetwr_tot.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      MODIFY d1_vbrp.&lt;/P&gt;&lt;P&gt;      CLEAR d1_vbrp.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    d1_vbrp-vbeln     = '9999999999'.&lt;/P&gt;&lt;P&gt;    d1_vbrp-posnr     = '999999'.&lt;/P&gt;&lt;P&gt;    d1_vbrp-fkdat     = '99991231'.&lt;/P&gt;&lt;P&gt;    d1_vbrp-bstnk_vf  = 'zz***** TOTAL *****'.&lt;/P&gt;&lt;P&gt;    d1_vbrp-zzid      = zid.&lt;/P&gt;&lt;P&gt;    d1_vbrp-zcount    = 9999999999.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    d1_vbrp-fkimg     = fkimg_tot.&lt;/P&gt;&lt;P&gt;    d1_vbrp-netpr     = netpr_tot.&lt;/P&gt;&lt;P&gt;    d1_vbrp-netwr     = netwr_tot.&lt;/P&gt;&lt;P&gt;    d1_vbrp-kbetr     = kbetr_tot.&lt;/P&gt;&lt;P&gt;    d1_vbrp-kbetrqty  = kbetrqty_tot.&lt;/P&gt;&lt;P&gt;    d1_vbrp-gmdpercent =  gmdpercent_tot.&lt;/P&gt;&lt;P&gt;    d1_vbrp-gmdnetwr  = gmdnetwr_tot.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND d1_vbrp.&lt;/P&gt;&lt;P&gt;    CLEAR d1_vbrp.&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  INSERT zar1_detail FROM TABLE d1_vbrp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- begin of ppo924234&lt;/P&gt;&lt;P&gt;  IF NOT filepath IS INITIAL.                               " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR down_det.&lt;/P&gt;&lt;P&gt;    REFRESH down_det.&lt;/P&gt;&lt;P&gt;    MOVE: 'USER' TO down_det-zzid,&lt;/P&gt;&lt;P&gt;       'Counter'  TO down_det-zcount,&lt;/P&gt;&lt;P&gt;       'SD Billing Doc#' TO down_det-vbeln,&lt;/P&gt;&lt;P&gt;       'Item' TO down_det-posnr,&lt;/P&gt;&lt;P&gt;       'Bill date' TO down_det-fkdat,&lt;/P&gt;&lt;P&gt;       'PO Number' TO down_det-bstnk_vf,&lt;/P&gt;&lt;P&gt;       'Billed qty' TO down_det-fkimg,&lt;/P&gt;&lt;P&gt;       'Manufacturer' TO down_det-name1_mfg,&lt;/P&gt;&lt;P&gt;       'Material' TO down_det-matnr,&lt;/P&gt;&lt;P&gt;       'Description' TO down_det-arktx,&lt;/P&gt;&lt;P&gt;       'Unit price' TO down_det-netpr,&lt;/P&gt;&lt;P&gt;       'Freight Amount' TO down_det-kzwi5,&lt;/P&gt;&lt;P&gt;       'Ext. price + Freight' TO down_det-netwr ,&lt;/P&gt;&lt;P&gt;       'Cost' TO down_det-kbetr,&lt;/P&gt;&lt;P&gt;       'Ext. cost' TO down_det-kbetrqty,&lt;/P&gt;&lt;P&gt;       'Tax amount' TO down_det-mwsbp ,&lt;/P&gt;&lt;P&gt;       'GMD %'  TO down_det-gmdpercent ,&lt;/P&gt;&lt;P&gt;       'GMD $' TO down_det-gmdnetwr,&lt;/P&gt;&lt;P&gt;       'Sold-to'   TO down_det-name1,&lt;/P&gt;&lt;P&gt;       'Ship-to' TO down_det-name1_sh,&lt;/P&gt;&lt;P&gt;       'Ship to Name 2' TO down_det-name2_sh,&lt;/P&gt;&lt;P&gt;       'Ship to Name 3' TO down_det-name3_sh,&lt;/P&gt;&lt;P&gt;       'House No/Street' TO down_det-stras_sh,&lt;/P&gt;&lt;P&gt;       'City' TO down_det-ort01_sh ,&lt;/P&gt;&lt;P&gt;       'Region' TO down_det-regio_sh ,&lt;/P&gt;&lt;P&gt;       'Postal Code' TO down_det-pstlz_sh,&lt;/P&gt;&lt;P&gt;       'Sales Order User' TO down_det-bname ,&lt;/P&gt;&lt;P&gt;       'Sales group' TO down_det-vkgrp ,&lt;/P&gt;&lt;P&gt;       'Sales Document' TO down_det-aubel ,&lt;/P&gt;&lt;P&gt;       'Item' TO down_det-aupos,&lt;/P&gt;&lt;P&gt;       'Document date' TO down_det-audat,&lt;/P&gt;&lt;P&gt;       'Serial number' TO down_det-sernr,&lt;/P&gt;&lt;P&gt;       'Prod.hierarchy' TO down_det-prodh ,&lt;/P&gt;&lt;P&gt;       'Matl grp descr' TO down_det-wgbez,&lt;/P&gt;&lt;P&gt;       'Description' TO down_det-vtext,&lt;/P&gt;&lt;P&gt;       'Asset Tag' TO down_det-asstg,&lt;/P&gt;&lt;P&gt;       'MatGrp' TO down_det-matkl,&lt;/P&gt;&lt;P&gt;       'Billing Type' TO down_det-fkart,&lt;/P&gt;&lt;P&gt;       'Sold-to party'  TO down_det-kunag,&lt;/P&gt;&lt;P&gt;       'Document cat' TO down_det-vbtyp,&lt;/P&gt;&lt;P&gt;       'Your ref' TO down_det-ihrez,&lt;/P&gt;&lt;P&gt;       'Cust. Material' TO down_det-kdmat,&lt;/P&gt;&lt;P&gt;       'PO itm'  TO down_det-posex,&lt;/P&gt;&lt;P&gt;       'Cost Center' TO down_det-zz_ccenter,&lt;/P&gt;&lt;P&gt;       'Department' TO down_det-zz_dept,&lt;/P&gt;&lt;P&gt;       'cap Exp code'  TO down_det-zz_cap_exp_code,&lt;/P&gt;&lt;P&gt;       'cap exp id'   TO down_det-zz_cap_exp_id ,&lt;/P&gt;&lt;P&gt;       'Project No'  TO down_det-zz_project,&lt;/P&gt;&lt;P&gt;       'Apprvd by' TO down_det-zz_aprvd_by,&lt;/P&gt;&lt;P&gt;       'CustGrpSlsOrder' TO down_det-kdgrp_auft.&lt;/P&gt;&lt;P&gt;    APPEND down_det.&lt;/P&gt;&lt;P&gt;    LOOP AT d1_vbrp.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING d1_vbrp TO down_det.&lt;/P&gt;&lt;P&gt;      APPEND down_det.&lt;/P&gt;&lt;P&gt;      CLEAR down_det.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    PERFORM download_file  TABLES down_det USING down_det.&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- end of ppo924234&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0 AND sy-batch IS INITIAL.&lt;/P&gt;&lt;P&gt;    PERFORM call_ze16.&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;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " DISPLAY_DETAIL_REPORT&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  GET_MATERIAL_INFO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_material_info .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : d_vbrp LIKE i_vbrp OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;         sytabix LIKE sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR d_vbrp.&lt;/P&gt;&lt;P&gt;  REFRESH d_vbrp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; start pradeep N&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_vbrk[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SORT i_vbrk BY vbeln.&lt;/P&gt;&lt;P&gt;    SORT i_vbrp BY vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT i_vbrp.&lt;/P&gt;&lt;P&gt;      sytabix = sy-tabix.&lt;/P&gt;&lt;P&gt;      READ TABLE i_vbrk WITH KEY vbeln = i_vbrp-vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;        DELETE i_vbrp INDEX sytabix.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&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; end pradeep N&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_vbrp[] IS INITIAL.                               " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    d_vbrp[] = i_vbrp[].&lt;/P&gt;&lt;P&gt;    SORT d_vbrp BY matkl.&lt;/P&gt;&lt;P&gt;    DELETE ADJACENT DUPLICATES FROM d_vbrp COMPARING matkl.&lt;/P&gt;&lt;P&gt;    SELECT matkl wgbez&lt;/P&gt;&lt;P&gt;                        INTO CORRESPONDING FIELDS OF TABLE i_t023t&lt;/P&gt;&lt;P&gt;                        FROM  t023t FOR ALL ENTRIES IN d_vbrp&lt;/P&gt;&lt;P&gt;                  WHERE matkl  = d_vbrp-matkl&lt;/P&gt;&lt;P&gt;                  AND   spras  = 'E'.&lt;/P&gt;&lt;P&gt;    IF NOT i_t023t[] IS INITIAL.                            " KYH25882&lt;/P&gt;&lt;P&gt;      SORT i_t023t BY matkl.                                " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.                                                  " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR d_vbrp.&lt;/P&gt;&lt;P&gt;    REFRESH d_vbrp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    d_vbrp[] = i_vbrp[].&lt;/P&gt;&lt;P&gt;    SORT d_vbrp BY matnr.&lt;/P&gt;&lt;P&gt;    DELETE ADJACENT DUPLICATES FROM d_vbrp COMPARING matnr.&lt;/P&gt;&lt;P&gt;    SELECT matnr mfrpn&lt;/P&gt;&lt;P&gt;                     INTO CORRESPONDING FIELDS OF TABLE i_mara&lt;/P&gt;&lt;P&gt;                     FROM  mara  FOR ALL ENTRIES IN d_vbrp&lt;/P&gt;&lt;P&gt;               WHERE matnr  = d_vbrp-matnr.&lt;/P&gt;&lt;P&gt;    IF NOT i_mara[] IS INITIAL.                             " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SORT i_mara  BY matnr.&lt;/P&gt;&lt;P&gt;    ENDIF.                                                  " KYH25882&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;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_MATERIAL_INFO&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  GET_SD_INFO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_sd_info .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA : d_vbrp LIKE i_vbrp OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR d_vbrp.&lt;/P&gt;&lt;P&gt;  REFRESH d_vbrp.&lt;/P&gt;&lt;P&gt;  IF NOT i_vbrp[] IS INITIAL.                               " KYH25882&lt;/P&gt;&lt;P&gt;    d_vbrp[] = i_vbrp[].&lt;/P&gt;&lt;P&gt;    SORT d_vbrp BY aubel.&lt;/P&gt;&lt;P&gt;    DELETE ADJACENT DUPLICATES FROM d_vbrp COMPARING aubel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT vbeln bname zz_ccenter zz_dept ihrez&lt;/P&gt;&lt;P&gt;                     INTO CORRESPONDING FIELDS OF TABLE i_vbak&lt;/P&gt;&lt;P&gt;                     FROM  vbak  FOR ALL ENTRIES IN d_vbrp&lt;/P&gt;&lt;P&gt;               WHERE vbeln  = d_vbrp-aubel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IF NOT  I_VBAK[] IS INITIAL.          " KYH25882&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SORT i_vbak BY vbeln.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     ENDIF.                                " KYH25882&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT vbeln posnr knumh erdat prodh kdmat posex&lt;/P&gt;&lt;P&gt;                     INTO CORRESPONDING FIELDS OF TABLE i_vbap&lt;/P&gt;&lt;P&gt;                     FROM  vbap  FOR ALL ENTRIES IN i_vbrp&lt;/P&gt;&lt;P&gt;               WHERE vbeln  = i_vbrp-aubel&lt;/P&gt;&lt;P&gt;               AND   posnr  = i_vbrp-aupos.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT vbeln posnr valueid value INTO TABLE i_zcustomfields&lt;/P&gt;&lt;P&gt;                     FROM zcustomfields FOR ALL ENTRIES IN i_vbrp&lt;/P&gt;&lt;P&gt;                     WHERE vbeln = i_vbrp-aubel AND&lt;/P&gt;&lt;P&gt;                           ( posnr = i_vbrp-aupos OR posnr = '000000' )&lt;/P&gt;&lt;P&gt;                           AND&lt;/P&gt;&lt;P&gt;                          ( valueid = 'VAPR' OR valueid = 'VCC' OR&lt;/P&gt;&lt;P&gt;                          valueid = 'VDEP' OR&lt;/P&gt;&lt;P&gt;                            valueid = 'VEXP' OR valueid = 'VID' OR&lt;/P&gt;&lt;P&gt;                            valueid = 'VPRJ' ).&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IF NOT I_ZCUSTOMFIELDS[] IS INITIAL.        "KYH&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       SORT I_ZCUSTOMFIELDS BY VBELN POSNR VALUEID.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     ENDIF.                                  " KYH25882&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_SD_INFO&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  GET_CONDITIONS_INFO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_conditions_info .&lt;/P&gt;&lt;P&gt;  IF NOT i_knumv[] IS INITIAL.                              "" KYH25882&lt;/P&gt;&lt;P&gt;    SORT i_knumv BY knumv.&lt;/P&gt;&lt;P&gt;    DELETE ADJACENT DUPLICATES FROM i_knumv COMPARING knumv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT knumv kposn kschl knumh kbetr kwert kopos FROM konv&lt;/P&gt;&lt;P&gt;                       INTO CORRESPONDING FIELDS OF TABLE i_konv&lt;/P&gt;&lt;P&gt;  FOR ALL ENTRIES IN i_knumv&lt;/P&gt;&lt;P&gt;                 WHERE knumv  = i_knumv-knumv&lt;/P&gt;&lt;P&gt;                 AND ( kschl  = 'VPRS' OR kschl = 'ZLPR' ).&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;BEGIN   " DEVK925893   KYH25952&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF NOT i_konv[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SELECT knumh kopos kbetr INTO TABLE i_konp FROM  konp&lt;/P&gt;&lt;P&gt;     FOR ALL ENTRIES IN i_konv&lt;/P&gt;&lt;P&gt;                WHERE  knumh  = i_konv-knumh&lt;/P&gt;&lt;P&gt;                AND    kopos  = i_konv-kopos.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  SORT i_konp BY knumh kopos.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;END   " KYH25952&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  "$$&lt;/P&gt;&lt;P&gt;  "$$&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_CONDITIONS_INFO&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  GET_SERIAL_NOS_INFO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_serial_nos_info .&lt;/P&gt;&lt;P&gt;  IF NOT i_vbrp[] IS INITIAL.                               " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT  * FROM  zvlxxsr INTO TABLE i_zvlxxsr&lt;/P&gt;&lt;P&gt;             FOR ALL ENTRIES IN i_vbrp&lt;/P&gt;&lt;P&gt;                  WHERE  vbeln    = i_vbrp-vgbel&lt;/P&gt;&lt;P&gt;                  AND    posnr    = i_vbrp-vgpos.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_SERIAL_NOS_INFO&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  GET_PARTNER_PROFILE_INFO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_partner_profile_info .&lt;/P&gt;&lt;P&gt;  CLEAR d_vbpa.&lt;/P&gt;&lt;P&gt;  REFRESH d_vbpa.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_vbrk[] IS INITIAL.                               " KYH26282&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT vbeln kunnr adrnr INTO CORRESPONDING FIELDS OF TABLE i_vbpa&lt;/P&gt;&lt;P&gt;                     FROM  vbpa FOR ALL ENTRIES IN i_vbrk&lt;/P&gt;&lt;P&gt;               WHERE vbeln  = i_vbrk-vbeln&lt;/P&gt;&lt;P&gt;               AND   parvw  = 'WE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT i_vbpa[] IS INITIAL.                            "KYH&lt;/P&gt;&lt;P&gt;      SORT i_vbpa BY adrnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT i_vbpa WHERE adrnr IS INITIAL.&lt;/P&gt;&lt;P&gt;        MOVE-CORRESPONDING i_vbpa TO d_vbpa.&lt;/P&gt;&lt;P&gt;        APPEND d_vbpa.&lt;/P&gt;&lt;P&gt;        DELETE i_vbpa.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SORT i_vbpa BY adrnr DESCENDING.&lt;/P&gt;&lt;P&gt;      CLEAR i_kna1.&lt;/P&gt;&lt;P&gt;      REFRESH i_kna1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT DISTINCT kunnr name1 name2 name3 stras ort01 regio pstlz&lt;/P&gt;&lt;P&gt;                  INTO CORRESPONDING FIELDS OF TABLE i_kna1&lt;/P&gt;&lt;P&gt;                   FROM  kna1 FOR ALL ENTRIES IN d_vbpa&lt;/P&gt;&lt;P&gt;                 WHERE kunnr  = d_vbpa-kunnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SELECT DISTINCT addrnumber AS adrnr name1 name2 name3 street AS&lt;/P&gt;&lt;P&gt;      stras&lt;/P&gt;&lt;P&gt;             city1 AS ort01 region AS regio  post_code1 AS pstlz&lt;/P&gt;&lt;P&gt;                    APPENDING CORRESPONDING FIELDS OF TABLE i_kna1&lt;/P&gt;&lt;P&gt;                         FROM adrc FOR ALL ENTRIES IN i_vbpa&lt;/P&gt;&lt;P&gt;                         WHERE addrnumber = i_vbpa-adrnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      SORT i_kna1 BY adrnr DESCENDING.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*LOOP AT I_KNA1 INTO L_WA_KNA1 WHERE ( KUNNR IS INITIAL ) AND ( ADRNR NE&lt;/P&gt;&lt;P&gt;*SPACE ).&lt;/P&gt;&lt;P&gt;      LOOP AT i_kna1 WHERE ( kunnr IS INITIAL ) AND ( adrnr NE space ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        READ TABLE i_vbpa WITH KEY adrnr = i_kna1-adrnr.&lt;/P&gt;&lt;P&gt;        IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;          i_kna1-kunnr = i_vbpa-kunnr.&lt;/P&gt;&lt;P&gt;          MODIFY TABLE i_kna1.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          DELETE TABLE i_kna1.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;      SORT i_kna1 BY kunnr.&lt;/P&gt;&lt;P&gt;    ENDIF.                                              "KYH&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT i_vbrp[] IS INITIAL.&lt;/P&gt;&lt;P&gt;      SELECT lifnr name1 FROM lfa1 INTO CORRESPONDING FIELDS OF TABLE&lt;/P&gt;&lt;P&gt;      i_lfa1&lt;/P&gt;&lt;P&gt;                   FOR ALL ENTRIES IN i_vbrp&lt;/P&gt;&lt;P&gt;                   WHERE lifnr = i_vbrp-zzp_mfrnr.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_PARTNER_PROFILE_INFO&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  MOVE_I_ZCUSTOMFIELDS_DATA_1&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM move_i_zcustomfields_data_1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE i_zcustomfields-valueid.&lt;/P&gt;&lt;P&gt;    WHEN 'VCC'.&lt;/P&gt;&lt;P&gt;      MOVE: i_zcustomfields-value TO d_vbrp-zz_ccenter.&lt;/P&gt;&lt;P&gt;    WHEN 'VDEP'.&lt;/P&gt;&lt;P&gt;      MOVE: i_zcustomfields-value TO d_vbrp-zz_dept.&lt;/P&gt;&lt;P&gt;    WHEN 'VAPR'.&lt;/P&gt;&lt;P&gt;      MOVE: i_zcustomfields-value TO d_vbrp-zz_aprvd_by.&lt;/P&gt;&lt;P&gt;    WHEN 'VEXP'.&lt;/P&gt;&lt;P&gt;      MOVE: i_zcustomfields-value TO d_vbrp-zz_cap_exp_code.&lt;/P&gt;&lt;P&gt;    WHEN 'VID'.&lt;/P&gt;&lt;P&gt;      MOVE: i_zcustomfields-value TO d_vbrp-zz_cap_exp_id.&lt;/P&gt;&lt;P&gt;    WHEN 'VPRJ'.&lt;/P&gt;&lt;P&gt;      MOVE: i_zcustomfields-value TO d_vbrp-zz_project.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " MOVE_I_ZCUSTOMFIELDS_DATA_1&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  MOVE_I_ZCUSTOMFIELDS_DATA&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM move_i_zcustomfields_data .&lt;/P&gt;&lt;P&gt;  IF NOT i_zcustomfields[] IS INITIAL.                      " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE i_zcustomfields WITH KEY vbeln = d_vbrp-aubel&lt;/P&gt;&lt;P&gt;                                        posnr = d_vbrp-posnr&lt;/P&gt;&lt;P&gt;                                        BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT i_zcustomfields WHERE vbeln = d_vbrp-aubel AND&lt;/P&gt;&lt;P&gt;                                posnr = d_vbrp-aupos.&lt;/P&gt;&lt;P&gt;        PERFORM move_i_zcustomfields_data_1.                "ppo925709&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       READ TABLE I_ZCUSTOMFIELDS WITH KEY VBELN = D_VBRP-AUBEL&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                           POSNR = '000000'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT i_zcustomfields WHERE vbeln = d_vbrp-aubel AND&lt;/P&gt;&lt;P&gt;                                       posnr = '000000'.&lt;/P&gt;&lt;P&gt;        PERFORM move_i_zcustomfields_data_1.&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.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " MOVE_I_ZCUSTOMFIELDS_DATA&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  MOVE_SD_MOVE_SD_INFO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM move_sd_info .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_vbak[] IS  INITIAL.                              " KYH25882&lt;/P&gt;&lt;P&gt;    READ TABLE i_vbak WITH KEY vbeln = d_vbrp-aubel.&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      d_vbrp-bname = i_vbak-bname.&lt;/P&gt;&lt;P&gt;      d_vbrp-zz_ccenter = i_vbak-zz_ccenter.&lt;/P&gt;&lt;P&gt;      d_vbrp-zz_dept = i_vbak-zz_dept.&lt;/P&gt;&lt;P&gt;      d_vbrp-ihrez = i_vbak-ihrez.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;  IF NOT i_vbap[] IS INITIAL.                               " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE i_vbap  WITH KEY vbeln = d_vbrp-aubel&lt;/P&gt;&lt;P&gt;                                posnr = d_vbrp-aupos&lt;/P&gt;&lt;P&gt;                                BINARY SEARCH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      d_vbrp-audat = i_vbap-erdat.&lt;/P&gt;&lt;P&gt;      d_vbrp-prodh = i_vbap-prodh.&lt;/P&gt;&lt;P&gt;      d_vbrp-kdmat = i_vbap-kdmat.&lt;/P&gt;&lt;P&gt;      d_vbrp-posex = i_vbap-posex.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM move_i_zcustomfields_data.&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " MOVE_SD_INFO&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  MOVE_MATERIAL_INFO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM move_material_info .&lt;/P&gt;&lt;P&gt;  IF NOT i_t023t[] IS INITIAL .                             " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE i_t023t INTO l_wa_t023t WITH TABLE KEY matkl =&lt;/P&gt;&lt;P&gt;    i_vbrp-matkl.&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      d_vbrp-wgbez = l_wa_t023t-wgbez.&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; IF NOT I_MARA[] IS INITIAL.                      " KYH25882&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE i_mara INTO l_wa_mara WITH TABLE KEY matnr = i_vbrp-matnr.&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;    d_vbrp-matnr = l_wa_mara-mfrpn+0(18).&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDIF.                                          " KYH25882&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " MOVE_MATERIAL_INFO&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  MOVE_CONDITIONS_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;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;      text&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;**&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&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;**&lt;/P&gt;&lt;P&gt;*FORM MOVE_CONDITIONS_INFO .&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*ENDFORM.                    " MOVE_CONDITIONS_INFO&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  MOVE_SERIAL_NOS_INFO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM move_serial_nos_info .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA l_count TYPE i.&lt;/P&gt;&lt;P&gt;  CLEAR : l_count , g_append_d_vbrp.&lt;/P&gt;&lt;P&gt;  IF NOT i_zvlxxsr[] IS INITIAL.                            " KYH25882&lt;/P&gt;&lt;P&gt;    LOOP AT i_zvlxxsr WHERE vbeln = d_vbrp-vgbel AND posnr =&lt;/P&gt;&lt;P&gt;    d_vbrp-vgpos.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      l_count = l_count + 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      d_vbrp-sernr = i_zvlxxsr-sernr.&lt;/P&gt;&lt;P&gt;      d_vbrp-asstg = i_zvlxxsr-asstg.&lt;/P&gt;&lt;P&gt;      d1_vbrp-zzid   = zid.&lt;/P&gt;&lt;P&gt;      d1_vbrp-zcount = l_count.&lt;/P&gt;&lt;P&gt;      IF l_count &amp;gt; 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR : d_vbrp-fkimg,d_vbrp-netpr, d_vbrp-netwr, d_vbrp-kbetr,&lt;/P&gt;&lt;P&gt;        d_vbrp-kbetrqty,d_vbrp-gmdpercent,&lt;/P&gt;&lt;P&gt;                d_vbrp-mwsbp, d_vbrp-kzwi5, d_vbrp-gmdnetwr.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING d_vbrp TO d1_vbrp.&lt;/P&gt;&lt;P&gt;      APPEND d_vbrp.&lt;/P&gt;&lt;P&gt;      APPEND d1_vbrp.&lt;/P&gt;&lt;P&gt;      g_append_d_vbrp = 'X'.&lt;/P&gt;&lt;P&gt;      CLEAR : i_zvlxxsr.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " MOVE_SERIAL_NOS_INFO&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  MOVE_PARTNER_PROFILE_INFO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM move_partner_profile_info .&lt;/P&gt;&lt;P&gt;  CLEAR i_kna1.&lt;/P&gt;&lt;P&gt;  READ TABLE i_vbpa WITH KEY vbeln = i_vbrk-vbeln .&lt;/P&gt;&lt;P&gt;  "BINARY SEARCH.  " KYH25882&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    READ TABLE i_kna1 WITH KEY adrnr = i_vbpa-adrnr.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    READ TABLE d_vbpa WITH KEY vbeln = i_vbrk-vbeln.&lt;/P&gt;&lt;P&gt;    " BINARY SEARCH.   " KYH25882&lt;/P&gt;&lt;P&gt;    IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;      READ TABLE i_kna1 WITH KEY kunnr = d_vbpa-kunnr.&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;  CLEAR kna1.&lt;/P&gt;&lt;P&gt;  SELECT SINGLE * FROM kna1 WHERE kunnr EQ i_vbrk-kunag.&lt;/P&gt;&lt;P&gt;  MOVE kna1-name1 TO d_vbrp-name1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  d_vbrp-name1_sh = i_kna1-name1.&lt;/P&gt;&lt;P&gt;  d_vbrp-name2_sh = i_kna1-name2.&lt;/P&gt;&lt;P&gt;  d_vbrp-name3_sh = i_kna1-name3.&lt;/P&gt;&lt;P&gt;  d_vbrp-stras_sh = i_kna1-stras.&lt;/P&gt;&lt;P&gt;  d_vbrp-ort01_sh = i_kna1-ort01.&lt;/P&gt;&lt;P&gt;  d_vbrp-regio_sh = i_kna1-regio.&lt;/P&gt;&lt;P&gt;  d_vbrp-pstlz_sh = i_kna1-pstlz.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE i_lfa1 INTO l_wa_lfa1 WITH TABLE KEY lifnr =&lt;/P&gt;&lt;P&gt;  i_vbrp-zzp_mfrnr.&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;    d_vbrp-name1_mfg = l_wa_lfa1-name1.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " MOVE_PARTNER_PROFILE_INFO&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  CHECK_AUTHORIZATION&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM check_authorization .&lt;/P&gt;&lt;P&gt;  CLEAR auth_failure.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT vkgrp FROM tvkgr INTO TABLE i_tvkgr&lt;/P&gt;&lt;P&gt;          WHERE vkgrp IN zvkgrp .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF  NOT i_tvkgr[] IS INITIAL.                             " KYH25882&lt;/P&gt;&lt;P&gt;    SORT i_tvkgr.&lt;/P&gt;&lt;P&gt;    DELETE ADJACENT DUPLICATES FROM i_tvkgr COMPARING vkgrp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-dbcnt NE 0.&lt;/P&gt;&lt;P&gt;      LOOP AT i_tvkgr INTO l_tvkgr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        AUTHORITY-CHECK OBJECT 'V_VBKA_VKO'&lt;/P&gt;&lt;P&gt;                         ID 'VKORG' DUMMY&lt;/P&gt;&lt;P&gt;                         ID 'VTWEG' DUMMY&lt;/P&gt;&lt;P&gt;                         ID 'SPART' DUMMY&lt;/P&gt;&lt;P&gt;                         ID 'VKBUR' DUMMY&lt;/P&gt;&lt;P&gt;                         ID 'VKGRP' FIELD l_tvkgr-vkgrp&lt;/P&gt;&lt;P&gt;                         ID 'KTAAR' DUMMY&lt;/P&gt;&lt;P&gt;                         ID 'ACTVT' DUMMY.&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 sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;          MESSAGE i016(ds) WITH 'No authorization for sales group'&lt;/P&gt;&lt;P&gt;          l_tvkgr-vkgrp.&lt;/P&gt;&lt;P&gt;          auth_failure = 'X'.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        CLEAR :l_tvkgr.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;ENDFORM.                    " CHECK_AUTHORIZATION&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  CHECK_TCODE&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM check_tcode .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF tcode IS INITIAL.&lt;/P&gt;&lt;P&gt;    SELECT low UP TO 1 ROWS FROM  tvarv INTO tcode&lt;/P&gt;&lt;P&gt;           WHERE  name  = 'ZTCODE_ZAR_INVOICE'&lt;/P&gt;&lt;P&gt;           AND    type  = 'P'.&lt;/P&gt;&lt;P&gt;    ENDSELECT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " CHECK_TCODE&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  CALCULATE_GMD&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM calculate_gmd .&lt;/P&gt;&lt;P&gt;  IF NOT i_vbrk[] IS INITIAL.                               "" KYH25882&lt;/P&gt;&lt;P&gt;    CLEAR i_vbrk.&lt;/P&gt;&lt;P&gt;    SORT i_konv BY knumv.&lt;/P&gt;&lt;P&gt;    READ TABLE i_vbrk WITH KEY vbeln = d_vbrp-vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT i_konv[] IS INITIAL.                             " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      READ TABLE i_konv WITH KEY knumv = i_vbrk-knumv       " KYH26013&lt;/P&gt;&lt;P&gt;                                  kposn = d_vbrp-posnr BINARY SEARCH.&lt;/P&gt;&lt;P&gt;                                                            " KYH26013&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        LOOP AT i_konv FROM sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          IF i_konv-knumv NE i_vbrk-knumv OR i_konv-kposn NE&lt;/P&gt;&lt;P&gt;          d_vbrp-posnr .                                    " KYH26013&lt;/P&gt;&lt;P&gt;            EXIT.                                           " KYH26013&lt;/P&gt;&lt;P&gt;          ENDIF.                                            " KYH26013&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          IF i_konv-knumh IS INITIAL.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         Cost&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            d_vbrp-kbetr = i_konv-kbetr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          Ext.cost&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            d_vbrp-kbetrqty = i_konv-kwert.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          GMD in $&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            d_vbrp-gmdnetwr = d_vbrp-netwr - d_vbrp-kbetrqty.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     move t_vbrp-gmdnetwr to t_vbrk-gmdnetwr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          GMD in %&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            IF NOT d_vbrp-netwr IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;              d_vbrp-gmdpercent = d_vbrp-gmdnetwr * 100 / d_vbrp-netwr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            ELSE.&lt;/P&gt;&lt;P&gt;              d_vbrp-gmdpercent = 0.&lt;/P&gt;&lt;P&gt;            ENDIF.&lt;/P&gt;&lt;P&gt;          ELSE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; BEGIN KYH25952&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         SELECT SINGLE * FROM  KONP&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                WHERE  KNUMH  = I_KONV-KNUMH&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                AND    KOPOS  = I_KONV-KOPOS.&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;/UL&gt;&lt;P&gt;            IF NOT i_konp[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;              READ TABLE i_konp INTO l_wa_konp  WITH TABLE KEY knumh  =&lt;/P&gt;&lt;P&gt;              i_konv-knumh&lt;/P&gt;&lt;P&gt;                                                               kopos  =&lt;/P&gt;&lt;P&gt;i_konv-kopos.&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; END KYH25952&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         Cost&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            D_VBRP-KBETR = KONP-KBETR.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                d_vbrp-kbetr = l_wa_konp-kbetr.             " KYH25893&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          Ext.cost&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             D_VBRP-KBETRQTY = KONP-KBETR * D_VBRP-FKIMG.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                d_vbrp-kbetrqty = l_wa_konp-kbetr * d_vbrp-fkimg.&lt;/P&gt;&lt;P&gt;                                                            "KYH25893&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          GMD in $&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                d_vbrp-gmdnetwr = d_vbrp-netwr - d_vbrp-kbetrqty.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     move t_vbrp-gmdnetwr to t_vbrk-gmdnetwr.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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;          GMD in %&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            IF NOT d_vbrp-netwr IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;              d_vbrp-gmdpercent = d_vbrp-gmdnetwr * 100 / d_vbrp-netwr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       move t_vbrp-gmdpercent to t_vbrk-gmdpercent.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            ELSE.&lt;/P&gt;&lt;P&gt;              d_vbrp-gmdpercent = 0.&lt;/P&gt;&lt;P&gt;            ENDIF.&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;          ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;tO BE ANALYSED&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF T_KONV-KSCHL = 'VPRS'. EXIT. ENDIF.  "VPRS priority&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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.                                                  " KYH25882&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " CALCULATE_GMD&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  GET_PROD_HIERARCHIES_INFO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_prod_hierarchies_info .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA d_vbap LIKE i_vbap OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;  CLEAR d_vbap.&lt;/P&gt;&lt;P&gt;  REFRESH d_vbap.&lt;/P&gt;&lt;P&gt;  IF NOT i_vbap[] IS INITIAL.                               " KYH25882&lt;/P&gt;&lt;P&gt;    d_vbap[] = i_vbap[].&lt;/P&gt;&lt;P&gt;    SORT d_vbap BY prodh.&lt;/P&gt;&lt;P&gt;    DELETE ADJACENT DUPLICATES FROM d_vbap COMPARING prodh.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT prodh vtext INTO TABLE i_t179t&lt;/P&gt;&lt;P&gt;                     FROM  t179t FOR ALL ENTRIES IN d_vbap&lt;/P&gt;&lt;P&gt;               WHERE prodh  = d_vbap-prodh&lt;/P&gt;&lt;P&gt;               AND   spras  = 'E'.&lt;/P&gt;&lt;P&gt;    IF NOT i_t179t[] IS INITIAL.                            " KYH25882&lt;/P&gt;&lt;P&gt;      SORT i_t179t BY prodh.&lt;/P&gt;&lt;P&gt;    ENDIF.                                                  " KYH25882&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_PROD_HIERARCHIES_INFO&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  MOVE_PROD_HIERARCHIES_INFO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM move_prod_hierarchies_info .&lt;/P&gt;&lt;P&gt;  IF NOT i_t179t[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    SORT i_t179t[] BY prodh.&lt;/P&gt;&lt;P&gt;    READ TABLE i_t179t WITH KEY prodh = d_vbrp-prodh BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      d_vbrp-vtext = i_t179t-vtext.&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.                    " MOVE_PROD_HIERARCHIES_INFO&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  CALL_ZE16&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM call_ze16 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF seltab OCCURS 0.&lt;/P&gt;&lt;P&gt;          INCLUDE STRUCTURE rsparams.&lt;/P&gt;&lt;P&gt;  DATA: END OF seltab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  seltab-selname = 'I1'.&lt;/P&gt;&lt;P&gt;  seltab-kind    = 'P'.&lt;/P&gt;&lt;P&gt;  seltab-sign    = 'I'.&lt;/P&gt;&lt;P&gt;  seltab-option  = 'EQ'.&lt;/P&gt;&lt;P&gt;  seltab-low     = zid.&lt;/P&gt;&lt;P&gt;  APPEND seltab.&lt;/P&gt;&lt;P&gt;  seltab-selname = 'LIST_BRE'.&lt;/P&gt;&lt;P&gt;  seltab-kind    = 'P'.&lt;/P&gt;&lt;P&gt;  seltab-sign    = 'I'.&lt;/P&gt;&lt;P&gt;  seltab-option  = 'EQ'.&lt;/P&gt;&lt;P&gt;  seltab-low     = '1000'.&lt;/P&gt;&lt;P&gt;  APPEND seltab.&lt;/P&gt;&lt;P&gt;  seltab-selname = 'MAX_SEL'.&lt;/P&gt;&lt;P&gt;  seltab-kind    = 'P'.&lt;/P&gt;&lt;P&gt;  seltab-sign    = 'I'.&lt;/P&gt;&lt;P&gt;  seltab-option  = 'EQ'.&lt;/P&gt;&lt;P&gt;  seltab-low     = '9999999'.&lt;/P&gt;&lt;P&gt;  APPEND seltab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'RS_TABLE_LIST_CREATE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      table_name        = 'ZAR1_DETAIL'&lt;/P&gt;&lt;P&gt;      generation_forced = space&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      seltab            = seltab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                                                    " CALL_ZE16&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  MOVE_VBRK_INFO&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM move_vbrk_info .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR i_vbrk.&lt;/P&gt;&lt;P&gt;  IF NOT i_vbrk[] IS INITIAL.                               " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE i_vbrk WITH KEY vbeln = i_vbrp-vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE i_vbrk-fkdat    TO d_vbrp-fkdat.&lt;/P&gt;&lt;P&gt;    MOVE i_vbrk-fkart    TO d_vbrp-fkart.&lt;/P&gt;&lt;P&gt;    MOVE i_vbrk-kunag    TO d_vbrp-kunag.&lt;/P&gt;&lt;P&gt;    MOVE i_vbrk-vbtyp    TO d_vbrp-vbtyp.&lt;/P&gt;&lt;P&gt;    MOVE i_vbrk-bstnk_vf TO d_vbrp-bstnk_vf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.                                                    " KYH25882&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " MOVE_VBRK_INFO&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  RETURN_CAL_SUM&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM return_cal_sum .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF i_vbrk-vbtyp EQ 'O'.&lt;/P&gt;&lt;P&gt;    i_vbrk-netwr = i_vbrk-netwr * -1.&lt;/P&gt;&lt;P&gt;    i_vbrk-partialpmt =  i_vbrk-partialpmt * 1.&lt;/P&gt;&lt;P&gt;    i_vbrk-opendmbtr =   i_vbrk-opendmbtr * -1.&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.                    " RETURN_CAL_SUM&lt;/P&gt;&lt;P&gt;*--- begin of ppo924234&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  DOWNLOAD_FILE&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;     downloading the data to application/presentation server&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 download_file TABLES t_down_tab USING u_down_line.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  DATA: l_file TYPE string.&lt;/P&gt;&lt;P&gt;  CLEAR: l_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: tab.                                                "IMR928770&lt;/P&gt;&lt;P&gt;  DATA: t_outputline(300).&lt;/P&gt;&lt;P&gt;  FIELD-SYMBOLS: &amp;lt;f&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Column break in excel sheet when runned in background   "IMR928770&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  tab = cl_abap_char_utilities=&amp;gt;horizontal_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_prsfil = 'X'.&lt;/P&gt;&lt;P&gt;    MOVE filepath TO l_file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--- downloading data into presentation server&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'GUI_DOWNLOAD'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        filename                = l_file&lt;/P&gt;&lt;P&gt;        filetype                = 'ASC'&lt;/P&gt;&lt;P&gt;        write_field_separator   = 'X'&lt;/P&gt;&lt;P&gt;        dat_mode                = 'X'&lt;/P&gt;&lt;P&gt;      TABLES&lt;/P&gt;&lt;P&gt;        data_tab                = t_down_tab&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        file_write_error        = 1&lt;/P&gt;&lt;P&gt;        no_batch                = 2&lt;/P&gt;&lt;P&gt;        gui_refuse_filetransfer = 3&lt;/P&gt;&lt;P&gt;        invalid_type            = 4&lt;/P&gt;&lt;P&gt;        no_authority            = 5&lt;/P&gt;&lt;P&gt;        unknown_error           = 6&lt;/P&gt;&lt;P&gt;        header_not_allowed      = 7&lt;/P&gt;&lt;P&gt;        separator_not_allowed   = 8&lt;/P&gt;&lt;P&gt;        filesize_not_allowed    = 9&lt;/P&gt;&lt;P&gt;        header_too_long         = 10&lt;/P&gt;&lt;P&gt;        dp_error_create         = 11&lt;/P&gt;&lt;P&gt;        dp_error_send           = 12&lt;/P&gt;&lt;P&gt;        dp_error_write          = 13&lt;/P&gt;&lt;P&gt;        unknown_dp_error        = 14&lt;/P&gt;&lt;P&gt;        access_denied           = 15&lt;/P&gt;&lt;P&gt;        dp_out_of_memory        = 16&lt;/P&gt;&lt;P&gt;        disk_full               = 17&lt;/P&gt;&lt;P&gt;        dp_timeout              = 18&lt;/P&gt;&lt;P&gt;        file_not_found          = 19&lt;/P&gt;&lt;P&gt;        dataprovider_exception  = 20&lt;/P&gt;&lt;P&gt;        control_flush_error     = 21&lt;/P&gt;&lt;P&gt;        OTHERS                  = 22.&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;  ELSE.&lt;/P&gt;&lt;P&gt;*--- downloading data into application server&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*********Begin of changes to download and populate the file into its&lt;/P&gt;&lt;P&gt;*respective columns.                                          "IMR928770&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   OPEN DATASET filepath FOR OUTPUT IN TEXT MODE.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    OPEN DATASET filepath FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      LOOP AT t_down_tab INTO u_down_line.&lt;/P&gt;&lt;P&gt;        DO.&lt;/P&gt;&lt;P&gt;          ASSIGN COMPONENT sy-index OF STRUCTURE u_down_line TO &amp;lt;f&amp;gt;.&lt;/P&gt;&lt;P&gt;          IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;            EXIT.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;          IF sy-index = 1.&lt;/P&gt;&lt;P&gt;            MOVE &amp;lt;f&amp;gt; TO t_outputline.&lt;/P&gt;&lt;P&gt;          ELSE.&lt;/P&gt;&lt;P&gt;        CONCATENATE t_outputline &amp;lt;f&amp;gt; INTO t_outputline SEPARATED BY tab&lt;/P&gt;&lt;P&gt;        .&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;Transfer data to excel file&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        TRANSFER t_outputline TO filepath.&lt;/P&gt;&lt;P&gt;        CLEAR t_outputline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       TRANSFER u_down_line TO filepath.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;*End of changes                                            "IMR928770&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLOSE DATASET filepath.&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;ENDFORM.                    " DOWNLOAD_FILE&lt;/P&gt;&lt;P&gt;*--- end of ppo924234&lt;/P&gt;&lt;P&gt;*--- begin of ppo924692&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  CALL_VF03&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;  Calling the transactin code VF03 on double clicking on Invoice#&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 call_vf03 USING l_ucomm TYPE sy-ucomm&lt;/P&gt;&lt;P&gt;                            l_selfield TYPE slis_selfield.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE l_ucomm.&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;IC1'.&lt;/P&gt;&lt;P&gt;      IF l_selfield-sel_tab_field = 'I_VBRK-VBELN'.&lt;/P&gt;&lt;P&gt;        READ TABLE i_vbrk INDEX l_selfield-tabindex.&lt;/P&gt;&lt;P&gt;        CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        SET PARAMETER ID 'VF' FIELD i_vbrk-vbeln.&lt;/P&gt;&lt;P&gt;        CALL TRANSACTION 'VF03' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                                                    "CALL_VF03&lt;/P&gt;&lt;P&gt;*--- end of ppo924692&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; KYH25882  BEGIN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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  BILLING_FISCAL_YEAR&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;  By using the (FKDAT)Billing date, finding this fiscal year( GJAHR)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  which is required,while selecting the data from table BSID and BSAD,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  updating internal table I_VBRK.&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 billing_fiscal_year  USING    p_i_vbrk_fkdat&lt;/P&gt;&lt;P&gt;                          CHANGING p_v_gjahr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;KRI925987 Begin&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         FNYEAR = P_I_VBRK_FKDAT.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         FNYEAR_PRE  = FNYEAR - 1 .&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         CONCATENATE FNYEAR_PRE '10' '01'   INTO FISCAL_YR_BEGN.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         CONCATENATE FNYEAR  '09' '30'  INTO FISCAL_YR_END.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*IF P_I_VBRK_FKDAT GE FISCAL_YR_BEGN AND P_I_VBRK_FKDAT LE&lt;/P&gt;&lt;P&gt;*FISCAL_YR_END.  "KYH25969&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            P_V_GJAHR = FNYEAR .&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;        ELSEIF P_I_VBRK_FKDAT LT FISCAL_YR_BEGN.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             P_V_GJAHR = FNYEAR - 1.&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;KRI925987 END.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR : l_i_fyear.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'DATE_TO_PERIOD_CONVERT'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      i_date               = p_i_vbrk_fkdat&lt;/P&gt;&lt;P&gt;      i_monmit             = 00&lt;/P&gt;&lt;P&gt;      i_periv              = l_e_fyv&lt;/P&gt;&lt;P&gt;   IMPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    E_BUPER              = S_PERD&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     e_gjahr              =  l_i_fyear&lt;/P&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     input_false          = 1&lt;/P&gt;&lt;P&gt;     t009_notfound        = 2&lt;/P&gt;&lt;P&gt;     t009b_notfound       = 3&lt;/P&gt;&lt;P&gt;     OTHERS               = 4 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  p_v_gjahr = l_i_fyear.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " BILLING_FISCAL_YEAR&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  FISCAL_YEAR_CHECK&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM fiscal_year_check .&lt;/P&gt;&lt;P&gt;  LOOP AT i_vbrk.&lt;/P&gt;&lt;P&gt;    PERFORM billing_fiscal_year USING i_vbrk-fkdat CHANGING v_gjahr.&lt;/P&gt;&lt;P&gt;    i_vbrk-gjahr = v_gjahr.&lt;/P&gt;&lt;P&gt;    MODIFY i_vbrk.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; DELETE i_vbrk WHERE NOT gjahr IN  zgjahr.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDFORM.                    " FISCAL_YEAR_CHECK&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   KYH25882  END&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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  CHECK_SPN&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;     Check for SPN given in selection screen&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    from VBRP against the invoice number and remove those invoices&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   which are not having the SPN given on selection screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&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; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM check_spn .                                            "KRI926835&lt;/P&gt;&lt;P&gt;  SORT i_vbrp BY vbeln.&lt;/P&gt;&lt;P&gt;  LOOP AT i_vbrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE i_vbrp WITH KEY vbeln = i_vbrk-vbeln&lt;/P&gt;&lt;P&gt;               BINARY SEARCH.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   READ TABLE i_vbrp WITH KEY vbeln = i_vbrk-vbeln.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF NOT sy-subrc IS INITIAL.    "no line items found&lt;/P&gt;&lt;P&gt;      DELETE i_vbrk.&lt;/P&gt;&lt;P&gt;      CONTINUE.&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;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " CHECK_SPN&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  spn_get&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM spn_get.                                               "IMR928046&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA  : BEGIN OF t_vkgrp ,&lt;/P&gt;&lt;P&gt;        vbeln TYPE vbeln,&lt;/P&gt;&lt;P&gt;        vkgrp TYPE vkgrp,&lt;/P&gt;&lt;P&gt;        END OF t_vkgrp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF t_tvgrt OCCURS 0,&lt;/P&gt;&lt;P&gt;        vkgrp TYPE vkgrp,&lt;/P&gt;&lt;P&gt;        bezei TYPE bezei,&lt;/P&gt;&lt;P&gt;        END OF t_tvgrt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: t_vkgrp, t_tvgrt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT i_vbrp[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE i_vbrp  WITH KEY vbeln = i_vbrk-vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE i_vbrp-vkgrp TO i_vbrk-vkgrp.&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;  SELECT SINGLE bezei&lt;/P&gt;&lt;P&gt;         FROM tvgrt INTO i_vbrk-bezei&lt;/P&gt;&lt;P&gt;         WHERE vkgrp = i_vbrk-vkgrp&lt;/P&gt;&lt;P&gt;         AND spras = 'E'.&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.                    "spn_get&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  openinvoices&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM openinvoices .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " openinvoices&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2007 13:22:41 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/production-issue/m-p/1996559#M405970</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-03-21T13:22:41Z</dc:date>
    </item>
    <item>
      <title>Re: Production issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/production-issue/m-p/1996560#M405971</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;1. Avoid NE in the select(below)&lt;/P&gt;&lt;P&gt;SELECT vbeln fkart vbtyp knumv fkdat bukrs gjahr kdgrp zterm netwr&lt;/P&gt;&lt;P&gt;kunrg kunag &lt;/P&gt;&lt;P&gt;bstnk_vf xblnr mwsbk rfbsk&lt;/P&gt;&lt;P&gt;INTO CORRESPONDING FIELDS OF TABLE i_vbrk&lt;/P&gt;&lt;P&gt;FROM vbrk WHERE&lt;/P&gt;&lt;P&gt;vbeln IN zvbeln AND&lt;/P&gt;&lt;P&gt;kunag IN zkunag AND&lt;/P&gt;&lt;P&gt;fkdat IN zfkdat AND&lt;/P&gt;&lt;P&gt;xblnr IN zxblnr AND&lt;/P&gt;&lt;P&gt;bstnk_vf IN zbstnkvf AND&lt;/P&gt;&lt;P&gt;vbtyp IN zvbtyp AND&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;fksto NE 'X'&amp;lt;/b&amp;gt; AND&lt;/P&gt;&lt;P&gt;bukrs IN zbukrs .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Instead delete the entries from the table after u fetch the data into i_vbrk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Avoid using INTO CORRESPONDING FIELDS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. before using FOR ALL ENTRIES IN l_tab_temp&lt;/P&gt;&lt;P&gt;sort the internal table withrequired keys.&lt;/P&gt;&lt;P&gt;delete the duplicate entries with those fields.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4. this select APPENDING CORRESPONDING FIELDS OF TABLE i_vbrp&lt;/P&gt;&lt;P&gt;is in the DO-ENDDO. if possible move it out of the loop.&lt;/P&gt;&lt;P&gt;use WHILE-ENDWHILE instead of DO-ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;5. APPENDING CORRESPONDING FIELDS OF TABLE i_vbrp&lt;/P&gt;&lt;P&gt;avoid APPENDING clause. u can create temporary internal table and append the entries accordingly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;6. Avoid Move-corresponding.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;7. you have used DELETE statement in Loops. try to avoid that.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;hope this helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**reward if helpful&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;madhu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2007 13:45:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/production-issue/m-p/1996560#M405971</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-03-21T13:45:33Z</dc:date>
    </item>
    <item>
      <title>Re: Production issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/production-issue/m-p/1996561#M405972</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Firstly thank u soo much for going through my coding.&lt;/P&gt;&lt;P&gt;1.The fksto field is removed out of select statement but the time taken for this select statement when checked in ST05 is not much differed from the previous one&lt;/P&gt;&lt;P&gt;2.The into corresponding fields is ok its not an issue any more.&lt;/P&gt;&lt;P&gt;3.There is no use of sorting the table t_tab_temp because it has no duplicate entries in the table because it has unique VBELN.&lt;/P&gt;&lt;P&gt;4.I did'nt got ur DO WHILE logic because the number of entries which the tabel i_vbrk has it loops and fills the table accordingly and deleting before the DO ENDDO i've tried is not possible in my scenario.&lt;/P&gt;&lt;P&gt;5.Appending clause i seriously tried it to remove form the query but this is adding the new entries into the old entries of my table and creating new temporary internal table needs to change so many logic's of my other queries which is really troublesome for me because its an production issue for me.&lt;/P&gt;&lt;P&gt;6.I've tried avoiding MOVE-CORRESPONING with just move its not displaying the output exaclty in its concern field in the Excel file.Cant compromise with this....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You said me to avoid using DO ENDDO LOOPS and asked me to replace with While endwhile can u give me coding corresponding to my logic so that i can avoid using the select statements inside this and could certainly improve the performance i feel because if i could get succeeded with this then i  can replace this with almost 3 do enddo loops.Please try getting this and thank u once again......&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 22 Mar 2007 07:31:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/production-issue/m-p/1996561#M405972</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-03-22T07:31:07Z</dc:date>
    </item>
    <item>
      <title>Re: Production issue</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/production-issue/m-p/1996562#M405973</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, &lt;/P&gt;&lt;P&gt;More over can u let me know which one is better option.I'm appending all the lines of i_vbrk to l_tab_temp instead of all that DO ENDDO loops and pushing all the values of i_vbrk to this table l_tab_temp.In QAS i_vbrk table after fetching has around 1.5 lakhs of entries.And its obvious that it will be more in PRD too so the above option instead of DO ENDDO i'm appending at a time to the above table.I think u must have got why am i appending corresponding fields to the table i_vbrp because of the above issue its gonna append the new values to the table after the old ones each time this probabaly is taking long time and this is the case too against the i_bsad and i_bsid tables.I would be of great help if somebody could suggest a solution out of this.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 22 Mar 2007 11:11:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/production-issue/m-p/1996562#M405973</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-03-22T11:11:20Z</dc:date>
    </item>
  </channel>
</rss>

