• Ap_Aging_Report SQL月底结账使用


    SELECT   api.invoice_num "Invoice_Num", api.invoice_date "Invoice_Date",
             aps.due_date "Due_Date", ROUND (SYSDATE - api.invoice_date) "Days",
             pv.segment1 "Vendor_Num", pv.vendor_name "Vendor_Name",
             term.NAME "Payment_Terms",
             api.invoice_currency_code "Invoice_Currency",
             api.payment_currency_code "Payment_Currency",
             aps.gross_amount "Invoice_Amount",
             aps.amount_remaining "Amount_Remaining",
               NVL (aps.amount_remaining, 0)
             * NVL (api.exchange_rate, 1) "Amount_Remaining(Base)",
             fu.user_name "User_Name"
        FROM ap.ap_payment_schedules_all aps,
             ap.ap_invoices_all api,
             po.po_vendors pv,
             po.po_vendor_sites_all pvs,
             ap.ap_terms_tl term,
             apps.fnd_user fu
       WHERE aps.org_id = '&ORG_ID'
         AND aps.payment_status_flag IN ('N', 'P')
         AND aps.invoice_id = api.invoice_id
         AND api.cancelled_date IS NULL
         AND aps.amount_remaining <> 0
         AND api.vendor_id = pv.vendor_id
         AND api.vendor_site_id = pvs.vendor_site_id
         AND pv.vendor_id = pvs.vendor_id
         AND api.terms_id = term.term_id
         AND api.created_by = fu.user_id
         AND DECODE ((SELECT DISTINCT aid.match_status_flag
                                 FROM ap.ap_invoice_distributions_all aid
                                WHERE api.invoice_id = aid.invoice_id(+)),
                     'A', 'A',
                     'N', 'N',
                     'T', 'T',
                     'X'
                    ) <> 'X'
    ORDER BY 5;
    
    
    --===========修改过的AP_Aging_Report,更便于会计人员核对数据==============
    
    SELECT   details."Vendor_Num", details."Vendor_Name",
             details."Invoice_Currency",
             SUM (details."Amount_Remaining") "Balances",
             SUM (DECODE (SIGN (details."Days" - 31),
                          1, 0,
                          DECODE (SIGN (details."Days"-0 ),
                                  1, details."Amount_Remaining"
                                 )
                         )
                 ) AS "1-30 Days",
             SUM (DECODE (SIGN (details."Days" - 61),
                          1, 0,
                          DECODE (SIGN (details."Days" - 31 ),
                                  1, details."Amount_Remaining"
                                 )
                         )
                 ) AS "31-60 Days",
             SUM (DECODE (SIGN (details."Days" - 91),
                          1, 0,
                          DECODE (SIGN (details."Days" -61),
                                  1, details."Amount_Remaining"
                                 )
                         )
                 ) AS "61-90 Days",
             SUM (DECODE (SIGN (details."Days" - 36500),
                          1, 0,
                          DECODE (SIGN (details."Days" - 91 ),
                                  1, details."Amount_Remaining"
                                 )
                         )
                 ) AS "Over 90 Days" 
        FROM (SELECT api.invoice_num "Invoice_Num",
                     api.invoice_date "Invoice_Date", aps.due_date "Due_Date",
                     ROUND (SYSDATE - api.invoice_date) "Days",
                     pv.segment1 "Vendor_Num", pv.vendor_name "Vendor_Name",
                     term.NAME "Payment_Terms",
                     api.invoice_currency_code "Invoice_Currency",
                     api.payment_currency_code "Payment_Currency",
                     aps.gross_amount "Invoice_Amount",
                     aps.amount_remaining "Amount_Remaining",
                       NVL (aps.amount_remaining, 0)
                     * NVL (api.exchange_rate, 1) "Amount_Remaining(Base)",
                     fu.user_name "User_Name"
                FROM ap.ap_payment_schedules_all aps,
                     ap.ap_invoices_all api,
                     po.po_vendors pv,
                     po.po_vendor_sites_all pvs,
                     ap.ap_terms_tl term,
                     apps.fnd_user fu
               WHERE aps.org_id = '&org_id'
                 AND aps.payment_status_flag IN ('N', 'P')
                 AND aps.invoice_id = api.invoice_id
                 AND api.cancelled_date IS NULL
                 AND aps.amount_remaining <> 0
                 AND api.vendor_id = pv.vendor_id
                 AND api.vendor_site_id = pvs.vendor_site_id
                 AND pv.vendor_id = pvs.vendor_id
                 AND api.terms_id = term.term_id
                 AND api.created_by = fu.user_id
                 /*AND DECODE ((SELECT DISTINCT aid.match_status_flag
                                         FROM ap.ap_invoice_distributions_all aid
                                        WHERE api.invoice_id = aid.invoice_id(+)),
                             'A', 'A',
                             'N', 'N',
                             'T', 'T',
                             'X'
                            ) <> 'X'*/
    ) details
    GROUP BY details."Vendor_Num",
             details."Vendor_Name",
             details."Invoice_Currency"
      HAVING SUM (details."Amount_Remaining") <> 0
    ORDER BY 1, 3;
  • 相关阅读:
    “神一般存在”的印度理工学院到底有多牛?
    MobaXterm
    VC Debug和Release区别
    Mock 模拟测试简介及 Mockito 使用入门
    JUnit单元测试教程(翻译自Java Code Geeks)
    JUnit4单元测试入门教程
    单元测试利器 JUnit 4
    深入探索 JUnit 4
    JUnit
    Java泛型之类型擦除
  • 原文地址:https://www.cnblogs.com/quanweiru/p/2827873.html
Copyright © 2020-2023  润新知