DBA Data[Home] [Help]

PACKAGE BODY: APPS.GMF_AR_INVOICE_HEADER_INFO

Source


1 PACKAGE BODY GMF_AR_INVOICE_HEADER_INFO AS
2 /* $Header: gmfinvhb.pls 115.1 2002/11/11 00:39:32 rseshadr ship $ */
3   CURSOR INVOICE_HEADER(STARTDATE   DATE,
4                         ENDDATE     DATE,
5                         INVOICEID   NUMBER,
6                         INVOICENUM  NUMBER,
7                         INVOICEDATE DATE) IS
8   SELECT API.INVOICE_ID,
9          API.LAST_UPDATE_DATE,
10          API.VENDOR_ID,
11          API.INVOICE_NUM,
12          API.INVOICE_AMOUNT,
13          API.INVOICE_DATE,
14          API.SOURCE,
15          API.INVOICE_TYPE_LOOKUP_CODE,
16          API.DESCRIPTION,
17          API.INVOICE_CURRENCY_CODE,
18          APT.NAME,
19          NVL(API.INVOICE_AMOUNT,0) + NVL(API.VENDOR_PREPAY_AMOUNT,0) -
20          NVL(API.AMOUNT_PAID,0) - NVL(API.DISCOUNT_AMOUNT_TAKEN,0)
21   FROM   AP_INVOICES_ALL API,
22          AP_TERMS    APT
23   WHERE  API.INVOICE_ID   =	NVL(INVOICEID,API.INVOICE_ID)	    AND
24          API.INVOICE_DATE =	NVL(INVOICEDATE,API.INVOICE_DATE) AND
25          API.CREATION_DATE	BETWEEN
26               NVL(STARTDATE,API.CREATION_DATE)	AND
27               NVL(ENDDATE,API.CREATION_DATE)
28               AND API.TERMS_ID = APT.TERM_ID;
29 
30 PROCEDURE GET_INVOICE_HEADER_INFO
31         (STARTDATE             IN            DATE,
32          ENDDATE               IN            DATE,
33          INVOICEID 	       IN OUT NOCOPY NUMBER,
34          LASTUPDATEDATE        OUT    NOCOPY DATE,
35          VENDORID 	       OUT    NOCOPY NUMBER,
36          INVOICENUM 	       IN OUT NOCOPY VARCHAR2,
37          INVOICEAMOUNT 	       OUT    NOCOPY NUMBER,
38          INVOICEDATE 	       IN OUT NOCOPY DATE,
39          SOURC 		       OUT    NOCOPY VARCHAR2,
40          INVOICETYPELOOKUPCODE OUT    NOCOPY VARCHAR2,
41          DESCR 		       OUT    NOCOPY VARCHAR2,
42          CURRENCYCODE          OUT    NOCOPY VARCHAR2,
43          TERMSCODE             OUT    NOCOPY VARCHAR2,
44          HOLDREASON            OUT    NOCOPY VARCHAR2,
45          BALANCEAMOUNT         IN OUT NOCOPY NUMBER,
46          ROW_TO_FETCH          IN OUT NOCOPY NUMBER,
47          STATUSCODE            OUT    NOCOPY NUMBER)   IS
48 BEGIN
49   IF NOT INVOICE_HEADER%ISOPEN THEN
50     OPEN INVOICE_HEADER(STARTDATE,
51 										    ENDDATE,
52 										    INVOICEID,
53 										    INVOICENUM,
54 										    INVOICEDATE);
55   END IF;
56 
57   FETCH INVOICE_HEADER
58   INTO  INVOICEID,
59 				LASTUPDATEDATE,
60 				VENDORID,
61 				INVOICENUM,
62 				INVOICEAMOUNT,
63 				INVOICEDATE,
64 				SOURC,
65 				INVOICETYPELOOKUPCODE,
66 				DESCR,
67 				CURRENCYCODE,
68 				TERMSCODE,
69 				BALANCEAMOUNT;
70 
71   IF INVOICE_HEADER%NOTFOUND THEN
72 			STATUSCODE := 100;
73 	END IF;
74 
75 	IF INVOICE_HEADER%NOTFOUND OR ROW_TO_FETCH = 1 THEN
76     CLOSE INVOICE_HEADER;
77   END IF;
78 
79   SELECT COUNT(*)
80   INTO   HOLDREASON
81   FROM   AP_HOLDS_ALL
82   WHERE  INVOICE_ID = INVOICEID
83   AND    RELEASE_LOOKUP_CODE IS NULL;
84 
85   EXCEPTION
86     WHEN OTHERS THEN
87       STATUSCODE := SQLCODE;
88 
89       SELECT BALANCEAMOUNT - NVL(SUM(PREPAYMENT_AMOUNT_APPLIED),0)
90       INTO   BALANCEAMOUNT
91       FROM   AP_INVOICE_PREPAYS_ALL
92       WHERE  INVOICE_ID = INVOICEID;
93 
94 	END;	/* END OF PROCEDURE GET_INVOICE_HEADER_INFO*/
95 END GMF_AR_INVOICE_HEADER_INFO;