Report for day 0PCA_C01

HI Gurus
I am extracting data from R3 to BW for the state of results based on 0PCA_C01, now require reports drawn per day but finished just shows me once a month
as these reports could draw?
BW:learnng

Do your users really require DAILY balance sheets?
ie balance as at the end of a day?
You cannot do this in SAP (without building in <4.6 special ledgers and ECC6 segment ledgers nevermind BW!)
0PCA_C01 gets fed either from the R3 table GLPCT which is a monthly summary table or get fed from 0EC_PCA_3 which is the line items of PCA for non sub ledger postings
If your eally eanted to do this you would need to put cal day in the a Z version fo the PCA cube and generate 365 daily postings (as per the standard start routine - check the OSS notes)
But to be quite honest it won;t work as the balance sheet will still not balance due to the AR, AP and AA ledgers only transfering once a month via the 1KEK and 1KES jobs (these are monthly jobs)
If you wanted to use only P&L then yes you coudl create a z version and use 0EC_PCA_3 as a feeder
If you dont; understand any of this then talk to your FICO guy he wil help you

Similar Messages

  • Pivot sales analysis report by day for a particular month - sap has by month and annual

    Hi guys,
    I'm trying to come up with a pivot sales analysis query report for items for the month by displaying individual days sales, sales amount, gross profit, gross profit %
    e.g
    Month of March
    1st, 2nd, 3rd, 4th.....31st march. In sap their is a sales analysis report by
    days of the month
    1st March
    2nd march
    31st march
    item no
    item description
    Qty
    sale amount
    gross profit
    gross profit%
    qty
    sale amt
    gross profit
    gross profit %
    Qty
    sale amt
    gross profit
    gross profit %
    sugar
    20
    20,000
    5,000
    25
    30
    30,000
    10000
    33.3
    40
    40000
    15000
    37.5
    n02
    n03
    no4
    Regards Brian

    Hi,
    Due to pivot limitation, not possible to get above data in pivot table.
    Try this simple query which matches system sales analysis by item.
    SELECT t1.itemcode as Itemcode, T1.[Dscription] as 'Item description',  sum(T1.[Quantity]) as Qty, sum(T1.[LineTotal]) as 'sales amount', sum(T1.[GrssProfit]) as 'Gross Profit'
    FROM OINV T0  INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry WHERE month( T0.[DocDate]) = '1' and year( T0.[DocDate]) =2014 GROUP BY T1.[ItemCode], T1.[Dscription]
    Thanks & Regards,
    Nagarajan

  • Not been able to open firefox for days just keep getting crash reporter, tried everything, no joy

    for the past few days, a week at most, i've been unable to open firefox, it just keeps giving me the crash reporter..
    i always use firefox, i've not installed any add ons (i did install dropbox lately but thats about it), i always have adblockplus running, have done for months never had a problem
    having to use Opera at the minute cos Chrome is the slowest browser known to man (why everyone sings its praises i'll never know)
    then one day, i tried opening firefox, it said checking compatibility of add-ons, then gave the crash reporter box, not been able to do anything since
    i've followed all guides on here, i've reset all settings, i've updated the add-ons it said i had, i've tried booting in safe mode..
    ..all with the same result, crash reporter
    so please dont tell me to go into firefox and change settings as i cant even open firefox
    here is my latest crash report ID
    Crash ID: bp-27aa708f-12d0-4b17-ac96-0961a2130115

    Further info
    Please follow the instructions in the article from the above post. In fct you have a second suspicious file showing on your report so look specifically at and scan files ''gblrofmx.dll'' & ''sprotector.dll''
    If possible I suggest you quarantine the files rather than deleting them immediately. Also note that you may need to start Windows in safe mode (or Windows safemode with network access) in order to find and move or delete the files.
    * Use F8 to access Windows safe mode <br /> http://windows.microsoft.com/en-US/windows7/Start-your-computer-in-safe-mode <br />http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/boot_failsafe.mspx?mfr=true
    For forum cross referencing purposes
    * Report for CrashID [https://crash-stats.mozilla.com/report/index/27aa708f-12d0-4b17-ac96-0961a2130115 27aa708f-12d0-4b17-ac96-0961a2130115]
    ** Crash Signature: nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*)
    ** related bug 801394, and contributors thread [https://support.mozilla.org/en-US/forums/contributors/708895 nsInputStreamPump::OnInputStreamReady Crashes (Malware)]
    ** files without ID ''RocketDock.dll , gblrofmx.dll , sprotector.dll''
    * sprotector.dll some suspicions about this being possible malware trojan <br />''Bug 785940 - Firefox startup crash in SECMOD_GetModuleSpecList @ __hash_open with SProtector.dll (Safend Protector, Sophos SafeGuard or TrojanDownloader:HTML/Sprotector.A?) ''<br /> thread [/questions/937251 Firefox crashes]
    * gblrofmx.dll likely to be the malware responsible for current crashes

  • Simple report for lock users not actives in last 30 days ?

    Hi, we need code in SE38 simple report for lock all users not actives in last 30 days.
    This sample is good but need check : user its inactive in last 30 days.
    http://www.sap-basis-abap.com/abap019.htm
    Thank you.

    You do not need a report to do this. The instance parameter
    login/password_max_idle_productive
    will do this for you.
    Cheers
    Graham Robbo

  • ABAP report for caluculating the average days between invoice day  &posting

    Hi All,
    i have a requirement where in  i should create a report for caluculating average days between the invoice days and posting days.  By counting the total day in a month for which invoice were generated and counting the days on which payements were recived,i should difference those days and take a average for a month. anybody who is having any idea either interms of code or interms of links please help me.

    Hello,
    See this thread [Calculation Of Days|Calculation Of Days;
    Thanks
    Chandran

  • Create a Report for Demo_Orders (2 Day Plus Application Express Developer )

    Hello,
    I will make a Report for Demo_Orders
    and I have a problem. I made step by step
    1. On the Application home page, click Create Page.
    2. Select the page type Report and click Next.
    3. Select Wizard Report and click Next.
    4. For Page Attributes:
    a. For Page, select 1 Orders.
    b. In Page Title and Region Title, enter Orders.
    c. For Region Template, accept the default. etc.
    From the Available Columns list, press CTRL and move the following
    columns to the Displayed Columns list as shown in Figure 3–2 on page 3-4:
    Problem -> I can not create a Join with the DEMO_CUSTOMERS to display
    the customer name, wizard jump over "Join Conditions". I can not install properties under section "Join Conditions" Why?Please assist.
    Thanks, Ales

    I made this manuali:
    Next, create a join with the DEMO_PRODUCT_INFO table to display the product
    name.
    d. For Show Only Related Tables, select No.
    Then, select a new table.
    e. From the Table/View list, select DEMO_PRODUCT_INFO.
    The columns in the DEMO_PRODUCT_INFO table appear.
    f. From the Available Columns list, select PRODUCT_NAME and move it to the
    Display Columns list.
    g. Click Next.
    6. For Join Conditions:
    a. Under the first Column, select DEMO_ORDER_ITEMS.PRODUCT_ID.
    b. Under the second Column, select DEMO_PRODUCT_INFO.PRODUCT_ID.
    c. Click Next.
    I can not (To add a condition to the DEMO_ORDER_ITEMS report:)
    I have not tab (query definition).
    I have under Region (Report: Order Items) -> this have not tab (Query definition)
    in tutorial is RPT: Order Items ->this have (query definition) in Edit Region
    Please assist.
    Thanks, Ales

  • Reconcillation report for controlling

    My requirement as follows.
    this is a report for developing reconcillation statement for a company.
    i created program as per requirement it is not executing becasuse of  COEP table taking much time for executing.
    any body have reconcillation report with sourcode kindly forward me.
    TECHNICAL SPECIFICATIONS FOR RECONCILIATION REPORT
    SELECTION SCREEN:
    COMPANY CODE:  T001-BUKRS
    FISCAL YEAR         :  BKPF-GJAHR
    PERIOD                :  BKPF-MONAT
    OUTPUT FORMAT:
         PARTICULARS     AMOUNT
    A     TOTAL OF FI P/L ACCOUNTS     
    B     LESS: TOTAL OF FI P/L ACCOUNTS NOT FLOWN TO CO (including VVGK values)     
    C     TOTAL OF FI P/L ACCOUNTS FLOWN TO CO     
    D     TOTAL OF COST VOLUME (MAT+ FEK+MGK+WVK)     
    E     LESS : TOTAL OF RECONCILIATION ITEMS (ITEMS APPEARING ONLY IN CO - FOR E.G. ED,CC ETC)     
    F     (D) – (E)     
         RECONCILIATION -
    ( C ) = ( F )     
    START OF FIELD A
    TABLE : SKB1 (G/L Account Master Table)
    INPUT :  BUKRS (Company Code)
    SAKNR - NUMBER RANGE  4* (G/L Account No.)
    OUTPUT : SAKNR (G/L Account No)
    Result : This step will provide a list of Expenses G/L Accounts
    TABLE : GLT0 (G/L Account Balances table)
    INPUT :  BUKRS (Company Code)
    SAKNR - NUMBER RANGE  4*) (G/L Account No.)
    DRCRK = S (Debit / Credit Indicator)
    RYEAR =  GJAHR (Fiscal year)
    OUTPUT :  HSL0*( * -PERIOD ENTERED IN SELECTION) [G/L Account Balance Amount field in the Table]
    SORT AND SUM  SAKNR WISE WHILE DISPLAYING IN THE REPORT
    Result : This step will provide balances for the list of the  expenses G/L accounts fetched from table SKB1 for the company code, fiscal year and period mentioned in the selection screen
    LIST OF EXPS. G/L ACCOUNTS WITH VALUES AND THEIR TOTAL– LIST A
    TOTAL OF ABOVE LIST = FIELD A
    The List Is To Be Displayed In The Report On Double-Clicking On The Total (Field A)
    END OF FIELD A----
    START OF FIELD B
    TABLE    : SETLEAF (Table for values in a group)
    INPUT     : SETCLASS = 0102 (Code for Cost Element groups)
    SETNAME = FIXED, VARIABLE (Cost Element group names)
    OUTPUT :  VALFROM, VALTO (Cost Element from & to)
    Result : This step will provide a list of cost elements within the cost element groups – Fixed and Variable
    TABLE    : COSP (Cost Accounting postings)
    INPUT     :  GJAHR (Fiscal year)
    KSTAR = VALFROM TO VALTO – SETLEAF (Cost Elements range)
    VRGNG = COIN (CO Business transaction type)
    BEKNZ   = D (Debit / Credit indicator)
    OUTPUT :  KSTAR (Cost Element), WKG0( -PERIOD ENTERED IN SELECTION) [Amount field in the table]
    Result : This step will provide a list of Cost Centre values used for calculating Activity rate and Overheard rates)
    LIST OF COST ELEMENTS WITH VALUES AND THEIR TOTAL – LIST B
    COMPARE LIST A WITH LIST B FIND RECORDS THAT DON’T MATCH
    MAKE A LIST OF UNMATCHED RECORDS (FOUND ONLY IN LIST A) AND THEIR TOTALS – LIST C
    TABLE    : SETLEAF (Table for values in a group)
    INPUT     : SETCLASS = 0101 (Code for Cost Centre groups)
    SETNAME = JL-VVGK (Cost Centre group name)
    OUTPUT :  VALFROM ( COST CENTRE)
    Result : This will provide a list of Cost centers in the JL-VVGK cost element group
    TABLE    : COSP (Cost Accounting Postings)
    INPUT     : OBJNR   = CONCATENATE ‘KSKBX’ TO SETLEAF- VALFROM WITH SPACE, (OBJNR = Object Number)
    GJAHR (Fiscal year)
    VRGNG = COIN (CO Business transaction type)
    OUTPUT :  WKG0( -PERIOD ENTERED IN SELECTION) [Amount field in the table]
    Result : This will provide a list of Cost centers values in the in the JL-VVGK cost element group
    LIST OF VVGK COST CENTRES WITH VALUES AND IT’S TOTAL – LIST D
    ADD LIST C WITH LIST D THE TOTAL OF WHICH IS EQUAL TO FIELD B
    Result : This will provide the costs which are not used to apply Activity Rates and Overhead Rates on the products
    The Lists (List C & D) are To Be Displayed In The Report On Double-Clicking On The Total (Field B)
    END OF FIELD B----
    START OF FIELD C
    SUBTRACT FIELD B FROM FIELD A WHICH IS EQUAL TO FIELD C (NO LINE ITEMS REQUIRED)
    END OF FIELD C----
    START OF FIELD D
    TABLE    :  AUFK (Header table for Orders)
    INPUT     :  KOKRS = KBX (Controlling Area)
    BUKRS = SELECTION SCREEN (Company Code)
    AUART = RM01 (Order Type)
    OUTPUT :   OBJNR (Object Number)
    Result : This will provide a list Product Cost Collector Numbers
    MAT :
    TABLE    :  COSP (Cost Accounting Postings)
    INPUT     :  OBJNR-AUFK (Object number fetched from AUFK table)
    GJAHR = SELECTION SCREEN (fiscal year)
    WRTTP = 4 (Value type for Actuals)
    KSTAR = 41261 TO 41265 (Cost elements range)
    BEKNZ = D (Debit / Credit indicator)
    OUTPUT :  KSTAR (Cost Element), WTG00X (Amount field in the table), OBJNR –CONCATENATE (Object Number)
    Result : This will provide the MAT costs applied to the products through Product Cost Collectors - MATLIST
    FEK :
    TABLE    :  COEP (Cost Accounting Postings)
    INPUT     :  KOKRS = KBX (Controlling Area)
    PERIO = SELECTION SCREEN (Period)
    OBJNR-AUFK (Object Number fetched from AUFK table)
    GJAHR = SELECTION SCREEN (Fiscal year)
    KSTAR = 430001 TO 430010 (Cost Elements range)
    BUKRS = SELECTION SCREEN (Company Code)
    OUTPUT :  KSTAR (Cost Element), WTGBTR (Amount field), OBJNR –CONCATENATE (Object number)
    Result : This will provide the FEK costs applied to the products through Product Cost Collectors - FEKLIST
    MGK :
    TABLE    :  COEP (Cost Accounting Postings)
    INPUT     :  KOKRS = KBX (Controlling Area)
    PERIO = SELECTION SCREEN (Period)
    OBJNR-AUFK (Object Number fetched from AUFK table)
    GJAHR = SELECTION SCREEN (Fiscal year)
    KSTAR = 410001 (Cost Element)
    BUKRS = SELECTION SCREEN (Company Code)
    OUTPUT :  KSTAR (Cost Element), WTGBTR (Amount field), OBJNR – CONCATENATE (Object Number)
    Result : This will provide the MGK costs applied to the products through Product Cost Collectors - MGKLIST
    WVK :
    TABLE    :  COEP (Cost Accounting postings)
    INPUT     :  KOKRS = KBX (Controlling Area)
    PERIO = SELECTION SCREEN (Period)
    OBJNR-AUFK (Object Number fetched from AUFK table)
    GJAHR = SELECTION SCREEN (Fiscal year)
    KSTAR = 410015 (Cost Element)
    BUKRS = SELECTION SCREEN (Company Code)
    OUTPUT :  KSTAR (Cost Element), WTGBTR (Amount field), OBJNR – CONCATENATE (Object Number)
    Result : This will provide the WVK costs applied to the products through Product Cost Collectors - WVKLIST
    TOTAL OF MAT – WTG00X, FEK - WTGBTR, MGK - WTGBTR, WVK – WTGBTR = FIELD D
    The Lists  are (MATLIST, FEKLIST, MGKLIST, WVKLIST) To Be Displayed categorically In The Report On Double-Clicking On The Total (Field D)
    END OF FIELD D----
    START OF FIELD E
    TABLE    :  COSS (Cost Accounting Postings)
    INPUT     :  KOKRS = KBX (Controlling Area)
    GJAHR = SELECTION SCREEN (Fiscal year)
    WRTTP = 4 (Value type for Actuals)
    KSTAR = 44951 TO 44958 (Cost Elements range)
    VRGNG = COIN, RKU1, RKU3, (CO Business transaction type)
    BEKNZ = D (Debit / Credit Indicator)
    OUTPUT :  KSTAR (Cost Element), WTG00X (Amount field)
    Result : This will provide the costs posted only through Controlling (not FI, MM, SD, PP) which are used to calculate Activity rates and Overhead rates applied to the product – EDCCLIST
    The EDCCLIST Is To Be Displayed In The Report On Double-Clicking On The Total (Field E)
    END OF FIELD E----
    START OF FIELD F
    SUBTRACT FIELD D FROM FIELD E WHICH IS EQUAL TO FIELD F (NO LINE ITEMS REQUIRED)
    END OF FIELD F----
    I have return code like as follows.
    *& Report  ZCO_RECONCILIATION_REPORT                                   *
    REPORT  zco_reconciliation_report  NO STANDARD PAGE HEADING
                                    LINE-COUNT 60 LINE-SIZE 180.
    TABLES : t001.
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    PARAMETERS : p_bukrs  LIKE t001-bukrs MEMORY ID buk ,
                 p_year   LIKE glt0-ryear MEMORY ID gjh ,
                 p_period LIKE bkpf-monat .
    SELECTION-SCREEN END OF BLOCK b1 .
    DATA : BEGIN OF it_skb1 OCCURS 0,
           saknr LIKE skb1-saknr ,
           END OF it_skb1.
    DATA : BEGIN OF it_glt0 OCCURS 0,
           racct LIKE glt0-racct ,
           hsl01 LIKE glt0-hsl01,
           END OF it_glt0.
    DATA : BEGIN OF it_glt0_sum OCCURS 0,
           racct LIKE glt0-racct ,
           hsl01 LIKE glt0-hsl01,
           END OF it_glt0_sum.
    DATA : BEGIN OF it_setb1 OCCURS 0,
           valfrom LIKE cosp-kstar,                " setleaf-valfrom,
           valto   LIKE setleaf-valto,
           END OF it_setb1.
    DATA : BEGIN OF it_setb2 OCCURS 0,
           valfrom LIKE setleaf-valfrom,
           objnr LIKE coss-objnr,
           END OF it_setb2.
    DATA : BEGIN OF it_setd OCCURS 0,
           valfrom LIKE setleaf-valfrom,
           objnr LIKE coss-objnr,
           END OF it_setd.
    DATA : BEGIN OF it_sete OCCURS 0,
           valfrom LIKE setleaf-valfrom,
           objnr LIKE coss-objnr,
           END OF it_sete.
    DATA : BEGIN OF it_cospb OCCURS 0,
           kstar LIKE cosp-kstar,
           wkg001 LIKE cosp-wkg001,
           END OF it_cospb.
    DATA : BEGIN OF it_cossb OCCURS 0,
           objnr LIKE coss-objnr,
           kstar LIKE coss-kstar,
           wkg001 LIKE coss-wkg001,
           END OF it_cossb.
    DATA : BEGIN OF it_bkpf OCCURS 0,
           belnr LIKE bkpf-belnr,
           END OF it_bkpf.
    DATA : BEGIN OF it_cossd1 OCCURS 0,
          objnr LIKE coss-objnr,
           belnr  LIKE bseg-belnr,
           wkg001 LIKE coss-wkg001,
           END OF it_cossd1.
    DATA : BEGIN OF it_cossd2 OCCURS 0,
           objnr LIKE coss-objnr,
           kstar LIKE coss-kstar,
           wkg001 LIKE coss-wkg001,
           END OF it_cossd2.
    DATA : BEGIN OF it_cosse OCCURS 0,
           objnr LIKE coss-objnr,
           kstar LIKE coss-kstar,
           wkg001 LIKE coss-wkg001,
           END OF it_cosse.
    dATA : itab_period TYPE string .
    DATA : BEGIN OF it_cospb_sum OCCURS 0,
           kstar LIKE cosp-kstar,
           wkg001 LIKE cosp-wkg001,
           END OF it_cospb_sum.
    DATA : BEGIN OF it_cossb_sum OCCURS 0,
           kstar LIKE cosp-kstar,
           wkg001 LIKE cosp-wkg001,
           END OF it_cossb_sum.
    DATA : BEGIN OF it_cossd1_sum OCCURS 0,
           kstar  LIKE cosp-kstar,
           wkg001 LIKE cosp-wkg001,
           END OF it_cossd1_sum.
    DATA : BEGIN OF it_cossd2_sum OCCURS 0,
           kstar LIKE cosp-kstar,
           wkg001 LIKE cosp-wkg001,
           END OF it_cossd2_sum.
    DATA : BEGIN OF it_cosse_sum OCCURS 0,
           kstar LIKE cosp-kstar,
           wkg001 LIKE cosp-wkg001,
           END OF it_cosse_sum.
    DATA : BEGIN OF it_unmatch OCCURS 0,
           kstar LIKE cosp-kstar,
           wkg001 LIKE cosp-wkg001,
           END OF it_unmatch.
    DATA : BEGIN OF it_merge OCCURS 0,
           kstar LIKE cosp-kstar,
           wkg001 LIKE cosp-wkg001,
           END OF it_merge.
    DATA : BEGIN OF it_merged OCCURS 0,
           kstar LIKE cosp-kstar,
           wkg001 LIKE cosp-wkg001,
           END OF it_merged.
    DATA : BEGIN OF it_field OCCURS 0,
           fielda TYPE p DECIMALS 2,
           fieldb TYPE p DECIMALS 2,
           fieldc TYPE p DECIMALS 2,
           fieldd TYPE p DECIMALS 2,
           fielde TYPE p DECIMALS 2,
           fieldf TYPE p DECIMALS 2,
           END OF it_field.
    DATA : v_fielda TYPE p DECIMALS 2,
           v_fieldb TYPE p DECIMALS 2,
          v_fieldc TYPE p DECIMALS 2,
           v_fieldd TYPE p DECIMALS 2,
           v_fielde TYPE p DECIMALS 2,
          v_fieldf TYPE p DECIMALS 2,
           v_objnr LIKE coss-objnr,
          v_kstar LIKE cosp-kstar,
           v_field(1).
          yr(4),
          mon(2),
          day(2),
          v_date LIKE sy-datum,
          v_date1 LIKE sy-datum,
          flag1 TYPE c ,
          flag2 TYPE c ,
          flag3 TYPE c ,
          flag4 TYPE c,
          flag5 TYPE c.
    data : begin of iaufk occurs 0 ,
           objnr like aufk-objnr,
           end of iaufk .
    DATA : BEGIN OF IFEK OCCURS 0 ,
           KSTAR LIKE COEP-KSTAR,
           WTGBTR LIKE COEP-WTGBTR,
           OBJNR  LIKE COEP-OBJNR,
           END OF IFEK.
    DATA : BEGIN OF IMAT OCCURS 0 ,
           KSTAR LIKE COSP-KSTAR,
           WTG001 LIKE COSP-WTG001,
           WTG002 LIKE COSP-WTG002,
           WTG003 LIKE COSP-WTG003,
           WTG004 LIKE COSP-WTG004,
           WTG005 LIKE COSP-WTG005,
           WTG006 LIKE COSP-WTG006,
           WTG007 LIKE COSP-WTG007,
           WTG008 LIKE COSP-WTG008,
           WTG009 LIKE COSP-WTG009,
           WTG010 LIKE COSP-WTG010,
           WTG011 LIKE COSP-WTG011,
           WTG012 LIKE COSP-WTG012,
           WTG013 LIKE COSP-WTG013,
           WTG014 LIKE COSP-WTG014,
           WTG015 LIKE COSP-WTG015,
           WTG016 LIKE COSP-WTG016,
           OBJNR LIKE COSP-OBJNR,
           END OF IMAT.
    data : begin of imgk occurs 0 ,
            kstar like coep-kstar,
            wtgbtr like coep-wtgbtr,
            objnr   like coep-objnr,
            end of imgk.
    data : begin of iwvk occurs 0 ,
            kstar  like coep-kstar,
            wtgbtr like coep-wtgbtr,
            objnr  like coep-objnr,
            end of iwvk.
    AT SELECTION-SCREEN.
      PERFORM validity.
    START-OF-SELECTION .
      PERFORM get_period.
      PERFORM fill_skb1.
      PERFORM get_aufk .
      perform get_COEP .
      PERFORM GET_MGK.
      perform get_wvk.
      PERFORM fill_it_glt0.
      PERFORM fill_it_glt0_sum.
      PERFORM fill_set.
      PERFORM fill_cospb_cossb.
      PERFORM sum_cospb_cossb.
      PERFORM fill_cossd1_cossd2.
      PERFORM sum_cossd1_cossd2.
      PERFORM fill_cosse.
      PERFORM sum_cosse.
      PERFORM fill_it_unmatch.
      PERFORM fill_it_merge.
      PERFORM fill_it_merged.
      PERFORM fill_it_fieldb.
      PERFORM fill_it_fieldc.
      PERFORM fill_it_fieldd.
      PERFORM fill_it_fieldf.
      PERFORM display.
    PERFORM fill_it_fielde.
    TOP-OF-PAGE.
      PERFORM header.
    AT LINE-SELECTION.
      PERFORM list_display.
    *&      Form  VALIDITY
          text
    -->  p1        text
    <--  p2        text
    FORM validity .
      SELECT SINGLE bukrs FROM t001 INTO t001-bukrs WHERE bukrs = p_bukrs.
      IF sy-subrc NE 0.
      ENDIF.
    ENDFORM.                    " VALIDITY
    *&      Form  FILL_SKB1
          text
    -->  p1        text
    <--  p2        text
    FORM fill_skb1 .
      SELECT saknr FROM skb1 INTO TABLE it_skb1
               WHERE bukrs = p_bukrs
               AND   saknr LIKE '000004%' .
      SORT it_skb1 BY saknr.
    ENDFORM.                                                    " FILL_SKB1
    *&      Form  FILL_IT_GLT0
          text
    -->  p1        text
    <--  p2        text
    FORM fill_it_glt0 .
      CASE p_period.
        WHEN '1'  OR '01'.
          SELECT racct hsl01
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '2' .
          SELECT racct hsl02
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '3' .
          SELECT racct hsl03
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '4' .
          SELECT racct hsl04
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '5' .
          SELECT racct hsl05
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '6' .
          SELECT racct hsl06
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '7' .
          SELECT racct hsl07
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '8' .
          SELECT racct hsl08
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '9' .
          SELECT racct hsl09
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '10' .
          SELECT racct hsl10
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '11' .
          SELECT racct hsl11
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '12' .
          SELECT racct hsl12
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '13' .
          SELECT racct hsl13
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '14' .
          SELECT racct hsl14
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '15' .
          SELECT racct hsl15
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
        WHEN '16' .
          SELECT racct hsl16
                 FROM glt0
                 INTO TABLE it_glt0
                 FOR ALL ENTRIES IN it_skb1
                 WHERE racct = it_skb1-saknr
                   AND   bukrs = p_bukrs
                   AND   drcrk = 'S'
                   AND   ryear = p_year.
                  AND   rtcur = 'INR' .
      ENDCASE.
      SORT it_glt0 BY racct.
    ENDFORM.                    " FILL_IT_GLT0
    *&      Form  FILL_IT_GLT0_SUM
          text
    -->  p1        text
    <--  p2        text
    FORM fill_it_glt0_sum .
      SORT it_glt0 BY racct.
      LOOP AT it_glt0.
        it_glt0_sum-racct = it_glt0-racct.
        AT END OF racct.
          SUM.
          it_glt0_sum-hsl01 = it_glt0-hsl01.
          APPEND it_glt0_sum.
          CLEAR it_glt0_sum.
        ENDAT.
      ENDLOOP.
      LOOP AT it_glt0_sum.
        AT LAST.
          SUM.
         it_fielda-fielda = it_glt0_SUM-hsl01.
          it_field-fielda = it_glt0_sum-hsl01.
          APPEND it_field.
        ENDAT.
      ENDLOOP.
    ENDFORM.                    " FILL_IT_GLT0_SUM
    *&      Form  fill_SET
          text
    -->  p1        text
    <--  p2        text
    FORM fill_set .
      SELECT valfrom valto FROM setleaf INTO TABLE it_setb1
                          WHERE setclass = '0102' AND
                                setname IN ('FIXED', 'VARIABLE') .
      SORT it_setb1 BY valfrom .
      SELECT valfrom FROM setleaf INTO CORRESPONDING FIELDS OF TABLE it_setb2
                         WHERE setclass = '0101' AND
                               setname = 'JL-VVGK'.
      SORT it_setb2 BY valfrom .
      SELECT valfrom FROM setleaf INTO CORRESPONDING FIELDS OF TABLE it_setd
                          WHERE setclass = '0102' AND
                                setname IN ('FBK', 'MAT').
      SORT it_setd BY valfrom .
      SELECT valfrom FROM setleaf INTO CORRESPONDING FIELDS OF TABLE it_sete
                          WHERE setclass = '0102' AND
                                setname = 'CO-RECON'.
      SORT it_sete BY valfrom .
      LOOP AT it_sete.
        CONCATENATE 'KSKBX' it_sete-valfrom INTO v_objnr SEPARATED BY space.
        it_sete-objnr = v_objnr.
        MODIFY it_sete.
      ENDLOOP.
      SORT it_sete BY valfrom .
      LOOP AT it_setb2.
        CONCATENATE 'KSKBX' it_setb2-valfrom INTO v_objnr SEPARATED BY space.
        it_setb2-objnr = v_objnr.
        MODIFY it_setb2.
      ENDLOOP.
      LOOP AT it_setd.
        CONCATENATE 'KSKBX' it_setd-valfrom INTO v_objnr SEPARATED BY space.
        it_setd-objnr = v_objnr.
        MODIFY it_setd.
      ENDLOOP.
    ENDFORM.                    " fill_SET
    *&      Form  fill_cospb_cossb
          text
    -->  p1        text
    <--  p2        text
    FORM fill_cospb_cossb .
      CASE p_period.
        WHEN '1' .
          SELECT kstar wkg001 FROM cosp INTO TABLE it_cospb
          FOR ALL ENTRIES IN it_setb1
                       WHERE kstar = it_setb1-valfrom
                       AND   gjahr = p_year
                      AND     vrgng = 'COIN'
                      AND     beknz = 'S'.
          SELECT objnr kstar wkg001 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '2' .
          SELECT kstar wkg002 FROM cosp INTO TABLE it_cospb
           FOR ALL ENTRIES IN it_setb1
                        WHERE kstar = it_setb1-valfrom
                        AND   gjahr = p_year
                       AND     vrgng = 'COIN'
                       AND     beknz = 'S'.
          SELECT objnr kstar wkg002 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '3' .
          SELECT kstar wkg003 FROM cosp INTO TABLE it_cospb
          FOR ALL ENTRIES IN it_setb1
                       WHERE kstar = it_setb1-valfrom
                       AND   gjahr = p_year
                      AND     vrgng = 'COIN'
                      AND     beknz = 'S'.
          SELECT objnr kstar wkg003 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '4' .
          SELECT kstar wkg004 FROM cosp INTO TABLE it_cospb
          FOR ALL ENTRIES IN it_setb1
                       WHERE kstar = it_setb1-valfrom
                       AND   gjahr = p_year
                      AND     vrgng = 'COIN'
                      AND     beknz = 'S'.
          SELECT objnr kstar wkg004 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '5' .
          SELECT kstar wkg005 FROM cosp INTO TABLE it_cospb
          FOR ALL ENTRIES IN it_setb1
                       WHERE kstar = it_setb1-valfrom
                       AND   gjahr = p_year
                      AND     vrgng = 'COIN'
                      AND     beknz = 'S'.
          SELECT objnr kstar wkg005 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '6' .
          SELECT kstar wkg006 FROM cosp INTO TABLE it_cospb
            FOR ALL ENTRIES IN it_setb1
                         WHERE kstar = it_setb1-valfrom
                         AND   gjahr = p_year
                        AND     vrgng = 'COIN'
                        AND     beknz = 'S'.
          SELECT objnr kstar wkg006 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '7' .
          SELECT kstar wkg007 FROM cosp INTO TABLE it_cospb
           FOR ALL ENTRIES IN it_setb1
                        WHERE kstar = it_setb1-valfrom
                        AND   gjahr = p_year
                       AND     vrgng = 'COIN'
                       AND     beknz = 'S'.
          SELECT objnr kstar wkg007 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '8' .
          SELECT kstar wkg008 FROM cosp INTO TABLE it_cospb
           FOR ALL ENTRIES IN it_setb1
                        WHERE kstar = it_setb1-valfrom
                        AND   gjahr = p_year
                       AND     vrgng = 'COIN'
                       AND     beknz = 'S'.
          SELECT objnr kstar wkg008 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '9' .
          SELECT kstar wkg009 FROM cosp INTO TABLE it_cospb
          FOR ALL ENTRIES IN it_setb1
                       WHERE kstar = it_setb1-valfrom
                       AND   gjahr = p_year
                      AND     vrgng = 'COIN'
                      AND     beknz = 'S'.
          SELECT objnr kstar wkg009 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '10' .
          SELECT kstar wkg010 FROM cosp INTO TABLE it_cospb
           FOR ALL ENTRIES IN it_setb1
                        WHERE kstar = it_setb1-valfrom
                        AND   gjahr = p_year
                       AND     vrgng = 'COIN'
                       AND     beknz = 'S'.
          SELECT objnr kstar wkg010 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '11' .
          SELECT kstar wkg011 FROM cosp INTO TABLE it_cospb
          FOR ALL ENTRIES IN it_setb1
                       WHERE kstar = it_setb1-valfrom
                       AND   gjahr = p_year
                      AND     vrgng = 'COIN'
                      AND     beknz = 'S'.
          SELECT objnr kstar wkg011 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '12' .
          SELECT kstar wkg012 FROM cosp INTO TABLE it_cospb
           FOR ALL ENTRIES IN it_setb1
                        WHERE kstar = it_setb1-valfrom
                        AND   gjahr = p_year
                       AND     vrgng = 'COIN'
                       AND     beknz = 'S'.
          SELECT objnr kstar wkg012 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '13' .
          SELECT kstar wkg013 FROM cosp INTO TABLE it_cospb
          FOR ALL ENTRIES IN it_setb1
                       WHERE kstar = it_setb1-valfrom
                       AND   gjahr = p_year
                      AND     vrgng = 'COIN'
                      AND     beknz = 'S'.
          SELECT objnr kstar wkg013 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '14' .
          SELECT kstar wkg014 FROM cosp INTO TABLE it_cospb
         FOR ALL ENTRIES IN it_setb1
                      WHERE kstar = it_setb1-valfrom
                      AND   gjahr = p_year
                     AND     vrgng = 'COIN'
                     AND     beknz = 'S'.
          SELECT objnr kstar wkg014 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '15' .
          SELECT kstar wkg015 FROM cosp INTO TABLE it_cospb
          FOR ALL ENTRIES IN it_setb1
                       WHERE kstar = it_setb1-valfrom
                       AND   gjahr = p_year
                      AND     vrgng = 'COIN'
                      AND     beknz = 'S'.
          SELECT objnr kstar wkg015 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
        WHEN '16' .
          SELECT kstar wkg016 FROM cosp INTO TABLE it_cospb
           FOR ALL ENTRIES IN it_setb1
                        WHERE kstar = it_setb1-valfrom
                        AND   gjahr = p_year
                       AND     vrgng = 'COIN'
                       AND     beknz = 'S'.
          SELECT objnr kstar wkg016 FROM cosp
                           INTO TABLE it_cossb
                           FOR ALL ENTRIES IN it_setb2
                            WHERE objnr = it_setb2-objnr
                             AND  vrgng  IN ('COIN','RKIV')
                            AND   gjahr = p_year.
      ENDCASE.
      SORT it_cospb BY kstar.
      SORT it_cossb BY kstar.
    ENDFORM.                    " fill_cospb_cossb
    *&      Form  SUM_COSPB_COSSB
          text
    -->  p1        text
    <--  p2        text
    FORM sum_cospb_cossb .
      LOOP AT it_cospb.
        it_cospb_sum-kstar = it_cospb-kstar.
        AT END OF kstar.
          SUM.
          it_cospb_sum-wkg001 = it_cospb-wkg001.
          APPEND it_cospb_sum.
          CLEAR it_cospb_sum.
        ENDAT.
      ENDLOOP.
      LOOP AT it_cossb.
        it_cossb_sum-kstar = it_cossb-kstar.
        AT END OF kstar.
          SUM.
          it_cossb_sum-wkg001 = it_cossb-wkg001.
          APPEND it_cossb_sum.
          CLEAR it_cossb_sum.
        ENDAT.
      ENDLOOP.
      SORT it_cospb_sum BY kstar.
      SORT it_cossb_sum BY kstar.
    ENDFORM.                    " SUM_COSPB_COSSB
    *&      Form  fill_it_unmatch
          text
    -->  p1        text
    <--  p2        text
    FORM fill_it_unmatch .
      LOOP AT it_glt0_sum.
        READ TABLE it_cospb_sum WITH KEY kstar = it_glt0_sum-racct.
        IF sy-subrc NE 0.
          it_unmatch-kstar = it_glt0_sum-racct.
          it_unmatch-wkg001 = it_glt0_sum-hsl01.
          APPEND it_unmatch.
          CLEAR it_unmatch.
        ENDIF.
      ENDLOOP.
    ENDFORM.                    " fill_it_unmatch
    *&      Form  fill_it_merge
          text
    -->  p1        text
    <--  p2        text
    ----

    We can't really tell without seeing the code. Would you post it please? (Just the portions that are overly slow.)
    Rob

  • Asset Initial Upload & reporting for uploaded value

    Hi SAP Gurus,
    I have uploaded the asset data using AS91 and also updated the GL values in OASV.
    The initial upload seems to be all correct in this manner since TB is tallying.
    However when i view the FA reports for the date of upload i am finding discrepancies in the Accumulated Depreciation values as shown in the report & the values uplaoded in AS91.
    Let me explain further, say for eg. the Cost of the asset was Rs. 10,000/- and Accumulated Depreciation as per legacy (as on date of upload) is Rs. 1858/-. However the actual Accumulated Depreciation should have been Rs. 1863 --- the diffference in legacy data was due to runding offs in previous months.
    Now when i uploaded the intial data i used the legacy figures i.e. Rs. 10,000 & Rs. 1858 since trial balance had to be tallied.
    However when i run reports in FA for the initial upload date, i find that the reports are showing the Acc. Depn (plan values) as Rs. 1863 & not the value that i have uploaded.
    What possibly is the reason for this ?
    Can anyone tell me any report to view only the uploaded information ?
    Points will be awarded for useful answers.
    Thanks & Regards
    Piyush Kothari

    Hi,
    There is an error appearing as below:
    "Report date 31.08.2007 is invalid for this report.
    Reports of this kind can only be run for the last day of the period in which the last depreciation posting run took place (or in a subsequent period) in the relevant fiscal year.
    It is not possible to run a report on posted depreciation in a fiscal year in which no depreciation posting run has yet taken place."
    My legacy upload date was 31.08.2007.
    When i run for 31.12.2007 (last period in the fiscal year for which dep. run has taken place) then the results are ok.
    But still i would like to assign some points to you since this would have helped indeed.
    Thanks
    Piyush Kothari

  • Vendor ageing report for down payment bucketwise

    Hi
    I have paid many downpayment to various vendors. Now i want the ageing report for the same (i.e. bucket wise i.e. 0-30 days, 31-60 days and so on).
    This i am getting for vendor invoices in TCode: S_ALR_87012085 (Vendor payment history with OI sorted list).
    Please let me know if the bucketwise report is possible for the downpayment too.

    Hi,
    Vendor ageing for down payments as well as invoice i use to see from T.code FBL1N by creating layouts.
    Choose Arreas after net due date from layout and for that column you can apply a rule that from 0 to Lessthan or equal to 30.
    Like that you can create the layouts. In FBL1N you can give this layout (down) so information come in that format.
    The one disadvantage is that you have to select manually the layouts and you can see only one ageing information at a time.
    Regards,
    Sankar

  • V V URGENT Report  for Vendor Aging

    Hi ABAP Gurus,
    I have to develop a report for VENDOR AGING. My requirement is i have to post an invoice. From Payment terms i have to get Dependent on posting date. Let us assume if payment term is 100 by adding posting date + payment term (100) i have to get due date. I'am giving I/P terms as Company code & Period. If i enter company code i have to get O/P as vendor name(lfa1-name1),vendor no(bsik-lifnr),bill no(bsik-xblnr),bill date(bsik-bldat) i.e., baseline date,amount(bsik-dmbtr) and duedate (this i have to pick from payment terms). For period i have to get O/P as 1st week bucket,2nd week bucket,3rd week bucket,4th week bucket and beyond. For this you have to take the difference b/n due date and that buckets based on this result you have to put that amount of rupees whether it is going to pay in 1st week r 2nd r 3rd r 4th or beyond this. If that due date is less than or equal to 1st week it has to come and fall in 1st week. THIS IS MY REQUIREMENT.
    For this i'am using tables BSIK,LFA1.
    Can any body send me the code on this. For this my delivery date is on monday.
    Please help me on this it's very Urgent...
    I will REWARD you the points definitely for those who help me on this.
    my mail id : [email protected]
    waiting for your VALUABLE REPLIES. Please intimate me if you send it to my mail.
    Thanks and Regards,
    Sundeep.

    Hi
    See the report code and modify as per your requirements
    REPORT  zfi_vendor_ageing
            NO STANDARD PAGE HEADING
            LINE-COUNT 58
           line-size 168
            MESSAGE-ID zh_msg.
           D A T A B A S E  T A B L E S   D E C L A R A T I O N
    TABLES: lfa1,           " Vendor Master (General)
            t001,           " Company Codes
            rfpdo.
         I N T E R N A L  T A B L E S  D E C L A R A T I O N S           *
    Internal Table for Vendor Open Items Data
    DATA: BEGIN OF int_bsik OCCURS 0,
            lifnr   LIKE bsik-lifnr,         " Vendor Number
            name1   LIKE lfa1-name1,         " Vendor Name
            shkzg   LIKE bsik-shkzg,         " Dr/Cr Indicator
            belnr   LIKE bsik-belnr,         " Document Number
            xblnr   LIKE bsik-xblnr,         " Ref Doc No
            blart   LIKE bsik-blart,         " Document Type
            zfbdt   LIKE bsik-zfbdt,         " Base Line Date
            zbd1t   LIKE bsik-zbd1t,         " Due date1
            zbd2t   LIKE bsik-zbd2t,         " Due Date2
            zbd3t   LIKE bsik-zbd3t,         " Due Date3
            waers   LIKE bsik-waers,         " Currency
            dmbtr   LIKE bsik-dmbtr,         " Amount in Local Curr
          END OF int_bsik.
    Internal Table for Amounts Sum Up Data
    DATA: BEGIN OF int_final OCCURS 0,
            lifnr   LIKE bsik-lifnr,         " Vendor Number
            name1   LIKE lfa1-name1,         " Vendor Name
            total1  LIKE bsik-dmbtr,         " Amount in Local Curr
            total2  LIKE bsik-dmbtr,         " Amount in Local Curr
            total3  LIKE bsik-dmbtr,         " Amount in Local Curr
            total4  LIKE bsik-dmbtr,         " Amount in Local Curr
            total5  LIKE bsik-dmbtr,         " Amount in Local Curr
            total6  LIKE bsik-dmbtr,         " Amount in Local Curr
            total   LIKE bsik-dmbtr,         " Amount in Local Curr
          END OF int_final.
               D A T A  D E C L A R A T I O N S
    DATA : v_flag,                          " Flag
           v_gtotal1     LIKE bsik-dmbtr,   " Amount Totals
           v_gtotal2     LIKE bsik-dmbtr,   " Amount Totals
           v_gtotal3     LIKE bsik-dmbtr,   " Amount Totals
           v_gtotal4     LIKE bsik-dmbtr,   " Amount Totals
           v_gtotal5     LIKE bsik-dmbtr,   " Amount Totals
           v_gtotal6     LIKE bsik-dmbtr,   " Amount Totals
           v_gtotal      LIKE bsik-dmbtr,   " Amount Totals
           v_subtotal1   LIKE bsik-dmbtr,   " Amount Totals
           v_subtotal2   LIKE bsik-dmbtr,   " Amount Totals
           v_subtotal3   LIKE bsik-dmbtr,   " Amount Totals
           v_subtotal4   LIKE bsik-dmbtr,   " Amount Totals
           v_subtotal5   LIKE bsik-dmbtr,   " Amount Totals
           v_subtotal6   LIKE bsik-dmbtr,   " Amount Totals
           v_subtotal    LIKE bsik-dmbtr,   " Amount Totals
           v_date        LIKE bsik-zfbdt,   " Due Date
           v_tage1(4),                      " Age 30 days
           v_tage2(4),                      " Age 60 days
           v_tage3(4),                      " Age 90 days
           v_fir(15),                       " Column Text1
           v_sec(15),                       " Column Text2
           v_thir(15),                      " Column Text3
           v_four(17),                      " Column Text4
           v_fidd(4),                       " Days field1
           v_sedd(4),                       " Days field2
           v_thdd(4),                       " Days field3
           v_fodd(4),                       " Days field4
           v_str  TYPE  SY-LISEL,           " String
           v_str1(11),                      " String
           v_tage(3),                       " String
           v_date1(10).                     " Date field
         R A N G E   D E C L A R A T I O N S
    RANGES: r_date1 FOR bsik-zfbdt,      " Date Range 1
            r_date2 FOR bsik-zfbdt,      " Date Range 2
            r_date3 FOR bsik-zfbdt,      " Date Range 3
            r_date4 FOR bsik-zfbdt.      " Date Range 4
             S E L E C T I O N  S C R E E N                      *
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    SELECT-OPTIONS: s_lifnr FOR lfa1-lifnr. "Vendor account
    PARAMETERS:     p_bukrs LIKE t001-bukrs. "Co. Code
    SELECTION-SCREEN END OF BLOCK b1.
    SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
    PARAMETERS:   p_allgst LIKE rfpdo-allgstid OBLIGATORY DEFAULT sy-datum.
    "Open items at key date
    SELECTION-SCREEN END OF BLOCK b2.
    SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.
    PARAMETERS: p_tage1 LIKE rfpdo1-allgfael DEFAULT '30',
                p_tage2 LIKE rfpdo1-allgfael DEFAULT '60',
                p_tage3 LIKE rfpdo1-allgfael DEFAULT '90',
                p_tage4 LIKE rfpdo1-allgfael DEFAULT '120'.
    SELECTION-SCREEN END OF BLOCK b3.
                  A T  S E L E C T I O N  S C R E E N                   *
    AT SELECTION-SCREEN.
    Validate the screen fields
      PERFORM validate_flds.
                   S T A R T  O F  S E L E C T I O N                    *
    START-OF-SELECTION.
    Fetch main data
      PERFORM fetch_data.
                           T O P  O F  P A G E
    Header
    TOP-OF-PAGE.
      PERFORM header.
                           E N D  O F  P A G E
    Footer
    END-OF-PAGE.
      ULINE.
       T O P  O F  P A G E  D U R I N G  L I N E  S E L E C T I O N     *
    Top of Page in Secondary List
    TOP-OF-PAGE DURING LINE-SELECTION.
      PERFORM header1.
                  A T  L I N E  S E L E C T I O N                    *
    AT LINE-SELECTION.
    Perform Line Selections
      PERFORM line_selection.
                     E N D  O F  S E L E C T I O N
    END-OF-SELECTION.
    List generation
      PERFORM basic_list.
    *&      Form  validate_flds
    Validation of Selection Screen fields
    FORM validate_flds .
    Validate Vendor Code
      CLEAR lfa1-lifnr.
      SELECT lifnr UP TO 1 ROWS
          INTO lfa1-lifnr
          FROM lfa1
          WHERE lifnr IN s_lifnr AND
                spras = sy-langu.
      ENDSELECT.
      IF sy-subrc <> 0.
        MESSAGE e000 WITH 'Invalid Vendor Code range'(023).
      ENDIF.
    Validate Company Code
      CLEAR t001-bukrs.
      SELECT bukrs  UP TO 1 ROWS
          INTO t001-bukrs
          FROM t001
          WHERE bukrs =  p_bukrs AND
                spras = sy-langu.
      ENDSELECT.
      IF sy-subrc <> 0.
        MESSAGE e021.      " Invalid Company Code range
      ENDIF.
      IF ( p_tage1 > p_tage2 ) OR ( p_tage1 > p_tage3 ) OR
          ( p_tage1 > p_tage4 ).
        MESSAGE e999 WITH 'Column 1 greater'(004)
                    'than Column# 2 or 3 or 4'(005).
      ENDIF.
    *column 2
      IF ( p_tage2 > p_tage3 ) OR ( p_tage1 > p_tage4 ).
        MESSAGE e999 WITH 'Column 2 greater'(006)
                    'than Column# 3 or 4'(007).
      ENDIF.
    *column3
      IF ( p_tage3 > p_tage4 ).
        MESSAGE e999 WITH 'Column 3 greater'(008)
                    'than Column#4'(009).
      ENDIF.
    ENDFORM.                    " validate_flds
    *&      Form  fetch_data
    Fetching Data from Database Tables
    FORM fetch_data .
    Date Range Population
      r_date1-sign   = 'I'.
      r_date1-option = 'BT'.
      r_date1-low    = p_allgst.
      r_date1-high    = r_date1-low + p_tage1.
      APPEND r_date1.
      r_date2-sign   = 'I'.
      r_date2-option = 'BT'.
      r_date2-low    =  r_date1-high + 1.
      r_date2-high    = r_date1-low + p_tage2.
      APPEND r_date2.
      r_date3-sign   = 'I'.
      r_date3-option = 'BT'.
      r_date3-low    = r_date2-high + 1.
      r_date3-high    = r_date1-low + p_tage3.
      APPEND r_date3.
      r_date4-sign   = 'I'.
      r_date4-option = 'BT'.
      r_date4-low    = r_date3-high + 1.
      r_date4-high    = r_date1-low + p_tage4.
      APPEND r_date4.
    Select the Vendor Open Items data from BSIK
      SELECT l~lifnr
             l1~name1
             b~waers
             b~dmbtr
             b~zfbdt
             b~zbd1t
             b~zbd2t
             b~zbd3t
             b~belnr
             b~xblnr
             b~shkzg
             b~blart
       INTO CORRESPONDING FIELDS OF TABLE int_bsik
       FROM lfb1 AS l INNER JOIN lfa1 AS l1
                    ON llifnr  = l1lifnr
           INNER JOIN   bsik AS b
             ON llifnr  = blifnr AND
                lbukrs  = bbukrs
             WHERE l~lifnr  IN s_lifnr AND
                   l~bukrs = p_bukrs and
                   b~zfbdt le p_allgst.
      IF SY-SUBRC <> 0.
        MESSAGE i000 WITH 'No Data found'(027).
      ENDIF.
    Removing the date limit to get the due items in the past
      DELETE int_bsik WHERE
                  ( blart  NE 'RE' AND blart  NE 'KR' ) OR
                    shkzg  NE 'H'.
      SORT int_bsik BY lifnr.
    ENDFORM.                    " fetch_data
    *&      Form  header
    Display the Report Columns
    FORM header .
      v_tage1 = p_tage1 + 1.
      v_tage2 = p_tage2 + 1.
      v_tage3 = p_tage3 + 1.
      v_fidd = p_tage1.
      v_sedd = p_tage2.
      v_thdd = p_tage3.
      v_fodd = p_tage4.
      MOVE v_fodd0(4) TO v_fodd1(3).
      v_fodd+0(1) = space.
      CONCATENATE '1 to'(010) v_fidd INTO v_fir.
      CONCATENATE v_tage1 ' to '(011) v_sedd INTO v_sec.
      CONCATENATE v_tage2 ' to '(011) v_thdd INTO v_thir.
      CONCATENATE v_tage3 ' to '(011) space v_fodd INTO v_four.
    Standard header
      clear: v_date1, v_str, v_str1, v_tage.
      write p_allgst to v_date1.
      Move  p_tage4 to v_tage.
      concatenate '>' v_tage text-025 into v_str1.
      concatenate
      'Summary of Ageing Analysis for Vendor Open Invoices as on'(013)
       v_date1 into v_str separated by space.
      CALL FUNCTION 'Z_STANDARD_HEADER'
        EXPORTING
         title1 = 'Saudi International Petrochemical Company'(012)
         title2 = v_str.
      FORMAT COLOR OFF.
      WRITE  : /1(168) sy-uline.
      FORMAT COLOR 1 INTENSIFIED.
      WRITE :/1 sy-vline, 13 sy-vline, 49 sy-vline,
            50(101) 'Invoices Due For(In Days)'(014) CENTERED,
           151 sy-vline, 168 sy-vline .
      WRITE :/1 sy-vline,  2(11)  'Vendor#'(015) CENTERED,
             13 sy-vline ,14(35) 'Vendor Name'(016) CENTERED,
             49 sy-vline,
             50(101) sy-uline,151 sy-vline,
            152(16) 'Total'(017) CENTERED,
            168 sy-vline.
      WRITE : /1 sy-vline,13 sy-vline,      49 sy-vline,
              50(16) v_fir CENTERED,        66 sy-vline,
              67(16) v_sec CENTERED,        83 sy-vline,
              84(16) v_thir CENTERED,      100 sy-vline,
             101(16) v_four CENTERED,      117 sy-vline,
             118(16) v_str1 centered,      134 sy-vline,
             135(16) 'Already Overdue'(018) CENTERED,151 sy-vline,
             168 sy-vline.
      FORMAT COLOR OFF.
      WRITE  : /1(168) sy-uline.
    ENDFORM.                    " header
    *&      Form  basic_list
    Display the Basic List
    FORM basic_list .
      NEW-PAGE LINE-SIZE 168.
      LOOP AT int_bsik.
        CLEAR v_date.
        IF int_bsik-zbd3t <> ' '.
          v_date = int_bsik-zfbdt + int_bsik-zbd3t.
        ELSE.
          IF int_bsik-zbd2t <> ' '.
            v_date = int_bsik-zfbdt + int_bsik-zbd2t.
          ELSE.
            v_date = int_bsik-zfbdt + int_bsik-zbd1t.
          ENDIF.
        ENDIF.
        IF int_bsik-zbd1t = ' '.
          v_date = int_bsik-zfbdt.
        ENDIF.
        IF v_date IN r_date1.
          int_final-total1 =   int_final-total1 +  int_bsik-dmbtr.
        ELSEIF v_date IN r_date2.
          int_final-total2 =   int_final-total2 +  int_bsik-dmbtr.
        ELSEIF v_date IN r_date3.
          int_final-total3 =   int_final-total3 +  int_bsik-dmbtr.
        ELSEIF v_date IN r_date4.
          int_final-total4 =   int_final-total4 +  int_bsik-dmbtr.
        ELSEif v_date > r_date4-high.
          int_final-total5 =   int_final-total5 +  int_bsik-dmbtr.
        ELSEif v_date < p_allgst.
          int_final-total6 =   int_final-total6 +  int_bsik-dmbtr.
        ENDIF.
        AT END OF lifnr.
          v_flag = 1.
        ENDAT.
        IF v_flag = 1.
          int_final-lifnr = int_bsik-lifnr.
          int_final-name1 = int_bsik-name1.
          int_final-total =   int_final-total1 + int_final-total2 +
           int_final-total3 + int_final-total4 + int_final-total5 +
           int_final-total6.
          APPEND int_final.
          v_gtotal1 = v_gtotal1 + int_final-total1.
          v_gtotal2 = v_gtotal2 + int_final-total2.
          v_gtotal3 = v_gtotal3 + int_final-total3.
          v_gtotal4 = v_gtotal4 + int_final-total4.
          v_gtotal5 = v_gtotal5 + int_final-total5.
          v_gtotal6 = v_gtotal6 + int_final-total6.
          v_gtotal = v_gtotal + int_final-total.
          WRITE: /1 sy-vline,
                  2 int_final-lifnr COLOR 4 INTENSIFIED ON,
                 13 sy-vline,
                 14 int_final-name1 COLOR 4 INTENSIFIED ON,
                 49 sy-vline.
          DATA : v_rem.
          v_rem = sy-tabix MOD 2.
          IF v_rem NE 0.
            FORMAT COLOR 2 INTENSIFIED.
            WRITE :    50 int_final-total1 CURRENCY int_bsik-waers,
                       66 sy-vline,
                       67 int_final-total2 CURRENCY int_bsik-waers,
                       83 sy-vline,
                       84 int_final-total3 CURRENCY int_bsik-waers,
                      100 sy-vline,
                      101 int_final-total4 CURRENCY int_bsik-waers,
                      117 sy-vline,
                      118 int_final-total5 CURRENCY int_bsik-waers,
                      134 sy-vline,
                      135 int_final-total6 CURRENCY int_bsik-waers,
                      151 sy-vline,
                      152 int_final-total CURRENCY int_bsik-waers,
                      168 sy-vline.
          ELSE.
            WRITE :    50 int_final-total1 CURRENCY int_bsik-waers,
                       66 sy-vline,
                       67 int_final-total2 CURRENCY int_bsik-waers,
                       83 sy-vline,
                       84 int_final-total3 CURRENCY int_bsik-waers,
                      100 sy-vline,
                      101 int_final-total4 CURRENCY int_bsik-waers,
                      117 sy-vline,
                      118 int_final-total5 CURRENCY int_bsik-waers,
                      134 sy-vline,
                      135 int_final-total6 CURRENCY int_bsik-waers,
                      151 sy-vline,
                      152 int_final-total CURRENCY int_bsik-waers,
                      168 sy-vline.
          ENDIF.
          FORMAT COLOR OFF.
          HIDE int_final.
          CLEAR int_final.
          v_flag = 0.
        ENDIF.
        AT LAST.
          WRITE  : /1(168) sy-uline.
          FORMAT COLOR 3 INTENSIFIED.
          WRITE : /1 sy-vline,  2(47) 'GRAND TOTAL'(022) CENTERED,
                  49 sy-vline, 50 v_gtotal1 CURRENCY int_bsik-waers,
                  66 sy-vline, 67 v_gtotal2 CURRENCY int_bsik-waers,
                  83 sy-vline, 84 v_gtotal3 CURRENCY int_bsik-waers,
                 100 sy-vline,101 v_gtotal4 CURRENCY int_bsik-waers,
                 117 sy-vline,118 v_gtotal5 CURRENCY int_bsik-waers,
                 134 sy-vline,135 v_gtotal6 CURRENCY int_bsik-waers,
                 151 sy-vline,152 v_gtotal CURRENCY int_bsik-waers,
                 168 sy-vline.
          HIDE :  v_gtotal1,
                  v_gtotal2,
                  v_gtotal3,
                  v_gtotal4,
                  v_gtotal5,
                  v_gtotal6,
                  v_gtotal.
        ENDAT.
        FORMAT COLOR OFF.
      ENDLOOP.
      WRITE  : /1(168) sy-uline.
    ENDFORM.                    " basic_list
    *&      Form  line_selection
    When double clicked on the line display the seconday list
    FORM line_selection .
      NEW-PAGE LINE-SIZE 206.
    Sy-lsind = 1.
      DATA : v_rem,v_cnt LIKE sy-tabix.
      v_cnt = 0.
      SORT int_bsik BY belnr zfbdt.
      LOOP AT int_bsik WHERE lifnr EQ int_final-lifnr.
        v_rem = v_cnt MOD 2.
        CLEAR v_date.
        IF int_bsik-zbd3t <> ' '.
          v_date = int_bsik-zfbdt + int_bsik-zbd3t.
        ELSE.
          IF int_bsik-zbd2t <> ' '.
            v_date = int_bsik-zfbdt + int_bsik-zbd2t.
          ELSE.
            v_date = int_bsik-zfbdt + int_bsik-zbd1t.
          ENDIF.
        ENDIF.
        IF int_bsik-zbd1t = ' '.
          v_date = int_bsik-zfbdt.
        ENDIF.
        IF v_rem NE 0.
          format color 2 intensified.
          WRITE :/1 sy-vline, 2 int_bsik-belnr,
                 12 sy-vline,13 int_bsik-lifnr,
                 23 sy-vline,24 int_bsik-name1,
                 59 sy-vline,60 int_bsik-xblnr,
                 76 sy-vline,77 int_bsik-zfbdt,
                 87 sy-vline.
          WRITE : 104 sy-vline,121 sy-vline,
                  138 sy-vline,155 sy-vline,
                  172 sy-vline, 189 sy-vline,
                  190 int_bsik-dmbtr CURRENCY int_bsik-waers,
                  206 sy-vline.
          IF v_date IN r_date1.
            v_subtotal1 =   v_subtotal1 +  int_bsik-dmbtr.
            WRITE : 88 int_bsik-dmbtr  CURRENCY int_bsik-waers.
          ELSEIF v_date IN r_date2.
            v_subtotal2 =   v_subtotal2 +  int_bsik-dmbtr.
            WRITE : 105 int_bsik-dmbtr CURRENCY int_bsik-waers.
          ELSEIF v_date IN r_date3.
            v_subtotal3 =   v_subtotal3 +  int_bsik-dmbtr.
            WRITE : 122 int_bsik-dmbtr CURRENCY int_bsik-waers.
          ELSEIF v_date IN r_date4.
            v_subtotal4 =   v_subtotal4 +  int_bsik-dmbtr.
            WRITE : 139 int_bsik-dmbtr CURRENCY int_bsik-waers.
          ELSEif v_date > r_date4-high.
            v_subtotal5 =   v_subtotal5 +  int_bsik-dmbtr.
            WRITE : 156 int_bsik-dmbtr CURRENCY int_bsik-waers.
          ELSEif v_date < p_allgst.
            v_subtotal6 =   v_subtotal6 +  int_bsik-dmbtr.
            WRITE : 173 int_bsik-dmbtr CURRENCY int_bsik-waers.
          ENDIF.
          format color off.
        ELSE.
          WRITE :/1 sy-vline, 2 int_bsik-belnr,
                 12 sy-vline,13 int_bsik-lifnr,
                 23 sy-vline,24 int_bsik-name1,
                 59 sy-vline,60 int_bsik-xblnr,
                 76 sy-vline,77 int_bsik-zfbdt,
                 87 sy-vline.
          WRITE : 104 sy-vline,121 sy-vline,
                  138 sy-vline,155 sy-vline,
                  172 sy-vline,189 sy-vline,
                  190 int_bsik-dmbtr CURRENCY int_bsik-waers,
                  206 sy-vline.
          IF v_date IN r_date1.
            v_subtotal1 =   v_subtotal1 +  int_bsik-dmbtr.
            WRITE : 88 int_bsik-dmbtr CURRENCY int_bsik-waers.
          ELSEIF v_date IN r_date2.
            v_subtotal2 =   v_subtotal2 +  int_bsik-dmbtr.
            WRITE : 105 int_bsik-dmbtr CURRENCY int_bsik-waers.
          ELSEIF v_date IN r_date3.
            v_subtotal3 =   v_subtotal3 +  int_bsik-dmbtr.
            WRITE : 122 int_bsik-dmbtr CURRENCY int_bsik-waers.
          ELSEIF v_date IN r_date4.
            v_subtotal4 =   v_subtotal4 +  int_bsik-dmbtr.
            WRITE : 139 int_bsik-dmbtr CURRENCY int_bsik-waers.
          ELSEif v_date > r_date4-high.
            v_subtotal5 =   v_subtotal5 +  int_bsik-dmbtr.
            WRITE : 156 int_bsik-dmbtr CURRENCY int_bsik-waers.
          ELSEif v_date < p_allgst.
            v_subtotal6 =   v_subtotal6 +  int_bsik-dmbtr.
            WRITE : 173 int_bsik-dmbtr CURRENCY int_bsik-waers.
          ENDIF.
        ENDIF.
        FORMAT COLOR OFF.
        v_cnt = v_cnt + 1.
      ENDLOOP.
      WRITE : /1(206) sy-uline.
      v_subtotal = v_subtotal1 + v_subtotal2 + v_subtotal3
                  + v_subtotal4 + v_subtotal5 + v_subtotal6.
      FORMAT COLOR 3 INTENSIFIED.
      WRITE : /1 sy-vline,
                 2(85) 'Total'(017) CENTERED CURRENCY int_bsik-waers ,
                 87 sy-vline,
                 88 v_subtotal1 CURRENCY int_bsik-waers,
                104 sy-vline,
                105 v_subtotal2 CURRENCY int_bsik-waers,
                121 sy-vline,
                122 v_subtotal3 CURRENCY int_bsik-waers,
                138 sy-vline,
                139 v_subtotal4 CURRENCY int_bsik-waers,
                155 sy-vline,
                156 v_subtotal5 CURRENCY int_bsik-waers,
                172 sy-vline,
                173 v_subtotal6 CURRENCY int_bsik-waers,
                189 sy-vline,
                190 v_subtotal CURRENCY int_bsik-waers,
                206 sy-vline.
      FORMAT COLOR OFF.
      WRITE : /1(206) sy-uline.
      CLEAR : v_subtotal,v_subtotal1,v_subtotal2,v_subtotal3,
              v_subtotal4,v_subtotal5,v_gtotal1,v_gtotal2,v_gtotal3,
              v_gtotal4, v_gtotal5,v_gtotal,v_subtotal6,v_gtotal6.
    ENDFORM.                    " line_selection
    *&      Form  header1
    Secondary List Header
    FORM header1 .
    Standard header
      clear: v_date1, v_str, v_str1, v_tage.
      write p_allgst to v_date1.
      Move  p_tage4 to v_tage.
      concatenate '>' v_tage text-025 into v_str1.
      concatenate
       'Details of Ageing Analysis for Vendor Open Invoices as on'(024)
        v_date1 into v_str separated by space.
      CALL FUNCTION 'Z_STANDARD_HEADER'
        EXPORTING
         title1 = 'Company'(012)
         title2 =  v_str.
      FORMAT COLOR 1 intensified.
      WRITE  :/1(206) sy-uline.
      WRITE  :/1 sy-vline,12 sy-vline ,
              23 sy-vline,59 sy-vline,76 sy-vline,87 sy-vline,
              88(101) 'Invoices Due For(In Days)'(014) CENTERED,
             189 sy-vline,206 sy-vline.
      WRITE  : /1 sy-vline,  2(10) 'Doc Number'(021) CENTERED,
               12 sy-vline, 13(10) 'Vendor#'(015) CENTERED,
               23 sy-vline, 24(35) 'Vendor Name'(016) CENTERED,
               59 sy-vline, 60(16) 'Ref invoice#'(019) CENTERED,
               76 sy-vline, 77(10) 'Inv dt'(020) CENTERED,
               87 sy-vline, 88(101) sy-uline,
              189 sy-vline,190(16) 'Total'(017) CENTERED,
              206 sy-vline.
      WRITE : /1 sy-vline, 12 sy-vline,
               23 sy-vline,59 sy-vline,
               76 sy-vline,87 sy-vline,
               88(16) v_fir CENTERED, 104 sy-vline,
              105(16) v_sec CENTERED, 121 sy-vline,
              122(16) v_thir CENTERED, 138 sy-vline,
              139(16) v_four CENTERED, 155 sy-vline,
              156(16) v_str1 CENTERED,
              172    sy-vline,
              173(16) 'Already Overdue'(018) CENTERED,
              189 sy-vline,
              206 sy-vline.
              format color off.
      WRITE  : /1(206) sy-uline.
    ENDFORM.                                                    " header1
    Reward points if useful
    Regards
    Anji

  • Report for Purchase Orders didnt reach target through ALE

    Hi Experts,
    we are sending Purchase Orders to Third party system using XI.
    But some of the orders when we save its automatically  system generating output medium is PRINT so these orders not going through ALE.
    1)Can anyone please tell me why the system is generating PRINT instead of ALE distribution.
    2) is there any report for how many purchase orders created for the day and how many of them gone through successfull using ALE distribution.
    Answer will be rewarded.
    Kiran

    Hi
    Have you configured the PO Output type/messages with the Medium as 'A'(ALE)
    otherwise the system willd efualt take 1(print) as default medium.
    Check the NAST table entries for that date created Output type of PO's
    for all of them the Medium(NACHA) field should be A
    then all will go through ALE
    check them.
    Regards
    Anji

  • Report for replacement stock to be recived from vendor

    Hi
    I HAVE ONE ISSUE ON ABOUT VENDOR REPLACEMENT STOCK REPORT
    EX:.. i have done GR for material-A qty 100...and ihave done MIRO for this ..pur.order..
    after 20 days i have return the materai-A ..qty 25..(without cancel the MIRO) with movement tuype 122..but this material should be return from vedor.(subsequent deliver).after some days or weeks ..( bcoz money has already paid to vendor)...like this we many materials ..
    for this... i want report for replacement material will be recived from vendor
    regards
    sesidhar

    Hi
    already i have done MIRO..
    then return to vendor qty 25..(through MIRO...w/o creadit memo
    thne again recive the replacement material ..through MIGO (subsequent delivery)
    in this case ..need to create credit memo..?
    if yes.. pls...send me procedure.
    regards
    sesidhar

  • Aging Analysis report for open Items in SD

    Hi ,
    Please give the code snippet for the following case.
    aging analysis program for open items:-
    payments not receivecd for 15 days,30 ,60 ,90days
    imput:
    custno range
    sales area
    days 30,60,90 selection sort by cust no,sales organization
    output :report program ALV grid format
    Many Thanks in Advance.
    Raj

    There are couple of  Standard Report for Customer Open Items.
    RFDOPO00 - List of Customer Open Items.
    RFDSLD00 -  Cutomer Balances
    Also there is another standard report....
    Run the Tcode 'S_ALR_87012178", that is "Customer open Item analysis by Balance of Over dues".
    Copy the Report and make necessary changes.
    Modification is always required to get a "good looking" aging report, there is no standard.
    Hope this helps.
    Vinodh Balakrishnan

  • Report for material consumption

    Can any one guide me in developing a report to find the material consumed during a certain period ,
      selectio screen should me consiting of matrial and date

    Hi
    See the sample report and do accordingly
    report ystk message-id yz2 line-size 231 line-count 45
    no standard page heading.
    Type Declaration *
    type-pools slis.
    Tables *
    tables: mkpf, " Material Document: Header Data
    mseg, " Material Document: Item Data
    mara,
    mard,
    s031,
    ekko,
    ekpo,
    likp,
    makt,
    j_1iwrkcus,
    t001w,
    wb2_v_mkpf_mseg2,
    mmim_rep_print,
    yw2_stkmovements,
    yplnt,
    mardh.
    Internal Tables *
    data: i_werks like j_1iwrkcus occurs 0 with header line.
    data: begin of i_yplnt occurs 0,
    pplnt like yplnt-pplnt,
    wplnt like yplnt-wplnt,
    end of i_yplnt.
    data: begin of i_mkpf occurs 0,
    mblnr like mkpf-mblnr,
    mjahr like mkpf-mjahr,
    budat like mkpf-budat,
    vgart like mkpf-vgart,
    bwart like mseg-bwart,
    matnr like mseg-matnr,
    werks like mseg-werks,
    lgort like mseg-lgort,
    menge like mseg-menge,
    meins like mseg-meins,
    kunnr like mseg-kunnr,
    zeile like mseg-zeile,
    xauto like mseg-xauto,
    shkzg like mseg-shkzg,
    matnr1 like mseg-matnr,
    end of i_mkpf.
    data: begin of i_mardh occurs 0,
    werks like mardh-werks,
    meins like mara-meins,
    matnr like mardh-matnr,
    lgort like mardh-lgort,
    labst like mardh-labst,
    lfgja like mardh-lfgja, "Added -MB
    lfmon like mardh-lfmon, "Added -MB
    perio(6),
    insme like mardh-labst,
    einme like mardh-labst,
    speme like mardh-labst,
    retme like mardh-labst,
    o_stk like mardh-labst, " Opening Stock
    c_stk like mardh-labst, " Closing Stock
    end of i_mardh.
    data: begin of i_mard occurs 0,
    werks like mard-werks,
    matnr like mard-matnr,
    lgort like mard-lgort,
    labst like mard-labst,
    insme like mard-labst,
    meins like mara-meins,
    einme like mard-labst,
    speme like mard-labst,
    retme like mard-labst,
    end of i_mard.
    data: i_mard1 like i_mard occurs 0 with header line.
    data: i_mardh1 like i_mardh occurs 0 with header line.
    data: begin of i_mkpf1 occurs 0,
    mblnr like mkpf-mblnr,
    werks like mseg-werks,
    matnr like mseg-matnr,
    budat like mkpf-budat,
    bwart like mseg-bwart,
    mjahr like mkpf-mjahr,
    vgart like mkpf-vgart,
    lgort like mseg-lgort,
    menge like mseg-menge,
    meins like mseg-meins,
    xauto like mseg-xauto,
    shkzg like mseg-shkzg,
    end of i_mkpf1.
    data: begin of i_mkpf2 occurs 0,
    werks like mseg-werks,
    matnr like mseg-matnr,
    budat like mkpf-budat,
    bwart like mseg-bwart,
    mjahr like mkpf-mjahr,
    vgart like mkpf-vgart,
    lgort like mseg-lgort,
    menge like mseg-menge,
    meins like mseg-meins,
    xauto like mseg-xauto,
    end of i_mkpf2.
    data: begin of i_final5 occurs 0,
    werks like mseg-werks, " Plant
    matnr like mseg-matnr, " Material
    lgort like mseg-lgort, " Storage Location
    budat like mkpf-budat, " Posting Date
    mtart like mara-mtart, " Material Type
    spmon like s031-spmon, " Month
    maktx like makt-maktx, " Description
    meins(3), " UOM
    meins like mseg-meins,
    o_stk like mardh-labst, " opening stock
    trecep like mardh-labst, " total receipts
    produ like mardh-labst, " Net Receipts - Production
    recep like mardh-labst, " Net Receipts - Receipts
    sal_ret like mardh-labst, " Net Receipts - Sales Return
    tdisp like mardh-labst, " total dispatches
    custmr like mardh-labst, " Net Dispatches - Customers
    oplant like mardh-labst, " Net Dispatches - To Other Plant
    tloss like mardh-labst, " Total Loss
    trloss like mardh-labst, " Transit Loss
    whloss like mardh-labst, " Warehouse Loss
    c_stk like mardh-labst, " Closing Stock
    trfstk like mardh-labst, "Transfer stock
    menge like mseg-menge,
    othadj like mardh-labst,
    end of i_final5.
    data: begin of i_final occurs 0,
    werks like mseg-werks, " Plant
    matnr like mseg-matnr, " Material
    budat like mkpf-budat, " Posting Date
    mtart like mara-mtart, " Material Type
    spmon like s031-spmon, " Month
    maktx like makt-maktx, " Description
    meins(3), " UOM
    meins like mseg-meins,
    o_stk like mardh-labst, " opening stock
    trecep like mardh-labst, " total receipts
    produ like mardh-labst, " Net Receipts - Production
    recep like mardh-labst, " Net Receipts - Receipts
    sal_ret like mardh-labst, " Net Receipts - Sales Return
    tdisp like mardh-labst, " total dispatches
    custmr like mardh-labst, " Net Dispatches - Customers
    oplant like mardh-labst, " Net Dispatches - To Other Plant
    trfstk like mardh-labst, "Material Transfer stock
    trloss like mardh-labst, " Transit Loss
    whloss like mardh-labst, " Warehouse Loss
    tloss like mardh-labst, " Total Loss
    c_stk like mardh-labst, " Closing Stock
    othadj like mardh-labst,
    end of i_final.
    data: i_final1 like i_final occurs 0 with header line.
    data: begin of i_final_temp occurs 0,
    werks like mseg-werks, " Plant
    matnr like mseg-matnr, " Material
    mtart like mara-mtart, " Material Type
    maktx like makt-maktx, " Description
    meins like mseg-meins,
    o_stk like mardh-labst, " opening stock
    trecep like mardh-labst, " total receipts
    produ like mardh-labst, " Net Receipts - Production
    recep like mardh-labst, " Net Receipts - Receipts
    sal_ret like mardh-labst, " Net Receipts - Sales Return
    tdisp like mardh-labst, " total dispatches
    custmr like mardh-labst, " Net Dispatches - Customers
    oplant like mardh-labst, " Net Dispatches - To Other Plant
    trfstk like mardh-labst, "Material Transfer stock
    trloss like mardh-labst, " Transit Loss
    whloss like mardh-labst, " Warehouse Loss
    tloss like mardh-labst, " Total Loss
    c_stk like mardh-labst, " Closing Stock
    othadj like mardh-labst,
    end of i_final_temp.
    For Materials
    data: begin of i_mara occurs 0,
    matnr type mara-matnr,
    mtart type mara-mtart,
    meins like mara-meins,
    labst type mard-labst,
    maktx like makt-maktx,
    end of i_mara.
    data: begin of i_stkmvmnts occurs 0,
    bwart like mseg-bwart,
    shkzg like mseg-shkzg,
    vzbew like yw2_stkmovements-vzbew,
    end of i_stkmvmnts.
    data: begin of i_finalt occurs 0,
    werks like mseg-werks, " Plant
    matnr like mseg-matnr, " Material
    budat like mkpf-budat, " Posting Date
    mtart like mara-mtart, " Material Type
    spmon like s031-spmon, " Month
    maktx like makt-maktx, " Description
    meins(3), " UOM
    meins like mseg-meins,
    o_stk like mardh-labst, " opening stock
    trecep like mardh-labst, " total receipts
    produ like mardh-labst, " Net Receipts - Production
    recep like mardh-labst, " Net Receipts - Receipts
    sal_ret like mardh-labst, " Net Receipts - Sales Return
    tdisp like mardh-labst, " total dispatches
    custmr like mardh-labst, " Net Dispatches - Customers
    oplant like mardh-labst, " Net Dispatches - To Other Plant
    trfstk like mardh-labst, "Material Transfer stock
    trloss like mardh-labst, " Transit Loss
    whloss like mardh-labst, " Warehouse Loss
    tloss like mardh-labst, " Total Loss
    c_stk like mardh-labst, " Closing Stock
    othadj like mardh-labst,
    month(8) ,
    end of i_finalt.
    data: imkpft like i_mkpf occurs 0 with header line.
    data: imkpft1 like i_mkpf1 occurs 0 with header line.
    data: imardt like i_mard occurs 0 with header line.
    data: imardht like i_mardh occurs 0 with header line.
    data: t_final like i_mkpf occurs 0 with header line.
    data: imkpft2 like i_mkpf occurs 0 with header line.
    FCAT is used for the field catalog
    data: fcat type table of slis_fieldcat_alv with non-unique default key
    with header line initial size 0,
    for excluding the ICONs from the application toolbar
    fexc type table of slis_extab with non-unique default key
    with header line initial size 0,
    FS_LAYO is used for Grid Layout
    fs_layo type slis_layout_alv,
    FEVENTS to handle the events TOP OF PAGE & USER_COMMAND
    fevents type table of slis_alv_event with non-unique default key
    with header line initial size 0,
    FHEADER is used for List header
    fheader type table of slis_listheader with non-unique default key
    with header line initial size 0,
    sort is used for sorting
    fsort type table of slis_sortinfo_alv with non-unique default key
    with header line initial size 0,
    fcat1 type table of slis_fieldcat_alv with non-unique default key
    with header line initial size 0,
    fs_layo1 type slis_layout_alv,
    gt_list_top_of_page1 type slis_t_listheader,
    fevents1 type table of slis_alv_event with non-unique default key
    with header line initial size 0,
    fheader1 type table of slis_listheader with non-unique default key
    with header line initial size 0,
    g_statu_071 type slis_formname value 'Z_PFSTATUS',
    alv_variant1 like disvariant.
    Variable Declaration *
    types: trff_type_dec_6_5(6) type p decimals 5.
    data: fyear(4),
    mon(2),
    fyear1(4),
    mon1(2),
    obal like mard-labst,
    cbal like mard-labst,
    index type i,
    count,
    count1 type i,
    o_stk type p decimals 3,
    c_stk type p decimals 3,
    v_mjahr like mkpf-mjahr,
    months type trff_type_dec_6_5,
    month type i.
    Global variables for handling ALV functionality
    data: alv_keyinfo type slis_keyinfo_alv,
    alv_variant like disvariant,
    alv_layout type slis_layout_alv,
    alv_repid like sy-repid,
    alv_print type slis_print_alv,
    alv_detail_func(30),
    alv_default_variant like disvariant-variant,
    alv_colourize_fields like mmim_rep_print-color.
    ranges: r_budat for mkpf-budat.
    *Added by Prabhu for year on 26.4.05.
    data: idate like r_budat occurs 0 with header line.
    Selection Screen Elements *
    selection-screen begin of block blk with frame title text-001.
    select-options: s_werks for mard-werks obligatory
    no intervals.
    parameter: p_spmon like s031-spmon no-display .
    select-options: s_matnr for mara-matnr obligatory,
    s_lgort for mseg-lgort no-extension no intervals,
    s_mblnr for mkpf-mblnr,
    s_budat for mkpf-budat obligatory .
    selection-screen end of block blk.
    selection-screen begin of block blk3 with frame title text-004.
    parameter : mtart like mara-mtart
    default 'FERT' no-display.
    selection-screen end of block blk3.
    selection-screen begin of block blk2 with frame title text-003.
    selection-screen end of block blk2.
    ADDED BY PRABHU FOR DAY-WISE REPORT.
    selection-screen begin of block b3 with frame title text-007.
    parameters: d1 radiobutton group p1 default 'X',
    m1 radiobutton group p1,
    y1 radiobutton group p1.
    selection-screen end of block b3.
    selection-screen begin of block b2 with frame title text-006.
    parameters: alv_def like disvariant-variant.
    selection-screen end of block b2.
    data: s_budat1 like s_budat occurs 0 with header line."prabhu
    Initialization *
    initialization.
    perform alv_init.
    at selection-screen on value-request for alv_def.
    perform alv_f4.
    At Selection Screen
    *AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_spmon.
    PERFORM monat_f4.
    At Selection Screen *
    at selection-screen.
    checking for the layout
    perform alv_check.
    authorisation check for the Plant
    PERFORM auth_check.
    Validation for the Plant
    perform validity_check.
    if mtart ne 'FERT'.
    message e041 with 'Material Type must be FERT Only...'.
    endif.
    if d1 = 'X'." On 26.4.05.
    p_spmon0(4) = s_budat-low0(4).
    p_spmon4(2) = s_budat-low4(2).
    else.
    p_spmon0(4) = s_budat-low0(4).
    p_spmon4(2) = s_budat-low4(2).
    endif.
    loop at s_budat.
    if s_budat-high is initial.
    s_budat-high = s_budat-low.
    modify s_budat.
    endif.
    endloop.
    idate-low = s_budat-low.
    idate-high = s_budat-high.
    call function 'FIMA_DAYS_AND_MONTHS_AND_YEARS'
    exporting
    i_date_from = idate-low
    i_date_to = idate-high
    importing
    E_DAYS =
    e_months = month
    E_YEARS =
    data: i(3) type c.
    i = s_budat-low+4(2).
    clear: r_budat.
    refresh: r_budat.
    *added by Prabhu for Only for Oneday.on 18.5.5
    if month eq '0'.
    month = month + 1.
    endif.
    *added by Prabhu for Only for Oneday.on 18.5.5
    do month times.
    r_budat-low = s_budat-low.
    append r_budat.
    enddo.
    i = 0.
    loop at r_budat.
    r_budat-low4(2) = s_budat-low4(2) + i.
    i = i + 1.
    r_budat-low+6(2) = '01'.
    modify r_budat.
    endloop.
    loop at r_budat.
    call function 'RP_LAST_DAY_OF_MONTHS'
    exporting
    day_in = r_budat-low
    importing
    last_day_of_month = r_budat-high
    EXCEPTIONS
    DAY_IN_NO_DATE = 1
    OTHERS = 2
    modify r_budat.
    endloop.
    loop at r_budat.
    if r_budat-low4(2) = s_budat-low4(2).
    r_budat-low = s_budat-low.
    modify r_budat.
    endif.
    if r_budat-high4(2) = s_budat-high4(2).
    r_budat-high = s_budat-high.
    modify r_budat.
    endif.
    For Summary on 26.4.05.
    if y1 = 'X'.
    clear r_budat.
    refresh r_budat.
    r_budat-low = s_budat-low.
    r_budat-high = s_budat-high.
    append r_budat.
    clear r_budat.
    endif.
    endloop.
    At Selection Screen *
    at selection-screen output.
    Start of Selection *
    start-of-selection.
    v_mjahr = p_spmon+0(4).
    Get plant distinction warehouse/production
    perform get_plant_distinction.
    Collect the data from various tables
    perform getdata_fg_stock.
    here the number of rows in the output table is found
    perform output_table_check.
    here the top of the page code is written, that is to be displayed
    in the output
    perform z_top_of_page.
    here ALV layout properties are set
    perform z_layout_settings.
    ALV EVENTS for TOP OF PAGE and for USER COMMAND
    perform z_alv_events.
    The field catalog is defined for the Primary List is defined in
    the subroutine CREATE_FIELD_CATALOG include program ZPRRDOCR_FCAT
    perform z_create_field_catalog.
    This is for displaying the output
    perform z_reuse_alv_grid_display.
    *& Form getdata_fg_stock
    Getting data from standard tables
    form getdata_fg_stock.
    For getting the Start date & end date of the month
    PERFORM get_month_dates.
    Getting the Opening Stock from MARDH table
    if mon eq '01'.
    mon1 = mon.
    fyear1 = fyear.
    mon = '12'.
    fyear = fyear - 1.
    else.
    mon1 = mon.
    fyear1 = fyear.
    mon = mon - 1.
    fyear = fyear.
    endif.
    perform get_records_from_db.
    *added for Month Summary on 26.4.05.
    loop at r_budat.
    s_budat-low = r_budat-low.
    s_budat-high = r_budat-high.
    *for Month
    p_spmon0(4) = s_budat-low0(4).
    p_spmon4(2) = s_budat-low4(2).
    *for summary.
    if y1 = 'X'.
    loop at s_budat.
    s_budat1-sign = 'I'.
    s_budat1-option = 'NB'.
    s_budat1-low = s_budat-low.
    s_budat1-high = s_budat-high.
    append s_budat1.
    clear s_budat1.
    endloop.
    endif.
    imkpft[] = i_mkpf[].
    imkpft2[] = i_mkpf[].
    imardt[] = i_mard[].
    imardht[] = i_mardh[].
    perform month_wise.
    perform process_movements.
    perform calculate_opening_stock.
    perform update_non_transaction_itms.
    perform delete_empty_records.
    clear: imardht,imardt,imkpft1,imkpft,i_final,i_final5.
    refresh: imardht,imardt,imkpft1,i_final,i_final5,imkpft.
    endloop.
    clear: r_budat.
    refresh: r_budat.
    *end of changes for month.
    endform. " getdata_fg_stock
    FORM MONAT_F4 *
    F4-Hilfe für Monat *
    form monat_f4.
    data: begin of mf_dynpfields occurs 1.
    include structure dynpread.
    data: end of mf_dynpfields.
    data: mf_returncode like sy-subrc,
    mf_monat like isellist-month,
    mf_hlp_repid like sy-repid.
    field-symbols: .
    Wert von Dynpro lesen
    get cursor field mf_dynpfields-fieldname.
    append mf_dynpfields.
    mf_hlp_repid = sy-repid.
    do 2 times.
    call function 'DYNP_VALUES_READ'
    exporting
    dyname = mf_hlp_repid
    dynumb = sy-dynnr
    tables
    dynpfields = mf_dynpfields
    exceptions
    invalid_abapworkarea = 01
    invalid_dynprofield = 02
    invalid_dynproname = 03
    invalid_dynpronummer = 04
    invalid_request = 05
    no_fielddescription = 06
    undefind_error = 07.
    if sy-subrc = 3.
    Aktuelles Dynpro ist Wertemengenbild
    mf_hlp_repid = 'SAPLALDB'.
    else.
    read table mf_dynpfields index 1.
    Unterstriche durch Blanks ersetzen
    translate mf_dynpfields-fieldvalue using '_ '.
    exit.
    endif.
    enddo.
    if sy-subrc = 0.
    Konvertierung ins interne Format
    call function 'CONVERSION_EXIT_PERI_INPUT'
    exporting
    input = mf_dynpfields-fieldvalue
    importing
    output = mf_monat
    exceptions
    error_message = 1.
    if mf_monat is initial.
    Monat ist initial => Vorschlagswert aus akt. Datum ableiten
    mf_monat = sy-datlo(6).
    endif.
    call function 'POPUP_TO_SELECT_MONTH'
    exporting
    actual_month = mf_monat
    importing
    selected_month = mf_monat
    return_code = mf_returncode
    exceptions
    factory_calendar_not_found = 01
    holiday_calendar_not_found = 02
    month_not_found = 03.
    if sy-subrc = 0 and mf_returncode = 0.
    ASSIGN (MF_DYNPFIELDS-FIELDNAME) TO <MF_FELD>. " ==>> note 148804
    <MF_FELD> = MF_MONAT.
    call function 'CONVERSION_EXIT_PERI_OUTPUT'
    exporting
    input = mf_monat
    importing
    output = mf_dynpfields-fieldvalue.
    collect mf_dynpfields.
    call function 'DYNP_VALUES_UPDATE'
    exporting
    dyname = mf_hlp_repid
    dynumb = sy-dynnr
    tables
    dynpfields = mf_dynpfields
    exceptions
    invalid_abapworkarea = 01
    invalid_dynprofield = 02
    invalid_dynproname = 03
    invalid_dynpronummer = 04
    invalid_request = 05
    no_fielddescription = 06
    undefind_error = 07. "<<== note 148804
    endif.
    endif.
    endform. "MONAT_F4
    *& Form get_month_dates
    Calculating the Month Start & End Date
    form get_month_dates.
    if m1 = 'X'.
    fyear = p_spmon+0(4).
    mon = p_spmon+4(2).
    concatenate fyear mon '01' into r_budat-low.
    r_budat-sign = 'I'.
    r_budat-option = 'BT'.
    call function 'BKK_GET_MONTH_LASTDAY'
    exporting
    i_date = r_budat-low
    importing
    e_date = r_budat-high.
    append r_budat.
    clear s_budat.
    refresh s_budat.
    s_budat-sign = 'I'.
    s_budat-option = 'BT'.
    s_budat-low = r_budat-low.
    s_budat-high = r_budat-high.
    append s_budat.
    else.
    fyear = p_spmon+0(4).
    mon = p_spmon+4(2).
    concatenate fyear mon '01' into r_budat-low.
    r_budat-sign = 'I'.
    r_budat-option = 'BT'.
    call function 'BKK_GET_MONTH_LASTDAY'
    exporting
    i_date = r_budat-low
    importing
    e_date = r_budat-high.
    append r_budat.
    endif.
    endform. " get_month_dates
    *& Form output_table_Check
    checking for records for output
    form output_table_check .
    describe table i_finalt lines index.
    if index eq 0.
    message i041 with text-005.
    leave list-processing.
    endif.
    endform. "OUTPUT_TABLE_CHECK
    *& Form Z_TOP_OF_PAGE
    for setting the details in the top of page *
    has no formal paramters *

  • I AM DEVELOPING THE Z-REPORT FOR SHELF AGEING MATERIAL

    HI
    USER WANTS Z-REPORT FOR SHELF AGEING MATERIAL WITH STOCK QTY AND STOCK VALUE.
    I WANT TABLE NAME FOR SHELF AGEING MATERIAL REPORT.
    SPECIALLY, FOR DAYS (REMAINING SHELF LIFE PERIOD FOR  MATERIAL IN DYAS)

    Hi,
    Ask the abaper to write an query from the table S032 there you can find the option of last good receipt date and the last goods issue issue date.
    consider the various good mvt in between these dates calcuate the diffence betwee the current date and the last good issue date, so that you can abel to get the stock list that is not moving for more than 60 days,120 days etc
    You can also use MC46, MC50,  MB5M - expiration date list . In case if that does not solve their requirement then you need take logic from client and you need to develop own report
    pherasath

Maybe you are looking for