<?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: Regarding grid display in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010040#M1166253</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you put your code here so as to make it more clear?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks and regards,&lt;/P&gt;&lt;P&gt;Chris Gu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 06 Jan 2009 01:41:26 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2009-01-06T01:41:26Z</dc:date>
    <item>
      <title>Regarding grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010038#M1166251</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ,&lt;/P&gt;&lt;P&gt;      i have changed my report from list display to grid display the output is correct but the top of page in report header is not being displayed in the output please suggest&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Jan 2009 00:37:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010038#M1166251</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-06T00:37:49Z</dc:date>
    </item>
    <item>
      <title>Re: Regarding grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010039#M1166252</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Debug and chek the code how the header is building for grid display.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Jan 2009 00:56:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010039#M1166252</guid>
      <dc:creator>amit_khare</dc:creator>
      <dc:date>2009-01-06T00:56:46Z</dc:date>
    </item>
    <item>
      <title>Re: Regarding grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010040#M1166253</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you put your code here so as to make it more clear?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks and regards,&lt;/P&gt;&lt;P&gt;Chris Gu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Jan 2009 01:41:26 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010040#M1166253</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-06T01:41:26Z</dc:date>
    </item>
    <item>
      <title>Re: Regarding grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010041#M1166254</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;REPORT  zsample12 NO STANDARD PAGE HEADING LINE-SIZE 256.&lt;/P&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; Types&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;TYPE-POOLS: kkblo.&lt;/P&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;Tables&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;TABLES: aufk,     "Order master data&lt;/P&gt;&lt;P&gt;        cosp,     "CO Object: Cost Totals for External Postings&lt;/P&gt;&lt;P&gt;        lgrwo,    "RW: Dynpro Fields of Function Group LGRWO&lt;/P&gt;&lt;P&gt;        tko08,    "Processing groups for orders&lt;/P&gt;&lt;P&gt;        tko09.    "Process Group Description&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; Structures&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;*Structure used to fill the ALV Grid&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF st_output,&lt;/P&gt;&lt;P&gt;        aufgr TYPE aufgr,     "Order Group&lt;/P&gt;&lt;P&gt;        aufnr TYPE aufnr,     "Order Number&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; R3DK908842      ktext TYPE ktext,     "Order Text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        ktext(40) TYPE C,     "Order Text&lt;/P&gt;&lt;P&gt;        perio TYPE co_perio,  "Period&lt;/P&gt;&lt;P&gt;        gjahr TYPE gjahr,     "Year&lt;/P&gt;&lt;P&gt;        kokrs TYPE kokrs,     "Controlling Area&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       aufgr type aufgr,     "Summary Group&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        user7 TYPE aufuser7,  "Start of Work&lt;/P&gt;&lt;P&gt;        user8 TYPE aufuser8,  "Date Work Ends&lt;/P&gt;&lt;P&gt;        user6 TYPE aufuser6,  "Department&lt;/P&gt;&lt;P&gt;        kostv TYPE kostv,     "Cost Centre&lt;/P&gt;&lt;P&gt;        user2 TYPE aufuser2,  "Person Resp.&lt;/P&gt;&lt;P&gt;        user3 TYPE aufuser3,  "Person Resp. Tel.&lt;/P&gt;&lt;P&gt;        status(4) TYPE c,     "Status of Order&lt;/P&gt;&lt;P&gt;        st_dat TYPE budat,    "Status Date&lt;/P&gt;&lt;P&gt;        user0 TYPE aufuser0,  "Applicant&lt;/P&gt;&lt;P&gt;        user1 TYPE aufuser1,  "Applicant Tel.&lt;/P&gt;&lt;P&gt;        abkrs TYPE aufabkrs,  "Processing Group&lt;/P&gt;&lt;P&gt;        AKTXT(30) type C,   "Process Description&lt;/P&gt;&lt;P&gt;        user4 TYPE aufuser4,  "Estimated Costs&lt;/P&gt;&lt;P&gt;        user5 TYPE aufuser5,  "Application Date&lt;/P&gt;&lt;P&gt;        totbud TYPE bp_wjl,   "Total Budget&lt;/P&gt;&lt;P&gt;        totbtr TYPE wertv8,   "Total Actuals&lt;/P&gt;&lt;P&gt;        commit TYPE wertv8,   "Total Commitment&lt;/P&gt;&lt;P&gt;        assgnd TYPE wertv8, "Total Asigned to the project&lt;/P&gt;&lt;P&gt;        avalbl TYPE wertv8,   "Total Available&lt;/P&gt;&lt;P&gt;        perbtr TYPE wertv8,   "Actual Current Period&lt;/P&gt;&lt;P&gt;        yerbtr TYPE wertv8,   "Actual Current Year&lt;/P&gt;&lt;P&gt;        prybtr TYPE wertv8,   "Actual Previous Year&lt;/P&gt;&lt;P&gt;        setid  TYPE setid,    "Heirarchy group id.&lt;/P&gt;&lt;P&gt;  END OF st_output.&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; Internal Tables&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;*WORK AREAS&lt;/P&gt;&lt;P&gt;DATA: wa_coep TYPE coep.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for the Set Information&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF tbl_setinfo OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE setinfo.&lt;/P&gt;&lt;P&gt;DATA: END OF tbl_setinfo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Range for the Order numbers in the Set&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;RANGES: r_aufnr FOR aufk-aufnr OCCURS 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for the Order Master AND to store temp data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF tbl_aufk OCCURS 0,&lt;/P&gt;&lt;P&gt;        hi_setid  TYPE setid,  "Higher Level of Object&lt;/P&gt;&lt;P&gt;        hi_desc TYPE settext, "Description of Higher Level&lt;/P&gt;&lt;P&gt;        aufnr TYPE aufnr,     "Order Number&lt;/P&gt;&lt;P&gt;        objnr TYPE j_objnr,   "Object Number&lt;/P&gt;&lt;P&gt;        perbtr TYPE wertv8,   "Period Total value in object currency&lt;/P&gt;&lt;P&gt;        yerbtr TYPE wertv8,   "Year Total value in object currency&lt;/P&gt;&lt;P&gt;        prybtr TYPE wertv8,   "Prev Year Total value in object currency&lt;/P&gt;&lt;P&gt;        totbtr TYPE wertv8,   "Total for Object value in object currency&lt;/P&gt;&lt;P&gt;        totbud TYPE wertv8,   "Total Budget&lt;/P&gt;&lt;P&gt;        commit TYPE wertv8,   "Total Commitment&lt;/P&gt;&lt;P&gt;        kokrs TYPE kokrs,     "Controlling Area&lt;/P&gt;&lt;P&gt;        kstar TYPE kstar,     "Cost Element No.&lt;/P&gt;&lt;P&gt;        user7 TYPE aufuser7,  "Start of Work&lt;/P&gt;&lt;P&gt;        user8 TYPE aufuser8,  "Date Work Ends&lt;/P&gt;&lt;P&gt;        user6 TYPE aufuser6,  "Department&lt;/P&gt;&lt;P&gt;        kostv TYPE aufkostv,  "Cost Centre&lt;/P&gt;&lt;P&gt;        user2 TYPE aufuser2,  "Person Resp&lt;/P&gt;&lt;P&gt;        user3 TYPE aufuser3,  "Person Resp Tel&lt;/P&gt;&lt;P&gt;        user0 TYPE aufuser0,  "Applicant&lt;/P&gt;&lt;P&gt;        user1 TYPE aufuser1,  "App Tel&lt;/P&gt;&lt;P&gt;        abkrs TYPE aufabkrs,  "Processign Group&lt;/P&gt;&lt;P&gt;        AKTXT(30) type C,     "Process Description&lt;/P&gt;&lt;P&gt;        user4 TYPE aufuser4,  "Estimated Costs&lt;/P&gt;&lt;P&gt;        user5 TYPE aufuser5,  "Application Date&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; R3DK908842      ktext TYPE ktext,     "Short Text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        ktext(40) TYPE c,     "Short Text&lt;/P&gt;&lt;P&gt;        level TYPE setlev,    "Level of the object&lt;/P&gt;&lt;P&gt;        descript TYPE settext,"Description for the object&lt;/P&gt;&lt;P&gt;        setid TYPE setid,     "Identification of a set&lt;/P&gt;&lt;P&gt;        phas0 TYPE xfeld,     "Phase "Order created"&lt;/P&gt;&lt;P&gt;        phas1 TYPE xfeld,     "Phase "Order released"&lt;/P&gt;&lt;P&gt;        phas2 TYPE xfeld,     "Phase "order completed"&lt;/P&gt;&lt;P&gt;        phas3 TYPE xfeld,     "Phase "order closed"&lt;/P&gt;&lt;P&gt;        gjahr TYPE gjahr,&lt;/P&gt;&lt;P&gt;        erdat TYPE datum,     "Created By&lt;/P&gt;&lt;P&gt;        idat1 TYPE datum,&lt;/P&gt;&lt;P&gt;        idat2 TYPE datum,&lt;/P&gt;&lt;P&gt;        idat3 TYPE datum,&lt;/P&gt;&lt;P&gt;        st_dat TYPE datum,    "Status Date&lt;/P&gt;&lt;P&gt;        status(4) TYPE c,     "Status of Order&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK906478 tart&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        ernam  TYPE usnam,    "Entered By&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK906478 end&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908338 start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        user9  TYPE aufuser9, " Work Approval flag&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908338 end&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908718 Start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        kdauf  TYPE kdauf,   " Sales Order Ref&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908718 End&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        totplan TYPE wertv8,   "Total Plan&lt;/P&gt;&lt;P&gt;        wtjhr TYPE bpej-wtjhr,    " yealy supplement R3DK913369&lt;/P&gt;&lt;P&gt;        totpvyract TYPE wertv8,     "R3DK913495&lt;/P&gt;&lt;P&gt;      END OF tbl_aufk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal data for the table COEP&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF tbl_coep OCCURS 0,&lt;/P&gt;&lt;P&gt;        objnr  TYPE objnr,     "Object Number&lt;/P&gt;&lt;P&gt;        kstar  TYPE kstar,     "Cost Element&lt;/P&gt;&lt;P&gt;        gjahr  TYPE gjahr,     "Fiscal Year&lt;/P&gt;&lt;P&gt;        perio  TYPE co_perio,  "Period&lt;/P&gt;&lt;P&gt;        kokrs  TYPE kokrs,     "Controlling Area&lt;/P&gt;&lt;P&gt;        belnr  TYPE co_belnr,  "Document Number&lt;/P&gt;&lt;P&gt;        buzei  TYPE co_buzei,  "Line Item&lt;/P&gt;&lt;P&gt;        wogbtr TYPE wertv8,    "Total value in object currency&lt;/P&gt;&lt;P&gt;        wkgbtr TYPE wertv8,    "Total value in CO area currency&lt;/P&gt;&lt;P&gt;        beknz  TYPE beknz,     "Debit/Credit Indicator&lt;/P&gt;&lt;P&gt;        wrttp  TYPE co_wrttp,  "Value Type&lt;/P&gt;&lt;P&gt;      END OF tbl_coep.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal data for the table BPEG&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF tbl_bpeg OCCURS 0,&lt;/P&gt;&lt;P&gt;        belnr TYPE bp_belnr,  "Document No.&lt;/P&gt;&lt;P&gt;        buzei TYPE co_buzei,  "Item No.&lt;/P&gt;&lt;P&gt;        lednr TYPE bp_lednr,  "Budget / Planning ledger&lt;/P&gt;&lt;P&gt;        objnr TYPE bp_objekt, "Object number&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       wrttp TYPE co_wrttp,  "Value type&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       gjahr TYPE gjahr,     "Fiscal year&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        versn TYPE bp_version,"Planning/budgeting version&lt;/P&gt;&lt;P&gt;        wlges TYPE bp_wgl,    "Value in ledger currency&lt;/P&gt;&lt;P&gt;        wtges TYPE bp_wgt,    "Value in Document Currency&lt;/P&gt;&lt;P&gt;        vorga TYPE bpeg-vorga,  " activity type  R3DK913369&lt;/P&gt;&lt;P&gt;      END OF tbl_bpeg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Internal data for the table COOI&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF tbl_cooi OCCURS 0,&lt;/P&gt;&lt;P&gt;        refbn TYPE co_refbn,  "Reference Document No&lt;/P&gt;&lt;P&gt;        rfpos TYPE cc_rfpos,  "Reference Line Item&lt;/P&gt;&lt;P&gt;        lednr TYPE lednr,     "Budget / Planning ledger&lt;/P&gt;&lt;P&gt;        objnr TYPE j_objnr,   "Object number&lt;/P&gt;&lt;P&gt;        wrttp TYPE co_wrttp,  "Value type&lt;/P&gt;&lt;P&gt;        gjahr TYPE gjahr,     "Fiscal year&lt;/P&gt;&lt;P&gt;        versn TYPE versn,     "Planning/budgeting version&lt;/P&gt;&lt;P&gt;        perio TYPE co_perio,  "Period&lt;/P&gt;&lt;P&gt;        kokrs TYPE kokrs,     "Company Code&lt;/P&gt;&lt;P&gt;        whgbtr TYPE wertv8,   "Total value in local currency&lt;/P&gt;&lt;P&gt;        wkgbtr TYPE wertv8,   "Total value in CO area currency&lt;/P&gt;&lt;P&gt;     END OF tbl_cooi.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table of Hierarchies and Number Ranges&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF tbl_setheir OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE sethier.&lt;/P&gt;&lt;P&gt;DATA: END OF tbl_setheir.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for Set Values of the Hierarchy&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF tbl_setvalues OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE setvalues.&lt;/P&gt;&lt;P&gt;DATA: END OF tbl_setvalues.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal Table for Output. ie. fields to fill the ALV with.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF tbl_output OCCURS 0,&lt;/P&gt;&lt;P&gt;        hi_setid TYPE setid,   "Higher Level of Object&lt;/P&gt;&lt;P&gt;        hi_desc TYPE settext, "Description of Higher Level&lt;/P&gt;&lt;P&gt;        level TYPE setlev,    "Level of the object&lt;/P&gt;&lt;P&gt;        descript TYPE settext,"Description for the object&lt;/P&gt;&lt;P&gt;        aufgr TYPE aufgr,     "Order Group&lt;/P&gt;&lt;P&gt;        aufnr TYPE aufnr,     "Order Number&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908842       ktext TYPE ktext,     "Order Text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        ktext(40) type c,    "Short Text&lt;/P&gt;&lt;P&gt;        perio TYPE co_perio,  "Period&lt;/P&gt;&lt;P&gt;        gjahr TYPE gjahr,     "Year&lt;/P&gt;&lt;P&gt;        kokrs TYPE kokrs,     "Controlling Area&lt;/P&gt;&lt;P&gt;        objnr TYPE j_objnr,   "Order Number&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       aufgr type aufgr,     "Summary Group&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        user7 TYPE aufuser7,  "Start of Work&lt;/P&gt;&lt;P&gt;        user8 TYPE aufuser8,  "Date Work Ends&lt;/P&gt;&lt;P&gt;        user6 TYPE aufuser6,  "Department&lt;/P&gt;&lt;P&gt;        kostv TYPE kostv,     "Cost Centre&lt;/P&gt;&lt;P&gt;        user2 TYPE aufuser2,  "Person Resp.&lt;/P&gt;&lt;P&gt;        user3 TYPE aufuser3,  "Person Resp. Tel.&lt;/P&gt;&lt;P&gt;        status(4) TYPE c,     "Status of Order&lt;/P&gt;&lt;P&gt;        st_dat TYPE budat,    "Status Date&lt;/P&gt;&lt;P&gt;        user0 TYPE aufuser0,  "Applicant&lt;/P&gt;&lt;P&gt;        user1 TYPE aufuser1,  "Applicant Tel.&lt;/P&gt;&lt;P&gt;        abkrs TYPE aufabkrs,  "Processing Group&lt;/P&gt;&lt;P&gt;        AKTXT(30) type C,   "Process Description&lt;/P&gt;&lt;P&gt;        user4 TYPE aufuser4,  "Estimated Costs&lt;/P&gt;&lt;P&gt;        user5 TYPE aufuser5,  "Application Date&lt;/P&gt;&lt;P&gt;        totbud TYPE bp_wjl,   "Total Budget&lt;/P&gt;&lt;P&gt;        totbtr TYPE wertv8,   "Total Actuals&lt;/P&gt;&lt;P&gt;        commit TYPE wertv8,   "Total Commitment&lt;/P&gt;&lt;P&gt;        assgnd TYPE wertv8, "Total Asigned to the project&lt;/P&gt;&lt;P&gt;        avalbl TYPE wertv8,   "Total Available&lt;/P&gt;&lt;P&gt;        perbtr TYPE wertv8,   "Actual Current Period&lt;/P&gt;&lt;P&gt;        yerbtr TYPE wertv8,   "Actual Current Year&lt;/P&gt;&lt;P&gt;        prybtr TYPE wertv8,   "Actual Previous Year&lt;/P&gt;&lt;P&gt;        setid TYPE setid,     "Identification of a set&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK906478 start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        erdat TYPE datum,     "Created on&lt;/P&gt;&lt;P&gt;        ernam TYPE usnam,     "Entered By&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK906478 end&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908338 Start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        user9 TYPE aufuser9,  " Work Approval&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908338 end&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908718 Start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        kdauf  TYPE kdauf,   " Sales Order Ref&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908718 End&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK911017 Start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        wljhr  LIKE bpej-wtjhr, "Total Budget for Current Year&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK911017 End&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK912712 Start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        plan    LIKE bpej-wtjhr, "Current Plan for Year&lt;/P&gt;&lt;P&gt;        totplan TYPE bp_wjl,     "Total Plan&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK912712 End&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        wtjhr TYPE bpej-wtjhr,    " yealy supplement R3DK913369&lt;/P&gt;&lt;P&gt;        totpvyract TYPE wertv8,     "R3DK913495&lt;/P&gt;&lt;P&gt;      END OF tbl_output.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF tbl_hier OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE sethier.&lt;/P&gt;&lt;P&gt;DATA: END OF tbl_hier.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF tbl_hier2 OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE sethier.&lt;/P&gt;&lt;P&gt;DATA: END OF tbl_hier2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK911017 Start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF tbl_budget OCCURS 0,&lt;/P&gt;&lt;P&gt;        wljhr LIKE bpej-wljhr,&lt;/P&gt;&lt;P&gt;        objnr LIKE bpej-objnr,&lt;/P&gt;&lt;P&gt;      END OF tbl_budget.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF tbl_bpej OCCURS 0,&lt;/P&gt;&lt;P&gt;        wljhr LIKE bpej-wljhr,&lt;/P&gt;&lt;P&gt;        objnr LIKE bpej-objnr,&lt;/P&gt;&lt;P&gt;      END OF tbl_bpej.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK911017 End&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;Begin of R3DK912712&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF tbl_plan OCCURS 0,&lt;/P&gt;&lt;P&gt;        wljhr LIKE bpja-wljhr,&lt;/P&gt;&lt;P&gt;        objnr LIKE bpja-objnr,&lt;/P&gt;&lt;P&gt;      END OF tbl_plan.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF tbl_bpge OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bpge.&lt;/P&gt;&lt;P&gt;DATA: END OF tbl_bpge.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF tbl_bpja OCCURS 0,&lt;/P&gt;&lt;P&gt;        wljhr LIKE bpja-wljhr,&lt;/P&gt;&lt;P&gt;        objnr LIKE bpja-objnr,&lt;/P&gt;&lt;P&gt;      END OF tbl_bpja.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of R3DK912712&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;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;Variables&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;DATA: g_setid TYPE setid,&lt;/P&gt;&lt;P&gt;      t_setid TYPE setid,&lt;/P&gt;&lt;P&gt;      g_lines LIKE sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: l_lynes     LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;      l_level(10) TYPE c,&lt;/P&gt;&lt;P&gt;      l_index(10) TYPE c,&lt;/P&gt;&lt;P&gt;      l_index2    TYPE i,&lt;/P&gt;&lt;P&gt;      l_tabix     LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;      l_hi_setid  LIKE tbl_setheir-setid,&lt;/P&gt;&lt;P&gt;      l_hi_desc   LIKE tbl_setheir-descript.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------" /&gt;&lt;P&gt;ALV GRID Definitions&lt;/P&gt;&lt;P&gt;*field catalogue&lt;/P&gt;&lt;P&gt;DATA: st_fieldcat TYPE slis_fieldcat_alv.&lt;/P&gt;&lt;P&gt;DATA: st_layout TYPE slis_layout_alv.&lt;/P&gt;&lt;P&gt;DATA: st_event TYPE slis_alv_event.&lt;/P&gt;&lt;P&gt;DATA: st_sort TYPE slis_sortinfo_alv.&lt;/P&gt;&lt;P&gt;DATA: tbl_fieldcat TYPE slis_t_fieldcat_alv.&lt;/P&gt;&lt;P&gt;DATA: tbl_events TYPE slis_t_event.&lt;/P&gt;&lt;P&gt;DATA: tbl_sorts TYPE slis_t_sortinfo_alv.&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;Constants&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;CONSTANTS: c_setclass  TYPE setclass VALUE '0103',&lt;/P&gt;&lt;P&gt;           c_set_table TYPE tabname  VALUE 'CCSS'.&lt;/P&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;Selection Screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK title WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;PARAMETERS:     p_kokrs  TYPE kokrs DEFAULT 'APJH' OBLIGATORY, "CO Area&lt;/P&gt;&lt;P&gt;                p_gjahr  TYPE gjahr OBLIGATORY,      "Fiscal Year&lt;/P&gt;&lt;P&gt;                p_perio  TYPE co_perio OBLIGATORY.   "Period&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;PARAMETERS:     p_aufgr  TYPE aufgr.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_aufnr  FOR  aufk-aufnr.&lt;/P&gt;&lt;P&gt;PARAMETERS:     p_kagru  TYPE kagru.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_kstar  FOR  cosp-kstar.&lt;/P&gt;&lt;P&gt;PARAMETERS:     p_ob_cur RADIOBUTTON GROUP grp0 DEFAULT 'X',&lt;/P&gt;&lt;P&gt;                p_ca_cur RADIOBUTTON GROUP grp0.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK title .&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK additional WITH FRAME TITLE text-002.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*SELECT-OPTIONS: s_summ FOR lgrwo-sum_from.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_summ TYPE sum_from_n.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK status WITH FRAME TITLE text-003.&lt;/P&gt;&lt;P&gt;PARAMETERS:     p_open   RADIOBUTTON GROUP grp1 DEFAULT 'X',&lt;/P&gt;&lt;P&gt;                p_comp   RADIOBUTTON GROUP grp1,&lt;/P&gt;&lt;P&gt;                p_all    RADIOBUTTON GROUP grp1.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK status.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK dates WITH FRAME TITLE text-004.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_user5 FOR aufk-user5,           "App Date&lt;/P&gt;&lt;P&gt;                s_user7 FOR aufk-user7,           "Start of Work&lt;/P&gt;&lt;P&gt;                s_ends  FOR aufk-user8.           "Date Work Ends&lt;/P&gt;&lt;P&gt;PARAMETERS:     p_odue  TYPE aufuser8.            "Overdue as Of&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK dates.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK dollars WITH FRAME TITLE text-005.&lt;/P&gt;&lt;P&gt;PARAMETERS:     p_life AS CHECKBOX.               "O/Spent Proj LTD&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK dollars.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK general WITH FRAME TITLE text-006.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_user2 FOR aufk-user2,           "Person Resp&lt;/P&gt;&lt;P&gt;                s_user6 FOR aufk-user6,           "Department&lt;/P&gt;&lt;P&gt;                s_user0 FOR aufk-user0,           "Applicant&lt;/P&gt;&lt;P&gt;                s_abkrs FOR tko08-abkrs.          "Process. Group&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK general.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK output WITH FRAME TITLE text-007.&lt;/P&gt;&lt;P&gt;PARAMETERS:     p_show   AS CHECKBOX DEFAULT 'X',  "Show All&lt;/P&gt;&lt;P&gt;                p_grpnam AS CHECKBOX,              "Summ Group Name&lt;/P&gt;&lt;P&gt;                p_resnam AS CHECKBOX,              "Person Responsible&lt;/P&gt;&lt;P&gt;                p_dept   AS CHECKBOX,              "Department&lt;/P&gt;&lt;P&gt;                p_cost   AS CHECKBOX,              "Cost Centre&lt;/P&gt;&lt;P&gt;                p_appl   AS CHECKBOX,              "Applicant&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;               p_procgp AS CHECKBOX,              "Process Group&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;                p_protxt AS CHECKBOX,              "Process Description&lt;/P&gt;&lt;P&gt;                p_appdat AS CHECKBOX,              "Application Date&lt;/P&gt;&lt;P&gt;                p_start  AS CHECKBOX,              "Start of Work&lt;/P&gt;&lt;P&gt;                p_end    AS CHECKBOX,              "Date Work Ends&lt;/P&gt;&lt;P&gt;                p_apptel AS CHECKBOX,              "Applicant's Tel.&lt;/P&gt;&lt;P&gt;                p_restel AS CHECKBOX,              "Person Resp's Tel.&lt;/P&gt;&lt;P&gt;                p_est    AS CHECKBOX,              "Estimated Costs&lt;/P&gt;&lt;P&gt;                p_status AS CHECKBOX,              "Status of Order&lt;/P&gt;&lt;P&gt;                p_date   AS CHECKBOX.              "Date of Order Status&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK output.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK additional.&lt;/P&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;Range&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;Fiscal Year Range&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;RANGES: r_dates FOR aufk-idat1 OCCURS 0.&lt;/P&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;At Selection Screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;  PERFORM check_selections.&lt;/P&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;Initialisation&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;INITIALIZATION.&lt;/P&gt;&lt;P&gt;  PERFORM initialise.&lt;/P&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;Start of Selection&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;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  PERFORM get_data.            "Get all data for the ALV&lt;/P&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;End of Selection&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;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE tbl_output LINES g_lines.&lt;/P&gt;&lt;P&gt;  IF g_lines GT 0.&lt;/P&gt;&lt;P&gt;    PERFORM get_layout.          "Set the ALV layout&lt;/P&gt;&lt;P&gt;    PERFORM get_events.          "Include header in display&lt;/P&gt;&lt;P&gt;    PERFORM get_sort_criteria.   "Sort by Setid&lt;/P&gt;&lt;P&gt;    PERFORM get_fieldcat.        "Fill the ALV table&lt;/P&gt;&lt;P&gt;    PERFORM create_report.       "Write ALV&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    WRITE:/ 'No data found'(e04) COLOR COL_NEGATIVE INVERSE.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&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;Subroutines&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;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  initialise&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;      Initialise Key Tables&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 initialise.&lt;/P&gt;&lt;P&gt;  CLEAR:   tbl_fieldcat,&lt;/P&gt;&lt;P&gt;           tbl_setinfo,&lt;/P&gt;&lt;P&gt;           r_aufnr,&lt;/P&gt;&lt;P&gt;           tbl_aufk.&lt;/P&gt;&lt;P&gt;  REFRESH: tbl_fieldcat,&lt;/P&gt;&lt;P&gt;           tbl_setinfo,&lt;/P&gt;&lt;P&gt;           r_aufnr,&lt;/P&gt;&lt;P&gt;           tbl_aufk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " initialise&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  check_selections&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 the data on the Selection Screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM check_selections.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Make sure Order Group or Order Numer is filled&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF p_aufgr IS INITIAL AND&lt;/P&gt;&lt;P&gt;     s_aufnr-low IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MESSAGE e398(00)&lt;/P&gt;&lt;P&gt;            WITH 'An Order Group or Order Number must be provided'(e01)&lt;/P&gt;&lt;P&gt;                 space space space.&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;Make sure that both Order Group and Order Number are not filled.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF NOT p_aufgr IS INITIAL AND&lt;/P&gt;&lt;P&gt;     NOT s_aufnr-low IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MESSAGE e398(00)&lt;/P&gt;&lt;P&gt;            WITH 'An Order Group or Order Number must be provided'(e01)&lt;/P&gt;&lt;P&gt;                 space space space.&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;Make sure that 'Overdue As of' is used only for 'Open Projects'&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF NOT p_odue IS INITIAL AND&lt;/P&gt;&lt;P&gt;     p_open = ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MESSAGE e398(00)&lt;/P&gt;&lt;P&gt;            WITH 'Overdue As of can only be used for'(e02)&lt;/P&gt;&lt;P&gt;            'Open Projects Only'(e03) space space.&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;Make sure that Hierarchy Level is greater than 0&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF p_summ LT 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MESSAGE e398(00)&lt;/P&gt;&lt;P&gt;            WITH 'Please enter a Hierarchy Level greater than 0'(e05)&lt;/P&gt;&lt;P&gt;            space space space.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " check_selections&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_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;      Basically get all the relevant data and get an output table&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      ready for the ALV&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.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Fiscal Year&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM get_fiscal_year.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Because the user must either put in an Order Group or an Order Number&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;range, we will use either GET_ORDERS_BY_GROUP or GET_ORDERS_BY_NUMBER&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF NOT p_aufgr IS INITIAL.&lt;/P&gt;&lt;P&gt;    PERFORM get_orders_by_group.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM get_orders_by_number.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM get_curr_period_budget.  "GET ACCTCURPR - COEP&lt;/P&gt;&lt;P&gt;  PERFORM get_curr_year_budget.    "GET ACCTCURYR - COEP&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK911017 Start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM get_budget_curr_year.    "GET Total Budget&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK911017 End&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM get_plan_curr_year.      "GET Plan for current year R3DK912712&lt;/P&gt;&lt;P&gt;  PERFORM get_total_plan.          "GET Total Plan R3DK912712&lt;/P&gt;&lt;P&gt;  PERFORM get_total_actuals.       "GET Total Actuals (totbtr) - COEP&lt;/P&gt;&lt;P&gt;  PERFORM get_previous_year_budget."GET PREVYRBUD - COEP&lt;/P&gt;&lt;P&gt;  PERFORM get_total_budget.        "GET Budget (totbud)&lt;/P&gt;&lt;P&gt;  PERFORM get_commitment.          "Get Assignment (assngd)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM filter_data.             "Check selection screen data&lt;/P&gt;&lt;P&gt;  PERFORM fill_output_table.       "Fill up output table to pass to ALV&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_data&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_orders_by_group&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;      Get the Order Number Range via the Order Group&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_orders_by_group.&lt;/P&gt;&lt;P&gt;  REFRESH: tbl_setinfo,&lt;/P&gt;&lt;P&gt;           tbl_setvalues.&lt;/P&gt;&lt;P&gt;  CLEAR:   g_setid,&lt;/P&gt;&lt;P&gt;           tbl_setinfo,&lt;/P&gt;&lt;P&gt;           tbl_setvalues,&lt;/P&gt;&lt;P&gt;           t_setid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;We need to get the SET ID&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'G_SET_ENCRYPT_SETID'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            setclass             = c_setclass&lt;/P&gt;&lt;P&gt;            shortname            = p_aufgr&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;            setid                = g_setid&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            no_co_area_specified = 1&lt;/P&gt;&lt;P&gt;            illegal_setclass     = 2&lt;/P&gt;&lt;P&gt;            OTHERS               = 3.&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 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;  CHECK NOT g_setid IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  t_setid = g_setid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Get all objects and setid' s for the entire group&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'G_SET_TREE_IMPORT'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            setid                     = t_setid&lt;/P&gt;&lt;P&gt;            max_hier_level            = 99&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            set_hierarchy             = tbl_setheir&lt;/P&gt;&lt;P&gt;            set_values                = tbl_setvalues&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            set_not_found             = 1&lt;/P&gt;&lt;P&gt;            illegal_field_replacement = 2&lt;/P&gt;&lt;P&gt;            illegal_table_replacement = 3&lt;/P&gt;&lt;P&gt;            OTHERS                    = 4.&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Group Set Data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'G_SET_GET_INFO'&lt;/P&gt;&lt;P&gt;       EXPORTING&lt;/P&gt;&lt;P&gt;            class                     = c_setclass&lt;/P&gt;&lt;P&gt;            setname                   = p_aufgr&lt;/P&gt;&lt;P&gt;            table                     = c_set_table&lt;/P&gt;&lt;P&gt;            use_table_buffer          = 'X'&lt;/P&gt;&lt;P&gt;            client                    = sy-mandt&lt;/P&gt;&lt;P&gt;       IMPORTING&lt;/P&gt;&lt;P&gt;            info                      = tbl_setinfo&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            set_not_found             = 1&lt;/P&gt;&lt;P&gt;            illegal_field_replacement = 2&lt;/P&gt;&lt;P&gt;            OTHERS                    = 3.&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;  tbl_hier[]  = tbl_setheir[].&lt;/P&gt;&lt;P&gt;  tbl_hier2[] = tbl_setheir[].&lt;/P&gt;&lt;P&gt;  SORT tbl_hier BY level.&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE tbl_hier LINES l_lynes.&lt;/P&gt;&lt;P&gt;  READ TABLE tbl_hier INDEX l_lynes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  l_level = tbl_hier-level.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;L_LEVEL now contains the highest level in the table&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;We need to find out if at which Hierarchy Level to display the report.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SHIFT l_level LEFT DELETING LEADING space.&lt;/P&gt;&lt;P&gt;  SHIFT p_summ  LEFT DELETING LEADING '0'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_summ LT l_level(2).&lt;/P&gt;&lt;P&gt;    l_index = p_summ.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    l_index = l_level(2).&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;Loop through the relevant elements in the tbl_setheir and check for&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;its AUFNR_RANGE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  MOVE l_index TO l_index2.&lt;/P&gt;&lt;P&gt;  l_index2 = l_index2 - 1.&lt;/P&gt;&lt;P&gt;  LOOP AT tbl_setheir WHERE level = l_index.&lt;/P&gt;&lt;P&gt;    CLEAR: r_aufnr, g_setid.&lt;/P&gt;&lt;P&gt;    g_setid = tbl_setheir-setid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the previous level and it's description&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF l_index NE 0.&lt;/P&gt;&lt;P&gt;      l_tabix = sy-tabix.&lt;/P&gt;&lt;P&gt;      DO.&lt;/P&gt;&lt;P&gt;        l_tabix = l_tabix - 1.&lt;/P&gt;&lt;P&gt;        IF l_tabix EQ 0.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          READ TABLE tbl_hier2 INDEX l_tabix.&lt;/P&gt;&lt;P&gt;          IF tbl_hier2-level  = l_index2.&lt;/P&gt;&lt;P&gt;            l_hi_setid  = tbl_hier2-setid.&lt;/P&gt;&lt;P&gt;            l_hi_desc = tbl_hier2-descript.&lt;/P&gt;&lt;P&gt;            EXIT.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDDO.&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;  Get the Order Number range defined for this Order Group&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CALL FUNCTION 'K_ORDER_RANGE_FILL_FROM_SET'&lt;/P&gt;&lt;P&gt;         EXPORTING&lt;/P&gt;&lt;P&gt;              setid           = g_setid&lt;/P&gt;&lt;P&gt;         TABLES&lt;/P&gt;&lt;P&gt;              aufnr_range     = r_aufnr&lt;/P&gt;&lt;P&gt;         EXCEPTIONS&lt;/P&gt;&lt;P&gt;              aufgr_not_found = 1&lt;/P&gt;&lt;P&gt;              OTHERS          = 2.&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 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;    CHECK NOT r_aufnr IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Check the heirarchy level and fill up data accordingly&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Append data from tables into the internal table.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908718 Start&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   added the field kdauf-sales order ref for the display&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908718 End&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT r_aufnr.&lt;/P&gt;&lt;P&gt;      SELECT aufnr user7 user8 user6 kostv user2 user5&lt;/P&gt;&lt;P&gt;             user3 user0 user1 abkrs user4 kokrs kstar&lt;/P&gt;&lt;P&gt;             objnr ktext phas0 phas1 phas2 phas3 erdat&lt;/P&gt;&lt;P&gt;             idat1 idat2 idat3 ernam user9 kdauf&lt;/P&gt;&lt;P&gt;             FROM aufk&lt;/P&gt;&lt;P&gt;             APPENDING CORRESPONDING FIELDS OF TABLE tbl_aufk&lt;/P&gt;&lt;P&gt;             WHERE aufnr IN r_aufnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  Set the level and description of the hierarchy level and date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    LOOP AT tbl_aufk WHERE level    IS initial AND&lt;/P&gt;&lt;P&gt;                           descript IS initial.&lt;/P&gt;&lt;P&gt;      tbl_aufk-level = tbl_setheir-level.&lt;/P&gt;&lt;P&gt;      tbl_aufk-descript = tbl_setheir-descript.&lt;/P&gt;&lt;P&gt;      tbl_aufk-hi_setid = l_hi_setid.&lt;/P&gt;&lt;P&gt;      tbl_aufk-hi_desc = l_hi_desc.&lt;/P&gt;&lt;P&gt;      tbl_aufk-setid = g_setid.&lt;/P&gt;&lt;P&gt;      tbl_aufk-gjahr = p_gjahr.&lt;/P&gt;&lt;P&gt;      MODIFY tbl_aufk TRANSPORTING gjahr level descript setid hi_setid&lt;/P&gt;&lt;P&gt;                                   hi_desc.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&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;  SORT tbl_aufk BY aufnr DESCENDING.&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM tbl_aufk COMPARING aufnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM status_check.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_orders_by_group&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_orders_by_number&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;      Get Orders by Order Number&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_orders_by_number.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT aufnr user7 user8 user6 kostv user2 user5&lt;/P&gt;&lt;P&gt;         user3 user0 user1 abkrs user4 kokrs kstar&lt;/P&gt;&lt;P&gt;         objnr ktext phas0 phas1 phas2 phas3 erdat&lt;/P&gt;&lt;P&gt;         idat1 idat2 idat3 ernam user9 kdauf&lt;/P&gt;&lt;P&gt;         FROM aufk&lt;/P&gt;&lt;P&gt;         INTO CORRESPONDING FIELDS OF TABLE tbl_aufk&lt;/P&gt;&lt;P&gt;         WHERE aufnr IN s_aufnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM status_check.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; LOOP AT tbl_aufk.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   tbl_aufk-gjahr = p_gjahr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   MODIFY tbl_aufk TRANSPORTING gjahr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_orders_by_number&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  filter_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;      This subroutine will filter out the data in TBL_AUFK based on&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      the user defined selection criteria&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 filter_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DELETE tbl_aufk WHERE kokrs NE p_kokrs.      "CO Area&lt;/P&gt;&lt;P&gt;  DELETE tbl_aufk WHERE NOT kstar IN s_kstar.  "Cost Element&lt;/P&gt;&lt;P&gt;  DELETE tbl_aufk WHERE NOT user5 IN s_user5.  "Application Date&lt;/P&gt;&lt;P&gt;  DELETE tbl_aufk WHERE NOT user7 IN s_user7.  "Start of Work&lt;/P&gt;&lt;P&gt;  DELETE tbl_aufk WHERE NOT user8 IN s_ends.   "Date Work Ends&lt;/P&gt;&lt;P&gt;  DELETE tbl_aufk WHERE NOT user2 IN s_user2.  "Person Responsible&lt;/P&gt;&lt;P&gt;  DELETE tbl_aufk WHERE NOT user6 IN s_user6.  "Department&lt;/P&gt;&lt;P&gt;  DELETE tbl_aufk WHERE NOT user0 IN s_user0.  "Applicant&lt;/P&gt;&lt;P&gt;  DELETE tbl_aufk WHERE NOT abkrs IN s_abkrs.  "Processing Group&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT p_odue IS INITIAL.&lt;/P&gt;&lt;P&gt;    DELETE tbl_aufk WHERE     user8 GE p_odue.   "Date Overdue&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " filter_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_curr_period_budget&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;     This will find the value for the Current Period. AcctCurPr&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_curr_period_budget.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH: tbl_coep.&lt;/P&gt;&lt;P&gt;  CLEAR:   tbl_coep.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: l_gjahr TYPE gjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  l_gjahr = p_gjahr - 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Use Index Z1 for COEP&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT belnr buzei kstar gjahr perio kokrs belnr wogbtr wkgbtr objnr&lt;/P&gt;&lt;P&gt;         beknz wrttp&lt;/P&gt;&lt;P&gt;         FROM coep&lt;/P&gt;&lt;P&gt;         INTO CORRESPONDING FIELDS OF TABLE tbl_coep&lt;/P&gt;&lt;P&gt;         FOR ALL ENTRIES IN tbl_aufk&lt;/P&gt;&lt;P&gt;         WHERE kokrs =  tbl_aufk-kokrs AND&lt;/P&gt;&lt;P&gt;               objnr =  tbl_aufk-objnr AND&lt;/P&gt;&lt;P&gt;               gjahr LE p_gjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Delete Credit Postings from Order&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DELETE tbl_coep WHERE beknz = 'A'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Delete all Postings where the Value Type is not 04 (Actuals)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DELETE tbl_coep WHERE wrttp NE '04'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: l_perbtr TYPE wertv8.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT tbl_coep BY kokrs objnr gjahr perio .&lt;/P&gt;&lt;P&gt;  LOOP AT tbl_aufk.&lt;/P&gt;&lt;P&gt;    READ TABLE tbl_coep WITH KEY kokrs = tbl_aufk-kokrs&lt;/P&gt;&lt;P&gt;                                 objnr = tbl_aufk-objnr&lt;/P&gt;&lt;P&gt;                                 gjahr = p_gjahr&lt;/P&gt;&lt;P&gt;                                 perio = p_perio&lt;/P&gt;&lt;P&gt;                                 BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    CLEAR: l_perbtr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Total up all the entries for the current period&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Check for whether to use Controlling object numbers (AUS) or Local&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Objects Numbers (NZ or AUS)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    LOOP AT tbl_coep FROM sy-tabix.&lt;/P&gt;&lt;P&gt;      IF p_ob_cur = 'X'.&lt;/P&gt;&lt;P&gt;        IF tbl_aufk-kokrs = tbl_coep-kokrs AND&lt;/P&gt;&lt;P&gt;           tbl_aufk-objnr = tbl_coep-objnr AND&lt;/P&gt;&lt;P&gt;           p_gjahr        = tbl_coep-gjahr AND&lt;/P&gt;&lt;P&gt;           p_perio        = tbl_coep-perio.&lt;/P&gt;&lt;P&gt;          l_perbtr = l_perbtr + tbl_coep-wogbtr.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ELSE. "p_ca_cur = 'X'.&lt;/P&gt;&lt;P&gt;        IF tbl_aufk-kokrs = tbl_coep-kokrs AND&lt;/P&gt;&lt;P&gt;           tbl_aufk-objnr = tbl_coep-objnr AND&lt;/P&gt;&lt;P&gt;           p_gjahr        = tbl_coep-gjahr AND&lt;/P&gt;&lt;P&gt;           p_perio        = tbl_coep-perio.&lt;/P&gt;&lt;P&gt;          l_perbtr = l_perbtr + tbl_coep-wkgbtr.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    tbl_aufk-perbtr = l_perbtr.&lt;/P&gt;&lt;P&gt;    MODIFY tbl_aufk TRANSPORTING perbtr.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_curr_period_budget&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_curr_year_budget&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;    This will find the value for the Current Year. AcctCurYr&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_curr_year_budget.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: l_perbtr TYPE wertv8.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT tbl_coep BY kokrs objnr gjahr perio.&lt;/P&gt;&lt;P&gt;  LOOP AT tbl_aufk.&lt;/P&gt;&lt;P&gt;    READ TABLE tbl_coep WITH KEY kokrs = tbl_aufk-kokrs&lt;/P&gt;&lt;P&gt;                                 objnr = tbl_aufk-objnr&lt;/P&gt;&lt;P&gt;                                 gjahr = p_gjahr&lt;/P&gt;&lt;P&gt;                                 BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    CLEAR: l_perbtr.&lt;/P&gt;&lt;P&gt;    LOOP AT tbl_coep FROM sy-tabix.&lt;/P&gt;&lt;P&gt;      IF p_ob_cur = 'X'.&lt;/P&gt;&lt;P&gt;        IF tbl_aufk-kokrs =  tbl_coep-kokrs AND&lt;/P&gt;&lt;P&gt;           tbl_aufk-objnr =  tbl_coep-objnr AND&lt;/P&gt;&lt;P&gt;           p_gjahr        =  tbl_coep-gjahr AND&lt;/P&gt;&lt;P&gt;           tbl_coep-perio LE p_perio.&lt;/P&gt;&lt;P&gt;          l_perbtr = l_perbtr + tbl_coep-wogbtr.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ELSE. "p_ca_cur = 'X'.&lt;/P&gt;&lt;P&gt;        IF tbl_aufk-kokrs =  tbl_coep-kokrs AND&lt;/P&gt;&lt;P&gt;           tbl_aufk-objnr =  tbl_coep-objnr AND&lt;/P&gt;&lt;P&gt;           p_gjahr        =  tbl_coep-gjahr AND&lt;/P&gt;&lt;P&gt;           tbl_coep-perio LE p_perio.&lt;/P&gt;&lt;P&gt;          l_perbtr = l_perbtr + tbl_coep-wkgbtr.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    tbl_aufk-yerbtr = l_perbtr.&lt;/P&gt;&lt;P&gt;    MODIFY tbl_aufk TRANSPORTING yerbtr.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_curr_year_budget&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_previous_year_budget&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;      Get the Previous Years total. PrevYrBud&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_previous_year_budget.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: l_gjahr TYPE gjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get the Previous Year&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  l_gjahr = p_gjahr - 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: l_perbtr TYPE wertv8.&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;Delete all entries in TBL_COEP that are not in the previous year&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DELETE tbl_coep WHERE gjahr NE l_gjahr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT tbl_coep BY kokrs objnr gjahr .&lt;/P&gt;&lt;P&gt;  LOOP AT tbl_aufk.&lt;/P&gt;&lt;P&gt;    READ TABLE tbl_coep WITH KEY kokrs = tbl_aufk-kokrs&lt;/P&gt;&lt;P&gt;                                 objnr = tbl_aufk-objnr&lt;/P&gt;&lt;P&gt;                                 gjahr = l_gjahr&lt;/P&gt;&lt;P&gt;                                 BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    CLEAR: l_perbtr.&lt;/P&gt;&lt;P&gt;    LOOP AT tbl_coep FROM sy-tabix.&lt;/P&gt;&lt;P&gt;      IF p_ob_cur = 'X'.&lt;/P&gt;&lt;P&gt;        IF tbl_aufk-kokrs = tbl_coep-kokrs AND&lt;/P&gt;&lt;P&gt;           tbl_aufk-objnr = tbl_coep-objnr AND&lt;/P&gt;&lt;P&gt;           l_gjahr        = tbl_coep-gjahr.&lt;/P&gt;&lt;P&gt;           l_perbtr = l_perbtr + tbl_coep-wogbtr.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ELSE. "p_ca_cur = 'X'.&lt;/P&gt;&lt;P&gt;        IF tbl_aufk-kokrs = tbl_coep-kokrs AND&lt;/P&gt;&lt;P&gt;           tbl_aufk-objnr = tbl_coep-objnr AND&lt;/P&gt;&lt;P&gt;           l_gjahr        = tbl_coep-gjahr.&lt;/P&gt;&lt;P&gt;          l_perbtr = l_perbtr + tbl_coep-wkgbtr.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    tbl_aufk-prybtr = l_perbtr.&lt;/P&gt;&lt;P&gt;    MODIFY tbl_aufk TRANSPORTING prybtr.&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.                    " get_previous_year_budget&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;**&amp;amp;      Form  get_pre_yer_coep&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;      THIS IS AN OLD VERSION TO GET THE PREVIOUS YEARS BUDGET DATA.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;      SHOULD NOT NEED TO USE THIS ONE. HOWEVER LEFT IT IN FOR **&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;      TROUBLESHOOTING PURPOSES.&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 get_previous_year_budget.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; REFRESH: tbl_coep.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; CLEAR: tbl_coep.&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; DATA: j_gjahr TYPE gjahr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; j_gjahr = p_gjahr - 1.&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 kstar gjahr kokrs belnr wogbtr wkgbtr objnr&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        FROM coep&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        APPENDING CORRESPONDING FIELDS OF TABLE tbl_coep&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        FOR ALL ENTRIES IN tbl_aufk&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WHERE kokrs = tbl_aufk-kokrs AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;              objnr = tbl_aufk-objnr AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;              gjahr = j_gjahr AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;              wrttp = '04'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; DATA: l_perbtr TYPE wertv8.&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; SORT tbl_coep BY kokrs objnr.&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; LOOP AT tbl_aufk.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   READ TABLE tbl_coep WITH KEY kokrs = tbl_aufk-kokrs&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                objnr = tbl_aufk-objnr&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                BINARY SEARCH.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CHECK sy-subrc = 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CLEAR: l_perbtr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   LOOP AT tbl_coep FROM sy-tabix.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     IF p_ob_cur = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       IF tbl_aufk-kokrs = tbl_coep-kokrs AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          tbl_aufk-objnr = tbl_coep-objnr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             l_perbtr = l_perbtr + tbl_coep-wogbtr.&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;         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;     ELSE. "p_ca_cur = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       IF tbl_aufk-kokrs = tbl_coep-kokrs AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          tbl_aufk-objnr = tbl_coep-objnr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;             l_perbtr = l_perbtr + tbl_coep-wkgbtr.&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;         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;     ENDIF.&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;   tbl_aufk-prybtr = l_perbtr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   MODIFY tbl_aufk TRANSPORTING prybtr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*ENDFORM.                    " get_pre_yer_coep&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_total_actuals&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;      Find the Total Accruals Value. totbtr.&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_total_actuals.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: l_perbtr TYPE wertv8,&lt;/P&gt;&lt;P&gt;        l_wertv8 TYPE wertv8.                       "R3DK913495&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT tbl_coep BY kokrs objnr gjahr .&lt;/P&gt;&lt;P&gt;  LOOP AT tbl_aufk.&lt;/P&gt;&lt;P&gt;    READ TABLE tbl_coep WITH KEY kokrs = tbl_aufk-kokrs&lt;/P&gt;&lt;P&gt;                                 objnr = tbl_aufk-objnr&lt;/P&gt;&lt;P&gt;                                 BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    CLEAR: l_perbtr.&lt;/P&gt;&lt;P&gt;    LOOP AT tbl_coep FROM sy-tabix.&lt;/P&gt;&lt;P&gt;      IF p_ob_cur = 'X'.&lt;/P&gt;&lt;P&gt;        IF tbl_aufk-kokrs = tbl_coep-kokrs AND&lt;/P&gt;&lt;P&gt;           tbl_aufk-objnr = tbl_coep-objnr.&lt;/P&gt;&lt;P&gt;          l_perbtr = l_perbtr + tbl_coep-wogbtr.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Prev Yr Act(full)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;           IF tbl_coep-gjahr &amp;lt; p_gjahr.             "R3DK913495&lt;/P&gt;&lt;P&gt;             l_wertv8 = l_wertv8 + tbl_coep-wogbtr. "R3DK913495&lt;/P&gt;&lt;P&gt;           ENDIF.                                   "R3DK913495&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ELSE. "p_ca_cur = 'X'.&lt;/P&gt;&lt;P&gt;        IF tbl_aufk-kokrs = tbl_coep-kokrs AND&lt;/P&gt;&lt;P&gt;           tbl_aufk-objnr = tbl_coep-objnr.&lt;/P&gt;&lt;P&gt;          l_perbtr = l_perbtr + tbl_coep-wkgbtr.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    tbl_aufk-totbtr = l_perbtr.&lt;/P&gt;&lt;P&gt;    tbl_aufk-totpvyract = l_wertv8.                 "R3DK913495&lt;/P&gt;&lt;P&gt;    MODIFY tbl_aufk TRANSPORTING totbtr totpvyract. "R3DK913495&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_total_actuals&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_total_budget&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;      Get the total budget for the project&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_total_budget.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: l_perbtr TYPE bp_wgl.&lt;/P&gt;&lt;P&gt;  DATA: l_sup TYPE bpeg-wlges.   " R3DK913369&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH: tbl_bpeg.&lt;/P&gt;&lt;P&gt;  CLEAR: tbl_bpeg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT belnr buzei lednr objnr versn wtges wlges&lt;/P&gt;&lt;P&gt;          vorga        " R3DK913369&lt;/P&gt;&lt;P&gt;         FROM bpeg&lt;/P&gt;&lt;P&gt;         INTO CORRESPONDING FIELDS OF TABLE tbl_bpeg&lt;/P&gt;&lt;P&gt;         FOR ALL ENTRIES IN tbl_aufk&lt;/P&gt;&lt;P&gt;         WHERE objnr = tbl_aufk-objnr AND&lt;/P&gt;&lt;P&gt;               lednr = '0001'         AND&lt;/P&gt;&lt;P&gt;               " vorga = 'KBUD'        AND "R3DK912712  R3DK913369&lt;/P&gt;&lt;P&gt;               ( vorga = 'KBUD' OR vorga = 'KBN0' ) AND " R3DK913369&lt;/P&gt;&lt;P&gt;               versn = '000'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT tbl_bpeg BY objnr.&lt;/P&gt;&lt;P&gt;  LOOP AT tbl_aufk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR: l_perbtr.&lt;/P&gt;&lt;P&gt;    CLEAR: l_sup.    " R3DK913369&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE tbl_bpeg WITH KEY objnr = tbl_aufk-objnr&lt;/P&gt;&lt;P&gt;                                 BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    LOOP AT tbl_bpeg FROM sy-tabix.&lt;/P&gt;&lt;P&gt;      IF tbl_aufk-objnr = tbl_bpeg-objnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF p_ob_cur = 'X'.              "Get in Object Currency&lt;/P&gt;&lt;P&gt;          l_perbtr = l_perbtr + tbl_bpeg-wtges.&lt;/P&gt;&lt;P&gt;        ELSE.                          "Get in Ledger Currency&lt;/P&gt;&lt;P&gt;          l_perbtr = l_perbtr + tbl_bpeg-wlges.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK913369 starts&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        IF tbl_bpeg-vorga = 'KBN0'.&lt;/P&gt;&lt;P&gt;          IF p_ob_cur = 'X'.              "Get in Object Currency&lt;/P&gt;&lt;P&gt;            l_sup = l_sup + tbl_bpeg-wtges.&lt;/P&gt;&lt;P&gt;          ELSE.                          "Get in Ledger Currency&lt;/P&gt;&lt;P&gt;            l_sup = l_sup + tbl_bpeg-wlges.&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;R3DK913369 ends&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    tbl_aufk-totbud = l_perbtr.&lt;/P&gt;&lt;P&gt;    tbl_aufk-wtjhr = l_sup.      " R3DK913369&lt;/P&gt;&lt;P&gt;    MODIFY tbl_aufk TRANSPORTING totbud.&lt;/P&gt;&lt;P&gt;    MODIFY tbl_aufk TRANSPORTING wtjhr.  " R3DK913369&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_total_budget&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_commitment&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;      Get the total commitment value for the project&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_commitment.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: l_perbtr TYPE wertv8.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH: tbl_cooi.&lt;/P&gt;&lt;P&gt;  CLEAR:   tbl_cooi,&lt;/P&gt;&lt;P&gt;           l_perbtr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT refbn rfpos lednr objnr gjahr wrttp versn perio kokrs whgbtr&lt;/P&gt;&lt;P&gt;         wkgbtr&lt;/P&gt;&lt;P&gt;         FROM cooi&lt;/P&gt;&lt;P&gt;         INTO CORRESPONDING FIELDS OF TABLE tbl_cooi&lt;/P&gt;&lt;P&gt;         FOR ALL ENTRIES IN tbl_aufk&lt;/P&gt;&lt;P&gt;         WHERE kokrs = tbl_aufk-kokrs AND&lt;/P&gt;&lt;P&gt;               objnr = tbl_aufk-objnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT tbl_cooi BY kokrs objnr.&lt;/P&gt;&lt;P&gt;  LOOP AT tbl_aufk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CLEAR l_perbtr.&lt;/P&gt;&lt;P&gt;    READ TABLE tbl_cooi WITH KEY kokrs = tbl_aufk-kokrs&lt;/P&gt;&lt;P&gt;                                 objnr = tbl_aufk-objnr&lt;/P&gt;&lt;P&gt;                                 BINARY SEARCH.&lt;/P&gt;&lt;P&gt;    CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT tbl_cooi FROM sy-tabix.&lt;/P&gt;&lt;P&gt;      IF p_ob_cur = 'X'.&lt;/P&gt;&lt;P&gt;        IF tbl_aufk-kokrs NE tbl_cooi-kokrs OR&lt;/P&gt;&lt;P&gt;           tbl_aufk-objnr NE tbl_cooi-objnr.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        l_perbtr = l_perbtr + tbl_cooi-whgbtr.&lt;/P&gt;&lt;P&gt;      ELSE. "p_ca_cur = 'X'.&lt;/P&gt;&lt;P&gt;        IF tbl_aufk-kokrs NE tbl_cooi-kokrs OR&lt;/P&gt;&lt;P&gt;           tbl_aufk-objnr NE tbl_cooi-objnr.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        l_perbtr = l_perbtr + tbl_cooi-wkgbtr.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    tbl_aufk-commit = l_perbtr.&lt;/P&gt;&lt;P&gt;    MODIFY tbl_aufk TRANSPORTING commit.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_commitment&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_fieldcat&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;      Fill in the ALV table&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_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat&lt;/P&gt;&lt;P&gt;     USING 'HI_SETID'  "field name&lt;/P&gt;&lt;P&gt;     'TBL_OUTPUT'   "table where data is stored&lt;/P&gt;&lt;P&gt;     ' '            "Datatype&lt;/P&gt;&lt;P&gt;     'Group Header' "Column label&lt;/P&gt;&lt;P&gt;     ' '            "Key&lt;/P&gt;&lt;P&gt;     1              "Position&lt;/P&gt;&lt;P&gt;     ' '            "Hide&lt;/P&gt;&lt;P&gt;     ' '            "Sum&lt;/P&gt;&lt;P&gt;     '12'.           "Width&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat&lt;/P&gt;&lt;P&gt;     USING 'HI_DESC'"field name&lt;/P&gt;&lt;P&gt;    'TBL_OUTPUT'   "table where data is stored&lt;/P&gt;&lt;P&gt;    ' '            "Datatype&lt;/P&gt;&lt;P&gt;    'Header Desc' "Column label&lt;/P&gt;&lt;P&gt;    ' '            "Key&lt;/P&gt;&lt;P&gt;    2              "Position&lt;/P&gt;&lt;P&gt;    ' '            "Hide&lt;/P&gt;&lt;P&gt;    ' '            "Sum&lt;/P&gt;&lt;P&gt;    '15'.           "Width&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat&lt;/P&gt;&lt;P&gt;      USING 'SETID'  "field name&lt;/P&gt;&lt;P&gt;      'TBL_OUTPUT'   "table where data is stored&lt;/P&gt;&lt;P&gt;      ' '            "Datatype&lt;/P&gt;&lt;P&gt;      'Group'        "Column label&lt;/P&gt;&lt;P&gt;      ' '            "Key&lt;/P&gt;&lt;P&gt;      3              "Position&lt;/P&gt;&lt;P&gt;      ' '            "Hide&lt;/P&gt;&lt;P&gt;      ' '            "Sum&lt;/P&gt;&lt;P&gt;      ' '.           "Width&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT p_aufgr IS INITIAL.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat&lt;/P&gt;&lt;P&gt;        USING 'DESCRIPT'&lt;/P&gt;&lt;P&gt;        'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;        ' '&lt;/P&gt;&lt;P&gt;        'Description'&lt;/P&gt;&lt;P&gt;        'X'&lt;/P&gt;&lt;P&gt;        4&lt;/P&gt;&lt;P&gt;        ' '&lt;/P&gt;&lt;P&gt;        ' '&lt;/P&gt;&lt;P&gt;        '30'.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat&lt;/P&gt;&lt;P&gt;        USING 'DESCRIPT'&lt;/P&gt;&lt;P&gt;        'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;        'SETHIER'&lt;/P&gt;&lt;P&gt;        ' '&lt;/P&gt;&lt;P&gt;        ' '&lt;/P&gt;&lt;P&gt;        4&lt;/P&gt;&lt;P&gt;        'X'&lt;/P&gt;&lt;P&gt;        ' '&lt;/P&gt;&lt;P&gt;        '30'.&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; perform wrt_fieldcat using 'OBJNR'  'TBL_OUTPUT' 'COEP' '/' 'X' 1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM wrt_fieldcat&lt;/P&gt;&lt;P&gt;        USING 'AUFNR'&lt;/P&gt;&lt;P&gt;              'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;              'AUFK'&lt;/P&gt;&lt;P&gt;              ' '&lt;/P&gt;&lt;P&gt;              ' '&lt;/P&gt;&lt;P&gt;              5&lt;/P&gt;&lt;P&gt;              ' '&lt;/P&gt;&lt;P&gt;              ' '&lt;/P&gt;&lt;P&gt;              '10'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'KTEXT'&lt;/P&gt;&lt;P&gt;                             'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                             ' '&lt;/P&gt;&lt;P&gt;                             'Order Name'&lt;/P&gt;&lt;P&gt;                             'X'&lt;/P&gt;&lt;P&gt;                             6&lt;/P&gt;&lt;P&gt;                             ' '&lt;/P&gt;&lt;P&gt;                             ' '&lt;/P&gt;&lt;P&gt;                             '15'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_start = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER7'&lt;/P&gt;&lt;P&gt;                                'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                                'AUFK'&lt;/P&gt;&lt;P&gt;                                ' '&lt;/P&gt;&lt;P&gt;                                ' '&lt;/P&gt;&lt;P&gt;                                6&lt;/P&gt;&lt;P&gt;                                ' '&lt;/P&gt;&lt;P&gt;                                ' '&lt;/P&gt;&lt;P&gt;                                ' '.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER7'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               7&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_end = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER8'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               8&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER8'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               8&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_dept = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER6'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               9&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER6'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               9&lt;/P&gt;&lt;P&gt;                               'X'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_cost = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'KOSTV'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               10&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'KOSTV'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               10&lt;/P&gt;&lt;P&gt;                               'X'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_resnam = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER2'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               11&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER2'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               11&lt;/P&gt;&lt;P&gt;                               'X'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_restel = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER3'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               12&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER3'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               12&lt;/P&gt;&lt;P&gt;                               'X'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_appl = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER0'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               13&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER0'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               13&lt;/P&gt;&lt;P&gt;                               'X'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_apptel = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER1'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               14&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER1'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               14&lt;/P&gt;&lt;P&gt;                               'X'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; IF p_procgp = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   PERFORM wrt_fieldcat USING 'ABKRS'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              'TBL_OUTPUT'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              'AUFK'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              'Proc. Group'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              15&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              ' '.&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;   PERFORM wrt_fieldcat USING 'ABKRS'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              'TBL_OUTPUT'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              'AUFK'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              'Proc. Group'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              15&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              'X'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                              ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                             ' '.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_proTxt = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'AKTXT'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               'Proc. Desc. '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               20&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'AKTXT'&lt;/P&gt;&lt;P&gt;                               'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;                               'AUFK'&lt;/P&gt;&lt;P&gt;                               'Proc. Desc.'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               20&lt;/P&gt;&lt;P&gt;                               'X'&lt;/P&gt;&lt;P&gt;                               ' '&lt;/P&gt;&lt;P&gt;                               ' '.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_est = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER4'  'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;             'AUFK' ' ' ' ' 16 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER4'  'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;             'AUFK' ' ' ' ' 16 'X' 'X' ' '.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_appdat = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER5'  'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;             'AUFK' ' ' ' ' 16 ' ' ' ' ' '.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'USER5'  'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;             'AUFK' ' ' ' ' 16 'X' ' ' ' '.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'TOTBUD' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;          'Ttl Bud' ' ' 17 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Begin of R3DK913369&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'WTJHR' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;          'Ttl Bud Supp' ' ' 18 ' ' 'X' ' '.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of R3DK913369&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'TOTBTR' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;          'Ttl Act' ' ' 19 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'COMMIT' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;          'Commitment' ' ' 20 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'ASSGND' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;          'Assigned' ' ' 21 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'AVALBL' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;          'Ttl Left' ' ' 22 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'PERBTR' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;          'AcctCurrPer' ' ' 23 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'YERBTR' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;          'AcctCurrYr' ' ' 24 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'PRYBTR' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;          'Prev Yr Act' ' ' 25 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;*Begin of R3DK911017&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'WLJHR' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;          'Curr Year Budget' ' ' 26 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;*End of R3DK911017&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_status = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'STATUS' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;*Begin of R3DK911017&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          'Status' ' ' 25 ' ' 'X' ' '.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            'Status' ' ' 27 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'STATUS' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           'Status' ' ' 25 'X' 'X' ' '.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;             'Status' ' ' 27 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;*End of R3DK911017&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_date = 'X' OR p_show = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'ST_DAT' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;*Begin of R3DK911017&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          'Status Date' ' ' 26 ' ' 'X' ' '.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            'Status Date' ' ' 28 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    PERFORM wrt_fieldcat USING 'ST_DAT' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          'Status Date' ' ' 26 'X' 'X' ' '.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            'Status Date' ' ' 28 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;*End of R3DK911017&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;R3DK906478 start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'ERDAT'  'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;*Begin of R3DK911017&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            'AUFK' ' ' ' ' 27 ' ' ' ' ' '.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              'AUFK' ' ' ' ' 29 ' ' ' ' ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'ERNAM'  'TBL_OUTPUT'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            'AUFK' ' ' ' ' 28 ' ' ' ' ' '.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              'AUFK' ' ' ' ' 30 ' ' ' ' ' '.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of R3DK911017&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;R3DK906478 end&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908338 start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'USER9'  'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;*Begin of R3DK911017&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;            'AUFK' ' ' ' ' 29 ' ' ' ' ' '.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;              'AUFK' ' ' ' ' 31 ' ' ' ' ' '.&lt;/P&gt;&lt;P&gt;*End of R3DK911017&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908338 end&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908718 Start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'KDAUF'  'TBL_OUTPUT'&lt;/P&gt;&lt;P&gt;*Begin of R3DK911017&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           'AUFK' ' ' ' ' 30 ' ' ' ' ' '.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;             'AUFK' ' ' ' ' 32 ' ' ' ' ' '.&lt;/P&gt;&lt;P&gt;*End of R3DK911017&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908718 End&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;Begin of R3DK912712&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'PLAN' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;          'Curr Yr Plan' ' ' 33 ' ' 'X' ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'TOTPLAN' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;          'Tot Yr Plan' ' ' 34 ' ' 'X' ' '.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of R3DK912712&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;Begin of R3DK913495&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM wrt_fieldcat USING 'TOTPVYRACT' 'TBL_OUTPUT' ' '&lt;/P&gt;&lt;P&gt;          'Prv Yr Act(full)' ' ' 35 ' ' 'X' ' '.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of R3DK913495&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_fieldcat&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fill_output_table&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;      Get all data to fill in the Output table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM fill_output_table.&lt;/P&gt;&lt;P&gt;  DATA: j_setid(30) TYPE c,&lt;/P&gt;&lt;P&gt;        loc_count TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT tbl_aufk BY aufnr objnr.&lt;/P&gt;&lt;P&gt;  LOOP AT tbl_aufk.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Begin of R3DK911017&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CLEAR:tbl_output-wljhr,&lt;/P&gt;&lt;P&gt;           tbl_output-plan. "R3DK912712&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of R3DK911017&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    tbl_output-aufgr = p_aufgr.&lt;/P&gt;&lt;P&gt;    tbl_output-aufnr = tbl_aufk-aufnr.&lt;/P&gt;&lt;P&gt;    tbl_output-level = tbl_aufk-level.&lt;/P&gt;&lt;P&gt;    tbl_output-descript = tbl_aufk-descript.&lt;/P&gt;&lt;P&gt;    tbl_output-hi_setid = tbl_aufk-hi_setid+4.&lt;/P&gt;&lt;P&gt;    tbl_output-hi_desc = tbl_aufk-hi_desc.&lt;/P&gt;&lt;P&gt;    tbl_output-ktext = tbl_aufk-ktext.&lt;/P&gt;&lt;P&gt;    tbl_output-perio = p_perio.  "Period&lt;/P&gt;&lt;P&gt;    tbl_output-gjahr = tbl_aufk-gjahr.     "Year&lt;/P&gt;&lt;P&gt;    tbl_output-kokrs = tbl_aufk-kokrs.     "Controlling Area&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       aufgr type aufgr,     "Summary Group&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    tbl_output-objnr = tbl_aufk-objnr.  "Object Number&lt;/P&gt;&lt;P&gt;    tbl_output-user7 = tbl_aufk-user7.  "Start of Work&lt;/P&gt;&lt;P&gt;    tbl_output-user8 = tbl_aufk-user8.  "Date Work Ends&lt;/P&gt;&lt;P&gt;    tbl_output-user6 = tbl_aufk-user6.  "Department&lt;/P&gt;&lt;P&gt;    tbl_output-kostv = tbl_aufk-kostv.  "Cost Centre&lt;/P&gt;&lt;P&gt;    tbl_output-user2 = tbl_aufk-user2.  "Person Resp.&lt;/P&gt;&lt;P&gt;    tbl_output-user3 = tbl_aufk-user3.  "Person Resp. Tel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908718 Start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    tbl_output-kdauf = tbl_aufk-kdauf.  " Sales Order Reference&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908718 end&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*GET STATUS&lt;/P&gt;&lt;P&gt;    IF tbl_aufk-phas0 = 'X'.&lt;/P&gt;&lt;P&gt;      tbl_aufk-status = 'CRTD'.&lt;/P&gt;&lt;P&gt;      tbl_aufk-st_dat = tbl_aufk-erdat.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      IF tbl_aufk-phas1 = 'X'.&lt;/P&gt;&lt;P&gt;        tbl_aufk-status = 'REL'.&lt;/P&gt;&lt;P&gt;        tbl_aufk-st_dat = tbl_aufk-idat1.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        IF tbl_aufk-phas2 = 'X'.&lt;/P&gt;&lt;P&gt;          tbl_aufk-status = 'TECO'.&lt;/P&gt;&lt;P&gt;          tbl_aufk-st_dat = tbl_aufk-idat2.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          IF tbl_aufk-phas3 = 'X'.&lt;/P&gt;&lt;P&gt;            tbl_aufk-status = 'CLSD'.&lt;/P&gt;&lt;P&gt;            tbl_aufk-st_dat = tbl_aufk-idat3.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    tbl_output-status = tbl_aufk-status.     "Status of Order&lt;/P&gt;&lt;P&gt;    tbl_output-st_dat = tbl_aufk-st_dat.    "Status Date&lt;/P&gt;&lt;P&gt;    tbl_output-user0 = tbl_aufk-user0.  "Applicant&lt;/P&gt;&lt;P&gt;    tbl_output-user1 = tbl_aufk-user1.  "Applicant Tel.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   tbl_output-abkrs = tbl_aufk-abkrs.  "Processing Group&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    tbl_output-aktxt = tbl_aufk-aktxt.  "Process Description&lt;/P&gt;&lt;P&gt;    tbl_output-user4 = tbl_aufk-user4.  "Estimated Costs&lt;/P&gt;&lt;P&gt;    tbl_output-user5 = tbl_aufk-user5.  "Application Date&lt;/P&gt;&lt;P&gt;    tbl_output-totbud = tbl_aufk-totbud. "Total Budget&lt;/P&gt;&lt;P&gt;    tbl_output-wtjhr = tbl_aufk-wtjhr.  " Total supplement  R3DK913369&lt;/P&gt;&lt;P&gt;    tbl_output-totplan = tbl_aufk-totplan. "Total Plan "R3DK912712&lt;/P&gt;&lt;P&gt;    tbl_output-totbtr = tbl_aufk-totbtr.   "Total Actuals&lt;/P&gt;&lt;P&gt;    tbl_output-commit = tbl_aufk-commit.   "Total Commitment&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Total Asigned to the project&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Total Actual + Commitment&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    tbl_output-assgnd = tbl_aufk-totbtr + tbl_aufk-commit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Total Available for the project&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Total Budget - Total Assigned&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    tbl_output-avalbl = tbl_aufk-totbud -&lt;/P&gt;&lt;P&gt;                      ( tbl_aufk-totbtr + tbl_aufk-commit ) .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    tbl_output-perbtr = tbl_aufk-perbtr.   "Actual Current Period&lt;/P&gt;&lt;P&gt;    tbl_output-yerbtr = tbl_aufk-yerbtr.   "Actual Current Year&lt;/P&gt;&lt;P&gt;    tbl_output-prybtr = tbl_aufk-prybtr.   "Actual Previous Year&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Concatenate the setid so that it fits in with f50&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    j_setid = tbl_aufk-setid+4(30).&lt;/P&gt;&lt;P&gt;    tbl_output-setid  = j_setid.    "the sets id&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK906478 start Add created on and entered by fields&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    tbl_output-erdat = tbl_aufk-erdat. "Created On&lt;/P&gt;&lt;P&gt;    tbl_output-ernam = tbl_aufk-ernam. "Entered By&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK906478 end&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;R3DK908338 start&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    tbl_output-user9 = tbl_aufk-user9. " Work Approval Flag&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;R3DK908338 end&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Begin of changes R3DK909162&lt;/P&gt;&lt;P&gt;     SELECT single aktxt from tko09&lt;/P&gt;&lt;P&gt;            INTO TBL_output-AKTXT&lt;/P&gt;&lt;P&gt;            WHERE ABKRS EQ TBL_AUFK-ABKRS&lt;/P&gt;&lt;P&gt;            AND SPRAS EQ 'EN'.&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 R3DK909162&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;Begin of R3DK911017&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      READ TABLE tbl_budget with key objnr = tbl_aufk-objnr.&lt;/P&gt;&lt;P&gt;         if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;           tbl_output-wljhr = tbl_budget-wljhr.&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 R3DK911017&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;Begin of R3DK912712&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      READ TABLE tbl_plan with key objnr = tbl_aufk-objnr.&lt;/P&gt;&lt;P&gt;         if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;           tbl_output-plan = tbl_plan-wljhr.&lt;/P&gt;&lt;P&gt;         endif.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;End of R3DK912712&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    tbl_output-totpvyract = tbl_aufk-totpvyract.             "R3DK913495&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    APPEND tbl_output.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_life = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Delete if Total Available (tbl_output-avalbl) is less than zero&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    DELETE tbl_output WHERE avalbl GE '0'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fill_output_table&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  write_fieldcat&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;      Fill in the table.&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;fieldname&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;tabname&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;ref_tabname&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;seltext_m&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;key&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;col_pos&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;no_out (hide)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;do_sum&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;Width&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 wrt_fieldcat USING name tab st w_label key&lt;/P&gt;&lt;P&gt;                        pos w_hide w_sum w_width.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  st_fieldcat-fieldname     = name.&lt;/P&gt;&lt;P&gt;  st_fieldcat-tabname       = tab.&lt;/P&gt;&lt;P&gt;  st_fieldcat-ref_tabname   = st.&lt;/P&gt;&lt;P&gt;  st_fieldcat-seltext_m     = w_label.&lt;/P&gt;&lt;P&gt;  st_fieldcat-key           = key.&lt;/P&gt;&lt;P&gt;  st_fieldcat-col_pos       = pos.&lt;/P&gt;&lt;P&gt;  st_fieldcat-no_out        = w_hide.&lt;/P&gt;&lt;P&gt;  st_fieldcat-do_sum        = w_sum.&lt;/P&gt;&lt;P&gt;  st_fieldcat-outputlen     = w_width.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND st_fieldcat TO tbl_fieldcat.&lt;/P&gt;&lt;P&gt;  CLEAR st_fieldcat.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " write_fieldcat&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  create_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;      Pass the values to the ALV function module and run it.&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 create_report.&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;            it_events               = tbl_events&lt;/P&gt;&lt;P&gt;            i_interface_check       = ' '&lt;/P&gt;&lt;P&gt;            i_callback_program      = 'ZKR_PROJECT_REPORT'&lt;/P&gt;&lt;P&gt;            i_callback_user_command = 'PROCESS_USER_COMMANDS'&lt;/P&gt;&lt;P&gt;            is_layout               = st_layout&lt;/P&gt;&lt;P&gt;            it_fieldcat             = tbl_fieldcat&lt;/P&gt;&lt;P&gt;            i_default               = 'X'&lt;/P&gt;&lt;P&gt;            i_save                  = 'X'&lt;/P&gt;&lt;P&gt;            it_sort                 = tbl_sorts&lt;/P&gt;&lt;P&gt;       TABLES&lt;/P&gt;&lt;P&gt;            t_outtab                = tbl_output&lt;/P&gt;&lt;P&gt;       EXCEPTIONS&lt;/P&gt;&lt;P&gt;            program_error           = 1&lt;/P&gt;&lt;P&gt;            OTHERS                  = 2.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   MESSAGE ID S-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " create_report&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_layout&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;      Set the zebra pattern for the ALV table&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_layout.&lt;/P&gt;&lt;P&gt;  CLEAR st_layout.&lt;/P&gt;&lt;P&gt;  st_layout-zebra = 'X'.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_layout&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_events&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;      Set the header for the ALV table screen.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_events.&lt;/P&gt;&lt;P&gt;  CLEAR st_event.&lt;/P&gt;&lt;P&gt;  st_event-name = 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;  st_event-form = 'PROCESS_TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;  APPEND st_event TO tbl_events.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_events&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_sort_criteria&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;      Set the Sort options on. Sort by SETID&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_sort_criteria.&lt;/P&gt;&lt;P&gt;  CLEAR st_sort.&lt;/P&gt;&lt;P&gt;  st_sort-fieldname = 'SETID'.&lt;/P&gt;&lt;P&gt;  st_sort-down = 'X'.&lt;/P&gt;&lt;P&gt;  st_sort-subtot = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND st_sort TO tbl_sorts.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "get_sort_criteria&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp;      Form top of page&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="-------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Header section&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------" /&gt;&lt;P&gt;FORM process_top_of_page.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Skip.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Uline.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FORMAT COLOR COL_HEADING. INTENSIFIED ON.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  WRITE:/ 'Report Name: ZKR_PROJECT_REPORT',&lt;/P&gt;&lt;P&gt;        / 'Order Group:',p_aufgr,&lt;/P&gt;&lt;P&gt;        / 'Description of Order Group:', tbl_setinfo-title,&lt;/P&gt;&lt;P&gt;        / 'Run Date:', sy-datum,&lt;/P&gt;&lt;P&gt;        / 'Run Time:', sy-uzeit,&lt;/P&gt;&lt;P&gt;        / 'Controlling Area:', p_kokrs,&lt;/P&gt;&lt;P&gt;        / 'Fiscal Year:', p_gjahr,&lt;/P&gt;&lt;P&gt;        / 'Period:', p_perio.&lt;/P&gt;&lt;P&gt;  ULINE.&lt;/P&gt;&lt;P&gt;  FORMAT COLOR COL_HEADING INTENSIFIED OFF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " process_top_of_page&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  get_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;      Populate R_DATES with the Current Fiscal Year&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_fiscal_year.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH r_dates.&lt;/P&gt;&lt;P&gt;  CLEAR   r_dates.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  r_dates-sign      = 'I'.&lt;/P&gt;&lt;P&gt;  r_dates-option    = 'BT'.&lt;/P&gt;&lt;P&gt;  r_dates-low(4)    = p_gjahr - 1.&lt;/P&gt;&lt;P&gt;  r_dates-low+4(4)  = '0401'.&lt;/P&gt;&lt;P&gt;  r_dates-high(4)   = p_gjahr.&lt;/P&gt;&lt;P&gt;  r_dates-high+4(4) = '0331'.&lt;/P&gt;&lt;P&gt;  APPEND r_dates.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_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;P&gt;*&amp;amp;      Form  status_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;      Check Status&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 status_check.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Delete orders that are not Open/Complete&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF p_open = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Delete any orders that are not open or closed.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    DELETE tbl_aufk WHERE phas2 EQ 'X' OR&lt;/P&gt;&lt;P&gt;                          phas3 EQ 'X'.&lt;/P&gt;&lt;P&gt;  ELSEIF p_comp = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Delete all projects that were closed prior to this&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fiscal year. Projects that are open or created are also deleted.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    DELETE tbl_aufk WHERE phas0 EQ 'X' OR&lt;/P&gt;&lt;P&gt;                          phas1 EQ 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DELETE tbl_aufk WHERE NOT idat3 IN r_dates AND&lt;/P&gt;&lt;P&gt;                          NOT idat3 IS initial.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSEIF p_all = 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Delete all projects that were closed prior to the fiscal year&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    DELETE tbl_aufk WHERE NOT idat3 IN r_dates AND&lt;/P&gt;&lt;P&gt;                          NOT idat3 IS initial.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " status_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;P&gt;*&amp;amp;      Form  get_budget_curr_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;      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_budget_curr_year.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; REFRESH: tbl_bpej.&lt;/P&gt;&lt;P&gt; CLEAR:   tbl_bpej.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT wljhr objnr&lt;/P&gt;&lt;P&gt;         FROM bpej&lt;/P&gt;&lt;P&gt;         INTO CORRESPONDING FIELDS OF TABLE tbl_bpej&lt;/P&gt;&lt;P&gt;         FOR ALL ENTRIES IN tbl_aufk&lt;/P&gt;&lt;P&gt;         WHERE objnr =  tbl_aufk-objnr AND&lt;/P&gt;&lt;P&gt;               gjahr =  p_gjahr AND&lt;/P&gt;&lt;P&gt;               " vorga = 'KBUD' AND   "R3DK912712 R3DK913369&lt;/P&gt;&lt;P&gt;               ( vorga = 'KBUD' OR vorga = 'KBN0' ) AND   " R3DK913369&lt;/P&gt;&lt;P&gt;               lednr = '0001'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT tbl_bpej.&lt;/P&gt;&lt;P&gt;    COLLECT tbl_bpej INTO tbl_budget.&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.                    " get_budget_curr_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  get_plan_curr_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;      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_plan_curr_year.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH: tbl_bpja, tbl_plan.&lt;/P&gt;&lt;P&gt; CLEAR:   tbl_bpja, tbl_plan.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT wljhr objnr&lt;/P&gt;&lt;P&gt;         FROM bpja&lt;/P&gt;&lt;P&gt;         INTO CORRESPONDING FIELDS OF TABLE tbl_bpja&lt;/P&gt;&lt;P&gt;         FOR ALL ENTRIES IN tbl_aufk&lt;/P&gt;&lt;P&gt;         WHERE objnr =  tbl_aufk-objnr AND&lt;/P&gt;&lt;P&gt;               gjahr =  p_gjahr AND&lt;/P&gt;&lt;P&gt;               wrttp = '01' AND&lt;/P&gt;&lt;P&gt;               vorga = 'KSTP' AND&lt;/P&gt;&lt;P&gt;               lednr = '0001'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT tbl_bpja.&lt;/P&gt;&lt;P&gt;    COLLECT tbl_bpja INTO tbl_plan.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " get_plan_curr_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  get_total_plan&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_total_plan.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: l_perbtr TYPE bp_wgl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH: tbl_bpge.&lt;/P&gt;&lt;P&gt;  CLEAR: tbl_bpge.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT * FROM bpge&lt;/P&gt;&lt;P&gt;         INTO CORRESPONDING FIELDS OF TABLE tbl_bpge&lt;/P&gt;&lt;P&gt;         FOR ALL ENTRIES IN tbl_aufk&lt;/P&gt;&lt;P&gt;         WHERE objnr = tbl_aufk-objnr AND&lt;/P&gt;&lt;P&gt;               vorga = 'KSTP' AND&lt;/P&gt;&lt;P&gt;               wrttp = '01'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   LOOP AT tbl_aufk.&lt;/P&gt;&lt;P&gt;     READ table tbl_bpge WITH KEY objnr = tbl_aufk-objnr&lt;/P&gt;&lt;P&gt;                                  vorga = 'KSTP'&lt;/P&gt;&lt;P&gt;                                  wrttp = '01'.&lt;/P&gt;&lt;P&gt;       IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;          l_perbtr = tbl_bpge-wlges.&lt;/P&gt;&lt;P&gt;          tbl_aufk-totplan = l_perbtr. "R3DK912718&lt;/P&gt;&lt;P&gt;       ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        tbl_aufk-totplan = l_perbtr. "R3DK912718&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MODIFY tbl_aufk TRANSPORTING totplan.&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.                    " get_total_plan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Jan 2009 01:54:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010041#M1166254</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-06T01:54:53Z</dc:date>
    </item>
    <item>
      <title>Re: Regarding grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010042#M1166255</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I don't think you need to use a form to process the top of page event.&lt;/P&gt;&lt;P&gt;ABAP has the event 'TOP-OF-PAGE'. You can use it only and put the code following by the statement.&lt;/P&gt;&lt;P&gt;Just like INITIALIZATION, START-OF-SELECTION etc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Chris Gu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Jan 2009 02:11:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010042#M1166255</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-06T02:11:55Z</dc:date>
    </item>
    <item>
      <title>Re: Regarding grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010043#M1166256</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Revanth Kandula,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Use this this way, its working:-&lt;/P&gt;&lt;P&gt;use demo code for top_of_page event.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
*FOR TOP OF THE PAGE
DATA : it_top TYPE slis_t_listheader,
       wa_top TYPE slis_listheader.
 
*&amp;amp;---------------------------------------------------------------------*
*          DISPLAY RECORDS IN ALV GRID
*&amp;amp;---------------------------------------------------------------------*
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
   EXPORTING
    i_callback_program                = sy-repid "report id
    i_callback_top_of_page            = 'TOP' "to print in top of page
    it_fieldcat                       = it_field "for field catalog (headings for columns)
   TABLES
    t_outtab                          = it_ekpo "internal table comprising of the data
   EXCEPTIONS
    program_error                     = 1
    OTHERS                            = 2.
 
  IF sy-subrc  0.
  ENDIF.
 
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  top
*&amp;amp;---------------------------------------------------------------------*
*       TO WRITE THE HEADER
*----------------------------------------------------------------------*
FORM top.
 
  REFRESH it_top.
  wa_top-typ = 'S'.
  wa_top-key = 'Date :'.
  wa_top-info = sy-datum.
  APPEND wa_top TO it_top.
  CLEAR wa_top.
 
  wa_top-typ = 'S'.
  wa_top-key = 'Time :'.
  wa_top-info = sy-uzeit.
  APPEND wa_top TO it_top.
  CLEAR wa_top.
 
  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
      it_list_commentary       = it_top "pass the data to be printed
*   I_LOGO                   =
*   I_END_OF_LIST_GRID       =
*   I_ALV_FORM               =
            .
ENDFORM.                    "top
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this solves your problem.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks &amp;amp; Regards,&lt;/P&gt;&lt;P&gt;Tarun Gambhir&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Jan 2009 03:56:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010043#M1166256</guid>
      <dc:creator>I355602</dc:creator>
      <dc:date>2009-01-06T03:56:08Z</dc:date>
    </item>
    <item>
      <title>Re: Regarding grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010044#M1166257</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;You can not use write statements in grid display for top of page instead you will have to use the function module 'REUSE_ALV_COMMENTARY_WRITE'. You will have to create an internal table of type slis_t_listheader with workarea of type slis_listheader.The structure contains three fields typ,info and key. Set value of typ as 'H' if the requested text to be displayed via info as bold and if you need the ouput as subtitles use type as 'S' and append to the internal table. So assume that it_list is the internal table and wa_list is the workarea, then&lt;/P&gt;&lt;P&gt;wa_list-typ = 'H'.&lt;/P&gt;&lt;P&gt;wa_list-info = 'Project System Report'.&lt;/P&gt;&lt;P&gt;append wa_list to it_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;wa_list-typ = 'S'.&lt;/P&gt;&lt;P&gt;concatenate 'Date' sy-datum to wa_list-info.&lt;/P&gt;&lt;P&gt;append wa_list to it_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Call the function module Reuse_ALV_Commentary_write and pass this internal table it_list to the parameter it_list_commentary.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This would create the heading in top of page on every page.&lt;/P&gt;&lt;P&gt;This will solve your problem as write statements do not work in top of page with grid display.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks and Regards,&lt;/P&gt;&lt;P&gt;Sachin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Jan 2009 04:15:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010044#M1166257</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-06T04:15:44Z</dc:date>
    </item>
    <item>
      <title>Re: Regarding grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010045#M1166258</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;check the below link&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_message" href="https://community.sap.com/" __jive_macro_name="message" modifiedtitle="true" __default_attr="1001294"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;and try this: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;First add a handler method in your handler class definition as: &lt;/P&gt;&lt;P&gt;e.g. METHOD handle_print_top_of_list FOR EVENT print_top_of_list OF cl_gui_alv_grid . &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Then implement the method in the implementation part of your local class. &lt;/P&gt;&lt;P&gt;e.g. METHOD handle_print_top_of_list . &lt;/P&gt;&lt;P&gt;WRITE:/ 'Flights Made on ', sy-datum . &lt;/P&gt;&lt;P&gt;ENDMETHOD . &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And register this method as the handler.&lt;/P&gt;&lt;P&gt;e.g. SET HANDLER gr_event_handler-&amp;gt;handle_print_top_of_list FOR gr_alvgrid .&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Jan 2009 05:40:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010045#M1166258</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-06T05:40:09Z</dc:date>
    </item>
    <item>
      <title>Re: Regarding grid display</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010046#M1166259</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Have U called the FM &lt;/P&gt;&lt;P&gt;'REUSE_ALV_COMMENTARY_WRITE',,&lt;/P&gt;&lt;P&gt;Only with this FM , Top of page /Header can be called..&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Jan 2009 05:44:28 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/regarding-grid-display/m-p/5010046#M1166259</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-06T05:44:28Z</dc:date>
    </item>
  </channel>
</rss>

