DBA Data[Home] [Help]

PACKAGE BODY: APPS.JE_JEHUIAGE_XMLP_PKG

Source


1 PACKAGE BODY JE_JEHUIAGE_XMLP_PKG AS
2 /* $Header: JEHUIAGEB.pls 120.2 2008/06/06 12:02:58 npannamp noship $ */
3   FUNCTION GET_BASE_CURR_DATA RETURN BOOLEAN IS
4     BASE_CURR AP_SYSTEM_PARAMETERS.BASE_CURRENCY_CODE%TYPE;
5     PREC FND_CURRENCIES.PRECISION%TYPE;
6     MIN_AU FND_CURRENCIES.MINIMUM_ACCOUNTABLE_UNIT%TYPE;
7     DESCR FND_CURRENCIES_VL.DESCRIPTION%TYPE;
8   BEGIN
9     BASE_CURR := '';
10     PREC := 0;
11     MIN_AU := 0;
12     DESCR := '';
13     SELECT
14       P.BASE_CURRENCY_CODE,
15       C.PRECISION,
16       NVL(C.MINIMUM_ACCOUNTABLE_UNIT
17          ,0),
18       C.DESCRIPTION
19     INTO BASE_CURR,PREC,MIN_AU,DESCR
20     FROM
21       AP_SYSTEM_PARAMETERS P,
22       FND_CURRENCIES_VL C
23     WHERE P.BASE_CURRENCY_CODE = C.CURRENCY_CODE;
24     C_BASE_CURRENCY_CODE := BASE_CURR;
25     C_BASE_PRECISION := PREC;
26     C_BASE_MIN_ACCT_UNIT := NVL(MIN_AU
27                                ,0);
28     C_BASE_DESCRIPTION := DESCR;
29     RETURN (TRUE);
30     RETURN NULL;
31   EXCEPTION
32     WHEN OTHERS THEN
33       RETURN (FALSE);
34   END GET_BASE_CURR_DATA;
35 
36   FUNCTION CUSTOM_INIT RETURN BOOLEAN IS
37     MINDAY NUMBER(10);
38     MAXDAY NUMBER(10);
39     L_SORT_OPTION AP_LOOKUP_CODES.DISPLAYED_FIELD%TYPE;
40     L_SUMMARY_OPTION AP_LOOKUP_CODES.DISPLAYED_FIELD%TYPE;
41     L_FORMAT_OPTION AP_LOOKUP_CODES.DISPLAYED_FIELD%TYPE;
42     L_NLS_ALL AP_LOOKUP_CODES.DISPLAYED_FIELD%TYPE;
43     L_INVOICE_TYPE AP_LOOKUP_CODES.DISPLAYED_FIELD%TYPE;
44     L_VENDOR_NAME PO_VENDORS.VENDOR_NAME%TYPE;
45   BEGIN
46     /*SRW.MESSAGE('260974'
47                ,'One')*/NULL;
48     BEGIN
49       SELECT
50         DISPLAYED_FIELD
51       INTO L_SORT_OPTION
52       FROM
53         AP_LOOKUP_CODES
54       WHERE LOOKUP_TYPE = 'AGING_SORT_OPTION'
55         AND LOOKUP_CODE = P_SORT_OPTION;
56       C_HEAD_SORT_OPTION := L_SORT_OPTION;
57     END;
58     /*SRW.MESSAGE('260974'
59                ,'Two')*/NULL;
60     BEGIN
61       SELECT
62         DISPLAYED_FIELD
63       INTO L_SUMMARY_OPTION
64       FROM
65         AP_LOOKUP_CODES
66       WHERE LOOKUP_TYPE = 'AGING_SUMMARY_OPTION'
67         AND LOOKUP_CODE = P_SUMMARY_OPTION;
68       C_HEAD_SUMMARY_OPTION := L_SUMMARY_OPTION;
69     END;
70     /*SRW.MESSAGE('260974'
71                ,'Three')*/NULL;
72     BEGIN
73       SELECT
74         DISPLAYED_FIELD
75       INTO L_FORMAT_OPTION
76       FROM
77         AP_LOOKUP_CODES
78       WHERE LOOKUP_TYPE = 'AGING_FORMAT_OPTION'
79         AND LOOKUP_CODE = P_FORMAT_OPTION;
80       C_HEAD_FORMAT_OPTION := L_FORMAT_OPTION;
81     END;
82     /*SRW.MESSAGE('260974'
83                ,'Four')*/NULL;
84     BEGIN
85       SELECT
86         DISPLAYED_FIELD
87       INTO L_NLS_ALL
88       FROM
89         AP_LOOKUP_CODES
90       WHERE LOOKUP_TYPE = 'NLS REPORT PARAMETER'
91         AND LOOKUP_CODE = 'ALL';
92     END;
93     /*SRW.MESSAGE('260974'
94                ,'Five')*/NULL;
95     BEGIN
96       IF (P_INVOICE_TYPE IS NULL) THEN
97         C_INVOICE_TYPE_SELECT := '%';
98         C_HEAD_INVOICE_TYPE := L_NLS_ALL;
99       ELSE
100         SELECT
101           DISPLAYED_FIELD
102         INTO L_INVOICE_TYPE
103         FROM
104           AP_LOOKUP_CODES
105         WHERE LOOKUP_TYPE = 'INVOICE TYPE'
106           AND LOOKUP_CODE = P_INVOICE_TYPE;
107         C_HEAD_INVOICE_TYPE := L_INVOICE_TYPE;
108         C_INVOICE_TYPE_SELECT := P_INVOICE_TYPE;
109       END IF;
110     END;
111     /*SRW.MESSAGE('260974'
112                ,'Six')*/NULL;
113     BEGIN
114       IF (P_VENDOR_ID IS NOT NULL) THEN
115         SELECT
116           VENDOR_NAME
117         INTO L_VENDOR_NAME
118         FROM
119           PO_VENDORS
120         WHERE VENDOR_ID = P_VENDOR_ID;
121         C_VENDOR_NAME_SELECT := L_VENDOR_NAME;
122         C_HEAD_VENDOR_NAME := L_VENDOR_NAME;
123         P_VENDOR_PREDICATE := 'AND V.vendor_id = ' || P_VENDOR_ID;
124       ELSE
125 	P_VENDOR_PREDICATE := ' ';
126         C_VENDOR_NAME_SELECT := '%';
127         C_HEAD_VENDOR_NAME := L_NLS_ALL;
128       END IF;
129     END;
130     /*SRW.MESSAGE('260974'
131                ,'Seven')*/NULL;
132     BEGIN
133       SELECT
134         MIN(DAYS_START),
135         MAX(DAYS_TO)
136       INTO MINDAY,MAXDAY
137       FROM
138         AP_AGING_PERIOD_LINES AAPL,
139         AP_AGING_PERIODS AAP
140       WHERE AAPL.AGING_PERIOD_ID = AAP.AGING_PERIOD_ID
141         AND UPPER(AAP.PERIOD_NAME) = UPPER(P_PERIOD_TYPE);
142       C_MINDAYS := MINDAY;
143       C_MAXDAYS := MAXDAY;
144     END;
145     /*SRW.MESSAGE('260974'
146                ,'Eight')*/NULL;
147     IF P_REPORT_TYPE = 'COMBINED' THEN
148       IF P_AMOUNT_DUE_LOW IS NOT NULL AND P_AMOUNT_DUE_HIGH IS NOT NULL THEN
149         P_AMOUNT_PREDICATE := 'AND (nvl(ps.amount_remaining, 0) * nvl(i.exchange_rate,1)) between ' || TO_CHAR(P_AMOUNT_DUE_LOW) || ' AND ' || TO_CHAR(P_AMOUNT_DUE_HIGH);
150         P_CHECK_AMOUNT_PREDICATE := 'AND nvl(ip.payment_base_amount,ip.amount) between ' || TO_CHAR(P_AMOUNT_DUE_LOW) || ' AND ' || TO_CHAR(P_AMOUNT_DUE_HIGH);
151       ELSIF P_AMOUNT_DUE_LOW IS NOT NULL AND P_AMOUNT_DUE_HIGH IS NULL THEN
152         P_AMOUNT_PREDICATE := 'AND (nvl(ps.amount_remaining, 0) * nvl(i.exchange_rate,1)) >= ' || TO_CHAR(P_AMOUNT_DUE_LOW);
153         P_CHECK_AMOUNT_PREDICATE := 'AND nvl(ip.payment_base_amount,ip.amount)  >= ' || TO_CHAR(P_AMOUNT_DUE_LOW);
154       ELSIF P_AMOUNT_DUE_LOW IS NULL AND P_AMOUNT_DUE_HIGH IS NOT NULL THEN
155         P_AMOUNT_PREDICATE := 'AND (nvl(ps.amount_remaining, 0) * nvl(i.exchange_rate,1)) <= ' || TO_CHAR(P_AMOUNT_DUE_HIGH);
156         P_CHECK_AMOUNT_PREDICATE := 'AND nvl(ip.payment_base_amount,ip.amount) <= ' || TO_CHAR(P_AMOUNT_DUE_HIGH);
157       ELSE
158 	P_CHECK_AMOUNT_PREDICATE := ' ';
159 	P_AMOUNT_PREDICATE := ' ';
160       END IF;
161       P_SELECT_CHECK_NUMBER := 'NULL';
162     ELSE
163       P_SELECT_CHECK_NUMBER := 'to_char(c.check_number)';
164       P_AMOUNT_PREDICATE := 'AND 1 = 2';
165     END IF;
166     /*SRW.MESSAGE('260974'
167                ,'Nine')*/NULL;
168     RETURN (TRUE);
169     RETURN NULL;
170   EXCEPTION
171     WHEN OTHERS THEN
172       /*SRW.MESSAGE('260974'
173                  ,'Yes it failed here')*/NULL;
174       RETURN (FALSE);
175   END CUSTOM_INIT;
176 
177   FUNCTION GET_COVER_PAGE_VALUES RETURN BOOLEAN IS
178     L_LEDGER_ID NUMBER;
179     L_LEGAL_ENTITY_ID NUMBER;
180     L_LEDGER_NAME GL_LEDGERS.NAME%TYPE;
181     L_LEGAL_ENTITY_NAME XLE_ENTITY_PROFILES.NAME%TYPE;
182     L_NLS_ALL AP_LOOKUP_CODES.DISPLAYED_FIELD%TYPE;
183   BEGIN
184     L_LEDGER_ID := P_LEDGER_ID;
185     L_LEGAL_ENTITY_ID := P_LEGAL_ENTITY_ID;
186     L_NLS_ALL := C_NLS_ALL;
187     SELECT
188       NAME
189     INTO L_LEDGER_NAME
190     FROM
191       GL_LEDGERS
192     WHERE LEDGER_ID = L_LEDGER_ID;
193     C_HEAD_LEDGER_NAME := L_LEDGER_NAME;
194     IF L_LEGAL_ENTITY_ID <> NULL THEN
195       SELECT
196         NAME
197       INTO L_LEGAL_ENTITY_NAME
198       FROM
199         XLE_ENTITY_PROFILES
200       WHERE LEGAL_ENTITY_ID = L_LEGAL_ENTITY_ID;
201       C_HEAD_LEGAL_ENTITY_NAME := L_LEGAL_ENTITY_NAME;
202     ELSE
203       C_HEAD_LEGAL_ENTITY_NAME := L_NLS_ALL;
204     END IF;
205     RETURN (TRUE);
206     RETURN NULL;
207   EXCEPTION
208     WHEN OTHERS THEN
209       RETURN (FALSE);
210   END GET_COVER_PAGE_VALUES;
211 
212   FUNCTION GET_NLS_STRINGS RETURN BOOLEAN IS
213     NLS_ALL AP_LOOKUP_CODES.DISPLAYED_FIELD%TYPE;
214     NLS_YES FND_LOOKUPS.MEANING%TYPE;
215     NLS_NO FND_LOOKUPS.MEANING%TYPE;
216   BEGIN
217     NLS_ALL := '';
218     NLS_YES := '';
219     NLS_NO := '';
220     SELECT
221       LY.MEANING,
222       LN.MEANING,
223       LA.DISPLAYED_FIELD
224     INTO NLS_YES,NLS_NO,NLS_ALL
225     FROM
226       FND_LOOKUPS LY,
227       FND_LOOKUPS LN,
228       AP_LOOKUP_CODES LA
229     WHERE LY.LOOKUP_TYPE = 'YES_NO'
230       AND LY.LOOKUP_CODE = 'Y'
231       AND LN.LOOKUP_TYPE = 'YES_NO'
232       AND LN.LOOKUP_CODE = 'N'
233       AND LA.LOOKUP_TYPE = 'NLS REPORT PARAMETER'
234       AND LA.LOOKUP_CODE = 'ALL';
235     C_NLS_YES := NLS_YES;
236     C_NLS_NO := NLS_NO;
237     C_NLS_ALL := NLS_ALL;
238     FND_MESSAGE.SET_NAME('SQLAP'
239                         ,'AP_APPRVL_NO_DATA');
240     C_NLS_NO_DATA_EXISTS := FND_MESSAGE.GET;
241     C_NLS_NO_DATA_EXISTS := C_NLS_NO_DATA_EXISTS;
242     FND_MESSAGE.SET_NAME('SQLAP'
243                         ,'AP_ALL_END_OF_REPORT');
244     C_NLS_END_OF_REPORT := FND_MESSAGE.GET;
245     C_NLS_END_OF_REPORT := C_NLS_END_OF_REPORT;
246     RETURN (TRUE);
247     RETURN NULL;
248   EXCEPTION
249     WHEN OTHERS THEN
250       RETURN (FALSE);
251   END GET_NLS_STRINGS;
252 
253   FUNCTION BEFOREREPORT RETURN BOOLEAN IS
254   BEGIN
255     DECLARE
256       INIT_FAILURE EXCEPTION;
257     BEGIN
258       P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
259       /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
260       IF (P_DEBUG_SWITCH = 'Y') THEN
261         /*SRW.MESSAGE('1'
262                    ,'After SRWINIT')*/NULL;
263       END IF;
264       IF (GET_COMPANY_NAME <> TRUE) THEN
265         RAISE INIT_FAILURE;
266       END IF;
267       IF (P_DEBUG_SWITCH = 'Y') THEN
268         /*SRW.MESSAGE('2'
269                    ,'After Get_Company_Name')*/NULL;
270       END IF;
271       IF (GET_NLS_STRINGS <> TRUE) THEN
272         RAISE INIT_FAILURE;
273       END IF;
274       IF (P_DEBUG_SWITCH = 'Y') THEN
275         /*SRW.MESSAGE('3'
276                    ,'After Get_NLS_Strings')*/NULL;
277       END IF;
278       IF (GET_BASE_CURR_DATA <> TRUE) THEN
279         RAISE INIT_FAILURE;
280       END IF;
281       IF (P_DEBUG_SWITCH = 'Y') THEN
282         /*SRW.MESSAGE('4'
283                    ,'After Get_Base_Curr_Data')*/NULL;
284       END IF;
285       IF (CUSTOM_INIT <> TRUE) THEN
286         RAISE INIT_FAILURE;
287       END IF;
288       IF (P_DEBUG_SWITCH = 'Y') THEN
289         /*SRW.MESSAGE('5'
290                    ,'After custom_init')*/NULL;
291       END IF;
292       IF (GET_COVER_PAGE_VALUES <> TRUE) THEN
293         RAISE INIT_FAILURE;
294       END IF;
295       IF (P_DEBUG_SWITCH = 'Y') THEN
296         /*SRW.MESSAGE('5'
297                    ,'After Get_Cover_Page_Values')*/NULL;
298       END IF;
299       SORT_BY_ALTERNATE_P;
300       IF P_DEBUG_SWITCH = 'Y' THEN
301         /*SRW.MESSAGE('7'
302                    ,'After Selecting Sort By Alternate Field')*/NULL;
303       END IF;
304       IF (SET_ORDER_BY <> TRUE) THEN
305         RAISE INIT_FAILURE;
306       END IF;
307       IF (P_DEBUG_SWITCH = 'Y') THEN
308         /*SRW.MESSAGE('8'
309                    ,'After set_order_by')*/NULL;
310       END IF;
311       IF (GET_PERIOD_INFO <> TRUE) THEN
312         RAISE INIT_FAILURE;
313       END IF;
314       IF (P_DEBUG_SWITCH = 'Y') THEN
315         /*SRW.MESSAGE('9'
316                    ,'After Get_period_info')*/NULL;
317       END IF;
318       IF (P_DEBUG_SWITCH = 'Y') THEN
319         /*SRW.BREAK*/NULL;
320       END IF;
321       IF P_DEBUG_SWITCH = 'Y' THEN
322         /*SRW.MESSAGE('1000'
323                    ,'Ledger ID' || P_LEDGER_ID)*/NULL;
324         /*SRW.MESSAGE('1001'
325                    ,'Legal Entity ID' || P_LEGAL_ENTITY_ID)*/NULL;
326         /*SRW.MESSAGE('1002'
327                    ,'Vendor Select' || C_VENDOR_NAME_SELECT)*/NULL;
328         /*SRW.MESSAGE('1003'
329                    ,'Invoice Select' || C_INVOICE_TYPE_SELECT)*/NULL;
330         /*SRW.MESSAGE('1004'
331                    ,'Currency Base Precision' || C_BASE_PRECISION)*/NULL;
332         /*SRW.MESSAGE('1005'
333                    ,'Currency Acct' || C_BASE_MIN_ACCT_UNIT)*/NULL;
334         /*SRW.MESSAGE('1006'
335                    ,'Base Curr Code' || C_BASE_CURRENCY_CODE)*/NULL;
336         /*SRW.MESSAGE('1007'
337                    ,'Min Days' || C_MINDAYS)*/NULL;
338         /*SRW.MESSAGE('1008'
339                    ,'Max Days' || C_MAXDAYS)*/NULL;
340         /*SRW.MESSAGE('1009'
341                    ,' Chk Amt Predicate' || P_CHECK_AMOUNT_PREDICATE)*/NULL;
342         /*SRW.MESSAGE('1010'
343                    ,'Order By' || P_ORDER_BY)*/NULL;
344         /*SRW.MESSAGE('1011'
345                    ,'Vendor Predicate' || P_VENDOR_PREDICATE)*/NULL;
346         /*SRW.MESSAGE('1012'
347                    ,'Sort Option' || P_SORT_OPTION)*/NULL;
348         /*SRW.MESSAGE('1013'
349                    ,'Sort By alternate' || SORT_BY_ALTERNATE)*/NULL;
350         /*SRW.MESSAGE('1014'
351                    ,'Check Number' || P_SELECT_CHECK_NUMBER)*/NULL;
352         /*SRW.MESSAGE('1015'
353                    ,'Amount Predicate' || P_AMOUNT_PREDICATE)*/NULL;
354       END IF;
355       RETURN (TRUE);
356     EXCEPTION
357       WHEN OTHERS THEN
358         /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
359     END;
360     RETURN (TRUE);
361   END BEFOREREPORT;
362 
363   FUNCTION AFTERREPORT RETURN BOOLEAN IS
364   BEGIN
365     BEGIN
366       /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
367     EXCEPTION
368       WHEN OTHERS THEN
369         /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
370     END;
371     RETURN (TRUE);
372   END AFTERREPORT;
373 
374   FUNCTION GET_COMPANY_NAME RETURN BOOLEAN IS
375     L_CHART_OF_ACCOUNTS_ID GL_LEDGERS.CHART_OF_ACCOUNTS_ID%TYPE;
376     L_NAME GL_LEDGERS.NAME%TYPE;
377     L_LEDGER_ID NUMBER;
378     L_REPORT_START_DATE DATE;
379   BEGIN
380     L_REPORT_START_DATE := SYSDATE;
381     L_LEDGER_ID := P_LEDGER_ID;
382     SELECT
383       NAME,
384       CHART_OF_ACCOUNTS_ID
385     INTO L_NAME,L_CHART_OF_ACCOUNTS_ID
386     FROM
387       GL_LEDGERS
388     WHERE LEDGER_ID = L_LEDGER_ID;
389     C_COMPANY_NAME_HEADER := L_NAME;
390     C_CHART_OF_ACCOUNTS_ID := L_CHART_OF_ACCOUNTS_ID;
391     C_REPORT_START_DATE := L_REPORT_START_DATE;
392     RETURN (TRUE);
393     RETURN NULL;
394   EXCEPTION
395     WHEN OTHERS THEN
396       RETURN (FALSE);
397   END GET_COMPANY_NAME;
398 
399   FUNCTION SET_ORDER_BY RETURN BOOLEAN IS
400   BEGIN
401     IF UPPER(P_SORT_OPTION) = 'VENDOR NAME' THEN
402       IF C_VENDOR_NAME_SELECT = '%' THEN
403         IF SORT_BY_ALTERNATE = 'Y' THEN
404           P_ORDER_BY := 'ORDER BY 4,8,11,17,19,23,15';
405         ELSE
406           P_ORDER_BY := 'ORDER BY 2,8,10,17,19,23,15';
407         END IF;
408       ELSE
409         IF SORT_BY_ALTERNATE = 'Y' THEN
413         END IF;
410           P_ORDER_BY := 'ORDER BY 3,8,11,17,19,23,15';
411         ELSE
412           P_ORDER_BY := 'ORDER BY 1,8,10,17,19,23,15';
414       END IF;
415     ELSIF UPPER(P_SORT_OPTION) = 'INVOICE_TYPE' THEN
416       IF C_VENDOR_NAME_SELECT = '%' THEN
417         IF SORT_BY_ALTERNATE = 'Y' THEN
418           P_ORDER_BY := 'ORDER BY 17,4,8,11,17,19,23,15';
419         ELSE
420           P_ORDER_BY := 'ORDER BY 17,2,8,10,17,19,23,15';
421         END IF;
422       ELSE
423         IF SORT_BY_ALTERNATE = 'Y' THEN
424           P_ORDER_BY := 'ORDER BY 17,3,8,11,17,19,23,15';
425         ELSE
426           P_ORDER_BY := 'ORDER BY 17,1,8,10,17,19,23,15';
427         END IF;
428       END IF;
429     ELSE
430       P_ORDER_BY := 'ORDER BY 2,8,10,17,19,23,15';
431     END IF;
432     RETURN (TRUE);
433     RETURN NULL;
434   EXCEPTION
435     WHEN OTHERS THEN
436       RETURN (FALSE);
437   END SET_ORDER_BY;
438 
439   FUNCTION GET_PERIOD_INFO RETURN BOOLEAN IS
440     L_PERIOD_DAYS_START AP_AGING_PERIOD_LINES.DAYS_START%TYPE;
441     L_PERIOD_DAYS_TO AP_AGING_PERIOD_LINES.DAYS_TO%TYPE;
442     L_PERIOD_SEQ_NUM AP_AGING_PERIOD_LINES.PERIOD_SEQUENCE_NUM%TYPE;
443     L_PERIOD_TITLE1 AP_AGING_PERIOD_LINES.REPORT_HEADING1%TYPE;
444     L_PERIOD_TITLE2 AP_AGING_PERIOD_LINES.REPORT_HEADING2%TYPE;
445     CURSOR PERIOD_INFO IS
446       SELECT
447         LINES.DAYS_START,
448         LINES.DAYS_TO,
449         LINES.PERIOD_SEQUENCE_NUM,
450         REPORT_HEADING1,
451         REPORT_HEADING2
452       FROM
453         AP_AGING_PERIOD_LINES LINES,
454         AP_AGING_PERIODS PERIODS
455       WHERE LINES.AGING_PERIOD_ID = PERIODS.AGING_PERIOD_ID
456         AND UPPER(PERIODS.PERIOD_NAME) = UPPER(P_PERIOD_TYPE)
457       ORDER BY
458         LINES.PERIOD_SEQUENCE_NUM;
459   BEGIN
460     OPEN PERIOD_INFO;
461     LOOP
462       FETCH PERIOD_INFO
463        INTO L_PERIOD_DAYS_START,L_PERIOD_DAYS_TO,L_PERIOD_SEQ_NUM,L_PERIOD_TITLE1,L_PERIOD_TITLE2;
464       EXIT WHEN (PERIOD_INFO%NOTFOUND);
465       IF (L_PERIOD_SEQ_NUM = 1) THEN
466         C_INV_DUE_1_HEAD_1 := L_PERIOD_TITLE1;
467         C_INV_DUE_1_HEAD_2 := L_PERIOD_TITLE2;
468         C_INV_DUE_1_RANGE_FR := L_PERIOD_DAYS_START;
469         C_INV_DUE_1_RANGE_TO := L_PERIOD_DAYS_TO;
470       END IF;
471       IF (L_PERIOD_SEQ_NUM = 2) THEN
472         C_INV_DUE_2_HEAD_1 := L_PERIOD_TITLE1;
473         C_INV_DUE_2_HEAD_2 := L_PERIOD_TITLE2;
474         C_INV_DUE_2_RANGE_FR := L_PERIOD_DAYS_START;
475         C_INV_DUE_2_RANGE_TO := L_PERIOD_DAYS_TO;
476       END IF;
477       IF (L_PERIOD_SEQ_NUM = 3) THEN
478         C_INV_DUE_3_HEAD_1 := L_PERIOD_TITLE1;
479         C_INV_DUE_3_HEAD_2 := L_PERIOD_TITLE2;
480         C_INV_DUE_3_RANGE_FR := L_PERIOD_DAYS_START;
481         C_INV_DUE_3_RANGE_TO := L_PERIOD_DAYS_TO;
482       END IF;
483       IF (L_PERIOD_SEQ_NUM = 4) THEN
484         C_INV_DUE_4_HEAD_1 := L_PERIOD_TITLE1;
485         C_INV_DUE_4_HEAD_2 := L_PERIOD_TITLE2;
486         C_INV_DUE_4_RANGE_FR := L_PERIOD_DAYS_START;
487         C_INV_DUE_4_RANGE_TO := L_PERIOD_DAYS_TO;
488       END IF;
489     END LOOP;
490     CLOSE PERIOD_INFO;
491     RETURN (TRUE);
492     RETURN NULL;
493   EXCEPTION
494     WHEN OTHERS THEN
495       RETURN (FALSE);
496   END GET_PERIOD_INFO;
497 
498   FUNCTION C_CONTACT_LINEFORMULA(C_CONTACT_SITE_ID IN NUMBER) RETURN VARCHAR2 IS
499   BEGIN
500     DECLARE
501       L_CONTACT_NAME VARCHAR2(160);
502       L_FIRST_NAME VARCHAR2(4);
503       L_LAST_NAME PO_VENDOR_CONTACTS.LAST_NAME%TYPE;
504       L_PHONE PO_VENDOR_CONTACTS.PHONE%TYPE;
505     BEGIN
506       SELECT
507         SUBSTR(FIRST_NAME
508               ,1
509               ,1),
510         LAST_NAME,
511         PHONE
512       INTO L_FIRST_NAME,L_LAST_NAME,L_PHONE
513       FROM
514         PO_VENDOR_CONTACTS
515       WHERE VENDOR_SITE_ID = C_CONTACT_SITE_ID
516         AND ROWNUM = 1;
517       IF (L_FIRST_NAME IS NOT NULL OR L_LAST_NAME IS NOT NULL OR L_PHONE IS NOT NULL) THEN
518         L_CONTACT_NAME := L_FIRST_NAME || '. ' || L_LAST_NAME || ' ' || L_PHONE;
519       END IF;
520       RETURN (L_CONTACT_NAME);
521     EXCEPTION
522       WHEN NO_DATA_FOUND THEN
523         NULL;
524     END;
525     RETURN NULL;
526   END C_CONTACT_LINEFORMULA;
527 
528   FUNCTION C_PERCENT_REMAININGFORMULA(C_AMT_DUE_ORIGINAL IN NUMBER
529                                      ,C_AMT_DUE_REMAINING IN NUMBER) RETURN NUMBER IS
530   BEGIN
531     DECLARE
532       L_CALCULATED_VALUE NUMBER(10,1);
533     BEGIN
534       IF (NVL(C_AMT_DUE_ORIGINAL
535          ,0) > 0 OR NVL(C_AMT_DUE_ORIGINAL
536          ,0) < 0) THEN
537         L_CALCULATED_VALUE := ROUND((NVL(C_AMT_DUE_REMAINING
538                                        ,0) / NVL(C_AMT_DUE_ORIGINAL
539                                        ,1)) * 100
540                                    ,1);
541         RETURN (L_CALCULATED_VALUE);
542       ELSE
543         RETURN (0);
544       END IF;
545     END;
546     RETURN NULL;
547   END C_PERCENT_REMAININGFORMULA;
548 
549   FUNCTION C_INV_DUE_AMT_1FORMULA(C_DAYS_PAST_DUE IN NUMBER
550                                  ,C_AMT_DUE_REMAINING IN NUMBER) RETURN NUMBER IS
551   BEGIN
552     BEGIN
553       IF (NVL(C_DAYS_PAST_DUE
554          ,0) >= C_INV_DUE_1_RANGE_FR AND NVL(C_DAYS_PAST_DUE
555          ,0) <= C_INV_DUE_1_RANGE_TO) THEN
556         RETURN (C_AMT_DUE_REMAINING);
557       ELSE
558         RETURN (0);
559       END IF;
560     END;
561     RETURN NULL;
562   END C_INV_DUE_AMT_1FORMULA;
563 
567     BEGIN
564   FUNCTION C_INV_DUE_AMT_2FORMULA(C_DAYS_PAST_DUE IN NUMBER
565                                  ,C_AMT_DUE_REMAINING IN NUMBER) RETURN NUMBER IS
566   BEGIN
568       IF (NVL(C_DAYS_PAST_DUE
569          ,0) >= C_INV_DUE_2_RANGE_FR AND NVL(C_DAYS_PAST_DUE
570          ,0) <= C_INV_DUE_2_RANGE_TO) THEN
571         RETURN (C_AMT_DUE_REMAINING);
572       ELSE
573         RETURN (0);
574       END IF;
575     END;
576     RETURN NULL;
577   END C_INV_DUE_AMT_2FORMULA;
578 
579   FUNCTION C_INV_DUE_AMT_3FORMULA(C_DAYS_PAST_DUE IN NUMBER
580                                  ,C_AMT_DUE_REMAINING IN NUMBER) RETURN NUMBER IS
581   BEGIN
582     BEGIN
583       IF (NVL(C_DAYS_PAST_DUE
584          ,0) >= C_INV_DUE_3_RANGE_FR AND NVL(C_DAYS_PAST_DUE
585          ,0) <= C_INV_DUE_3_RANGE_TO) THEN
586         RETURN (C_AMT_DUE_REMAINING);
587       ELSE
588         RETURN (0);
589       END IF;
590     END;
591     RETURN NULL;
592   END C_INV_DUE_AMT_3FORMULA;
593 
594   FUNCTION C_INV_DUE_AMT_4FORMULA(C_DAYS_PAST_DUE IN NUMBER
595                                  ,C_AMT_DUE_REMAINING IN NUMBER) RETURN NUMBER IS
596   BEGIN
597     BEGIN
598       IF (NVL(C_DAYS_PAST_DUE
599          ,0) >= C_INV_DUE_4_RANGE_FR AND NVL(C_DAYS_PAST_DUE
600          ,0) <= C_INV_DUE_4_RANGE_TO) THEN
601         RETURN (C_AMT_DUE_REMAINING);
602       ELSE
603         RETURN (0);
604       END IF;
605     END;
606     RETURN NULL;
607   END C_INV_DUE_AMT_4FORMULA;
608 
609   FUNCTION C_PER_V_INV_AMT_1FORMULA(C_SUM_V_INV_AMT_1 IN NUMBER
610                                    ,C_SUM_V_DUE_REMAINING IN NUMBER) RETURN NUMBER IS
611   BEGIN
612     DECLARE
613       L_PERCENT NUMBER(10) := 0;
614     BEGIN
615       L_PERCENT := (ROUND((NVL(C_SUM_V_INV_AMT_1
616                             ,0) * 100) / NVL(C_SUM_V_DUE_REMAINING
617                             ,1)
618                         ,2));
619       RETURN (L_PERCENT);
620     EXCEPTION
621       WHEN ZERO_DIVIDE THEN
622         RETURN (0);
623     END;
624     RETURN NULL;
625   END C_PER_V_INV_AMT_1FORMULA;
626 
627   FUNCTION C_PER_V_INV_AMT_2FORMULA(C_SUM_V_INV_AMT_2 IN NUMBER
628                                    ,C_SUM_V_DUE_REMAINING IN NUMBER) RETURN NUMBER IS
629   BEGIN
630     DECLARE
631       L_PERCENT NUMBER(10) := 0;
632     BEGIN
633       L_PERCENT := (ROUND((NVL(C_SUM_V_INV_AMT_2
634                             ,0) * 100) / NVL(C_SUM_V_DUE_REMAINING
635                             ,1)
636                         ,2));
637       RETURN (L_PERCENT);
638     EXCEPTION
639       WHEN ZERO_DIVIDE THEN
640         RETURN (0);
641     END;
642     RETURN NULL;
643   END C_PER_V_INV_AMT_2FORMULA;
644 
645   FUNCTION C_PER_V_INV_AMT_3FORMULA(C_SUM_V_INV_AMT_3 IN NUMBER
646                                    ,C_SUM_V_DUE_REMAINING IN NUMBER) RETURN NUMBER IS
647   BEGIN
648     DECLARE
649       L_PERCENT NUMBER(10) := 0;
650     BEGIN
651       L_PERCENT := (ROUND((NVL(C_SUM_V_INV_AMT_3
652                             ,0) * 100) / NVL(C_SUM_V_DUE_REMAINING
653                             ,1)
654                         ,2));
655       RETURN (L_PERCENT);
656     EXCEPTION
657       WHEN ZERO_DIVIDE THEN
658         RETURN (0);
659     END;
660     RETURN NULL;
661   END C_PER_V_INV_AMT_3FORMULA;
662 
663   FUNCTION C_PER_V_INV_AMT_4FORMULA(C_SUM_V_INV_AMT_4 IN NUMBER
664                                    ,C_SUM_V_DUE_REMAINING IN NUMBER) RETURN NUMBER IS
665   BEGIN
666     DECLARE
667       L_PERCENT NUMBER(10) := 0;
668     BEGIN
669       L_PERCENT := (ROUND((NVL(C_SUM_V_INV_AMT_4
670                             ,0) * 100) / NVL(C_SUM_V_DUE_REMAINING
671                             ,1)
672                         ,2));
673       RETURN (L_PERCENT);
674     EXCEPTION
675       WHEN ZERO_DIVIDE THEN
676         RETURN (0);
677     END;
678     RETURN NULL;
679   END C_PER_V_INV_AMT_4FORMULA;
680 
681   FUNCTION C_CHECK_DATA_CONVERTEDFORMULA(C_DATA_CONVERTED IN VARCHAR2) RETURN NUMBER IS
682   BEGIN
683     BEGIN
684       IF (C_DATA_CONVERTED = '*') THEN
685         C_REP_DATA_CONVERTED := '*';
686         RETURN (1);
687       ELSE
688         RETURN (0);
689       END IF;
690     END;
691     RETURN NULL;
692   END C_CHECK_DATA_CONVERTEDFORMULA;
693 
694   FUNCTION C_PER_INV_DUE_AMT_1FORMULA(C_SUM_INV_DUE_AMT_1 IN NUMBER
695                                      ,C_SUM_AMT_REMAINING IN NUMBER) RETURN NUMBER IS
696   BEGIN
697     DECLARE
698       L_PERCENT NUMBER(10) := 0;
699     BEGIN
700       L_PERCENT := ((NVL(C_SUM_INV_DUE_AMT_1
701                       ,0) * 100) / NVL(C_SUM_AMT_REMAINING
702                       ,1));
703       RETURN (L_PERCENT);
704     EXCEPTION
705       WHEN ZERO_DIVIDE THEN
706         RETURN (0);
707     END;
708     RETURN NULL;
709   END C_PER_INV_DUE_AMT_1FORMULA;
710 
711   FUNCTION C_PER_INV_DUE_AMT_2FORMULA(C_SUM_INV_DUE_AMT_2 IN NUMBER
712                                      ,C_SUM_AMT_REMAINING IN NUMBER) RETURN NUMBER IS
713   BEGIN
714     DECLARE
715       L_PERCENT NUMBER(10) := 0;
716     BEGIN
717       L_PERCENT := ((NVL(C_SUM_INV_DUE_AMT_2
718                       ,0) * 100) / NVL(C_SUM_AMT_REMAINING
719                       ,1));
720       RETURN (L_PERCENT);
721     EXCEPTION
722       WHEN ZERO_DIVIDE THEN
723         RETURN (0);
724     END;
725     RETURN NULL;
726   END C_PER_INV_DUE_AMT_2FORMULA;
727 
731     DECLARE
728   FUNCTION C_PER_INV_DUE_AMT_3FORMULA(C_SUM_INV_DUE_AMT_3 IN NUMBER
729                                      ,C_SUM_AMT_REMAINING IN NUMBER) RETURN NUMBER IS
730   BEGIN
732       L_PERCENT NUMBER(10) := 0;
733     BEGIN
734       L_PERCENT := ((NVL(C_SUM_INV_DUE_AMT_3
735                       ,0) * 100) / NVL(C_SUM_AMT_REMAINING
736                       ,1));
737       RETURN (L_PERCENT);
738     EXCEPTION
739       WHEN ZERO_DIVIDE THEN
740         RETURN (0);
741     END;
742     RETURN NULL;
743   END C_PER_INV_DUE_AMT_3FORMULA;
744 
745   FUNCTION C_PER_INV_DUE_AMT_4FORMULA(C_SUM_INV_DUE_AMT_4 IN NUMBER
746                                      ,C_SUM_AMT_REMAINING IN NUMBER) RETURN NUMBER IS
747   BEGIN
748     DECLARE
749       L_PERCENT NUMBER(10) := 0;
750     BEGIN
751       L_PERCENT := ((NVL(C_SUM_INV_DUE_AMT_4
752                       ,0) * 100) / NVL(C_SUM_AMT_REMAINING
753                       ,1));
754       RETURN (L_PERCENT);
755     EXCEPTION
756       WHEN ZERO_DIVIDE THEN
757         RETURN (0);
758     END;
759     RETURN NULL;
760   END C_PER_INV_DUE_AMT_4FORMULA;
761 
762   FUNCTION C_PGBRK_DATA_CONVERTEDFORMULA(C_SUM_DATA_CONVERTED IN NUMBER) RETURN VARCHAR2 IS
763   BEGIN
764     BEGIN
765       IF (NVL(C_SUM_DATA_CONVERTED
766          ,0) > 0) THEN
767         RETURN ('*');
768       ELSE
769         RETURN (' ');
770       END IF;
771     END;
772     RETURN NULL;
773   END C_PGBRK_DATA_CONVERTEDFORMULA;
774 
775   FUNCTION C_V_DATA_CONVERTEDFORMULA(C_SUM_V_DATA_CONVERTED IN NUMBER) RETURN VARCHAR2 IS
776   BEGIN
777     BEGIN
778       IF (NVL(C_SUM_V_DATA_CONVERTED
779          ,0) > 0) THEN
780         RETURN ('*');
781       ELSE
782         RETURN (' ');
783       END IF;
784     END;
785     RETURN NULL;
786   END C_V_DATA_CONVERTEDFORMULA;
787 
788   FUNCTION C_TOT_PER_INV_DUE_1FORMULA(C_TOT_INV_DUE_AMT_1 IN NUMBER
789                                      ,C_TOT_AMT_REMAINING IN NUMBER) RETURN NUMBER IS
790   BEGIN
791     DECLARE
792       L_PERCENT NUMBER(10) := 0;
793     BEGIN
794       L_PERCENT := ((NVL(C_TOT_INV_DUE_AMT_1
795                       ,0) * 100) / NVL(C_TOT_AMT_REMAINING
796                       ,1));
797       RETURN (L_PERCENT);
798     EXCEPTION
799       WHEN ZERO_DIVIDE THEN
800         RETURN (0);
801     END;
802     RETURN NULL;
803   END C_TOT_PER_INV_DUE_1FORMULA;
804 
805   FUNCTION C_TOT_PER_INV_DUE_2FORMULA(C_TOT_INV_DUE_AMT_2 IN NUMBER
806                                      ,C_TOT_AMT_REMAINING IN NUMBER) RETURN NUMBER IS
807   BEGIN
808     DECLARE
809       L_PERCENT NUMBER(10) := 0;
810     BEGIN
811       L_PERCENT := ((NVL(C_TOT_INV_DUE_AMT_2
812                       ,0) * 100) / NVL(C_TOT_AMT_REMAINING
813                       ,1));
814       RETURN (L_PERCENT);
815     EXCEPTION
816       WHEN ZERO_DIVIDE THEN
817         RETURN (0);
818     END;
819     RETURN NULL;
820   END C_TOT_PER_INV_DUE_2FORMULA;
821 
822   FUNCTION C_TOT_PER_INV_DUE_3FORMULA(C_TOT_INV_DUE_AMT_3 IN NUMBER
823                                      ,C_TOT_AMT_REMAINING IN NUMBER) RETURN NUMBER IS
824   BEGIN
825     DECLARE
826       L_PERCENT NUMBER(10) := 0;
827     BEGIN
828       L_PERCENT := ((NVL(C_TOT_INV_DUE_AMT_3
829                       ,0) * 100) / NVL(C_TOT_AMT_REMAINING
830                       ,1));
831       RETURN (L_PERCENT);
832     EXCEPTION
833       WHEN ZERO_DIVIDE THEN
834         RETURN (0);
835     END;
836     RETURN NULL;
837   END C_TOT_PER_INV_DUE_3FORMULA;
838 
839   FUNCTION C_TOT_PER_INV_DUE_4FORMULA(C_TOT_INV_DUE_AMT_4 IN NUMBER
840                                      ,C_TOT_AMT_REMAINING IN NUMBER) RETURN NUMBER IS
841   BEGIN
842     DECLARE
843       L_PERCENT NUMBER(10) := 0;
844     BEGIN
845       L_PERCENT := ((NVL(C_TOT_INV_DUE_AMT_4
846                       ,0) * 100) / NVL(C_TOT_AMT_REMAINING
847                       ,1));
848       RETURN (L_PERCENT);
849     EXCEPTION
850       WHEN ZERO_DIVIDE THEN
851         RETURN (0);
852     END;
853     RETURN NULL;
854   END C_TOT_PER_INV_DUE_4FORMULA;
855 
856   FUNCTION CF_SYSDATEFORMULA RETURN CHAR IS
857   BEGIN
858     RETURN (FND_DATE.DATE_TO_CHARDT(SYSDATE));
859   END CF_SYSDATEFORMULA;
860 
861   FUNCTION CF_DUE_DATEFORMULA(C_DUE_DATE IN VARCHAR2) RETURN CHAR IS
862   BEGIN
863     RETURN (FND_DATE.DATE_TO_CHARDATE(C_DUE_DATE));
864   END CF_DUE_DATEFORMULA;
865 
866   FUNCTION CHECK_AP_PROFILE RETURN BOOLEAN IS
867   BEGIN
868     DECLARE
869       L_PROFILE FND_PROFILE_OPTIONS.PROFILE_OPTION_NAME%TYPE;
870       L_ENDDATE FND_PROFILE_OPTIONS.END_DATE_ACTIVE%TYPE;
871     BEGIN
872       IF P_DEBUG_SWITCH = 'Y' THEN
873         /*SRW.MESSAGE(100
874                    ,'In Check_AP_PRofile')*/NULL;
875       END IF;
876       SELECT
877         NVL(PROFILE_OPTION_NAME
878            ,''),
879         END_DATE_ACTIVE
880       INTO L_PROFILE,L_ENDDATE
881       FROM
882         FND_PROFILE_OPTIONS
883       WHERE PROFILE_OPTION_NAME = 'AP_SORT_BY_ALTERNATE';
884       IF L_PROFILE = '' THEN
885         IF P_DEBUG_SWITCH = 'Y' THEN
886           /*SRW.MESSAGE(108
887                      ,'Profile Option is --')*/NULL;
888         END IF;
889         RETURN (FALSE);
890       ELSE
891         IF L_ENDDATE IS NULL THEN
892           IF P_DEBUG_SWITCH = 'Y' THEN
893             /*SRW.MESSAGE(105
894                        ,'End date is null')*/NULL;
895           END IF;
899             /*SRW.MESSAGE(106
896           RETURN (TRUE);
897         ELSE
898           IF P_DEBUG_SWITCH = 'Y' THEN
900                        ,'End date is not null')*/NULL;
901           END IF;
902           RETURN (FALSE);
903         END IF;
904       END IF;
905     EXCEPTION
906       WHEN NO_DATA_FOUND THEN
907         IF P_DEBUG_SWITCH = 'Y' THEN
908           /*SRW.MESSAGE(101
909                      ,'No Profile Found')*/NULL;
910         END IF;
911         RETURN (FALSE);
912       WHEN OTHERS THEN
913         IF P_DEBUG_SWITCH = 'Y' THEN
914           /*SRW.MESSAGE(107
915                      ,'Others - No Profile Found')*/NULL;
916         END IF;
917         RETURN (FALSE);
918     END;
919   END CHECK_AP_PROFILE;
920 
921   PROCEDURE SORT_BY_ALTERNATE_P IS
922   BEGIN
923     DECLARE
924       SQL_PROFILE VARCHAR2(1000);
925     BEGIN
926       IF CHECK_AP_PROFILE THEN
927         IF P_DEBUG_SWITCH = 'Y' THEN
928           /*SRW.MESSAGE(102
929                      ,'AP Profile Exists')*/NULL;
930         END IF;
931         BEGIN
932           /*SRW.REFERENCE(SORT_BY_ALTERNATE)*/NULL;
933           SORT_BY_ALTERNATE := FND_PROFILE.VALUE('AP_SORT_BY_ALTERNATE');
934         EXCEPTION
935           WHEN OTHERS THEN
936             SORT_BY_ALTERNATE := 'N';
937         END;
938       ELSE
939         IF P_DEBUG_SWITCH = 'Y' THEN
940           /*SRW.MESSAGE(103
941                      ,'Sort BY Altenate - AP Profile does not Exists')*/NULL;
942         END IF;
943         BEGIN
944           SQL_PROFILE := 'SELECT nvl(SORT_BY_ALTERNATE_FIELD ,' || '''N''' || ') INTO :SORT_BY_ALTERNATE FROM AP_SYSTEM_PARAMETERS';
945           EXECUTE IMMEDIATE
946             SQL_PROFILE;
947           /*SRW.MESSAGE(110
948                      ,'Sort By Alternate' || SORT_BY_ALTERNATE)*/NULL;
949         EXCEPTION
950           WHEN OTHERS THEN
951             /*SRW.MESSAGE(104
952                        ,' Error while retrieving sort_by_alternate value')*/NULL;
953         END;
954       END IF;
955     END;
956   END SORT_BY_ALTERNATE_P;
957 
958   FUNCTION C_BASE_CURRENCY_CODE_P RETURN VARCHAR2 IS
959   BEGIN
960     RETURN C_BASE_CURRENCY_CODE;
961   END C_BASE_CURRENCY_CODE_P;
962 
963   FUNCTION C_BASE_PRECISION_P RETURN NUMBER IS
964   BEGIN
965     RETURN C_BASE_PRECISION;
966   END C_BASE_PRECISION_P;
967 
968   FUNCTION C_BASE_MIN_ACCT_UNIT_P RETURN NUMBER IS
969   BEGIN
970     RETURN C_BASE_MIN_ACCT_UNIT;
971   END C_BASE_MIN_ACCT_UNIT_P;
972 
973   FUNCTION C_BASE_DESCRIPTION_P RETURN VARCHAR2 IS
974   BEGIN
975     RETURN C_BASE_DESCRIPTION;
976   END C_BASE_DESCRIPTION_P;
977 
978   FUNCTION C_COMPANY_NAME_HEADER_P RETURN VARCHAR2 IS
979   BEGIN
980     RETURN C_COMPANY_NAME_HEADER;
981   END C_COMPANY_NAME_HEADER_P;
982 
983   FUNCTION C_REPORT_START_DATE_P RETURN DATE IS
984   BEGIN
985     RETURN C_REPORT_START_DATE;
986   END C_REPORT_START_DATE_P;
987 
988   FUNCTION C_NLS_YES_P RETURN VARCHAR2 IS
989   BEGIN
990     RETURN C_NLS_YES;
991   END C_NLS_YES_P;
992 
993   FUNCTION C_NLS_NO_P RETURN VARCHAR2 IS
994   BEGIN
995     RETURN C_NLS_NO;
996   END C_NLS_NO_P;
997 
998   FUNCTION C_NLS_ALL_P RETURN VARCHAR2 IS
999   BEGIN
1000     RETURN C_NLS_ALL;
1001   END C_NLS_ALL_P;
1002 
1003   FUNCTION C_NLS_NO_DATA_EXISTS_P RETURN VARCHAR2 IS
1004   BEGIN
1005     RETURN C_NLS_NO_DATA_EXISTS;
1006   END C_NLS_NO_DATA_EXISTS_P;
1007 
1008   FUNCTION C_REPORT_RUN_TIME_P RETURN VARCHAR2 IS
1009   BEGIN
1010     RETURN C_REPORT_RUN_TIME;
1011   END C_REPORT_RUN_TIME_P;
1012 
1013   FUNCTION C_CHART_OF_ACCOUNTS_ID_P RETURN NUMBER IS
1014   BEGIN
1015     RETURN C_CHART_OF_ACCOUNTS_ID;
1016   END C_CHART_OF_ACCOUNTS_ID_P;
1017 
1018   FUNCTION C_VENDOR_NAME_SELECT_P RETURN VARCHAR2 IS
1019   BEGIN
1020     RETURN C_VENDOR_NAME_SELECT;
1021   END C_VENDOR_NAME_SELECT_P;
1022 
1023   FUNCTION C_INVOICE_TYPE_SELECT_P RETURN VARCHAR2 IS
1024   BEGIN
1025     RETURN C_INVOICE_TYPE_SELECT;
1026   END C_INVOICE_TYPE_SELECT_P;
1027 
1028   FUNCTION C_MINDAYS_P RETURN NUMBER IS
1029   BEGIN
1030     RETURN C_MINDAYS;
1031   END C_MINDAYS_P;
1032 
1033   FUNCTION C_MAXDAYS_P RETURN NUMBER IS
1034   BEGIN
1035     RETURN C_MAXDAYS;
1036   END C_MAXDAYS_P;
1037 
1038   FUNCTION C_INV_DUE_1_HEAD_1_P RETURN VARCHAR2 IS
1039   BEGIN
1040     RETURN C_INV_DUE_1_HEAD_1;
1041   END C_INV_DUE_1_HEAD_1_P;
1042 
1043   FUNCTION C_INV_DUE_1_HEAD_2_P RETURN VARCHAR2 IS
1044   BEGIN
1045     RETURN C_INV_DUE_1_HEAD_2;
1046   END C_INV_DUE_1_HEAD_2_P;
1047 
1048   FUNCTION C_INV_DUE_2_HEAD_1_P RETURN VARCHAR2 IS
1049   BEGIN
1050     RETURN C_INV_DUE_2_HEAD_1;
1051   END C_INV_DUE_2_HEAD_1_P;
1052 
1053   FUNCTION C_INV_DUE_2_HEAD_2_P RETURN VARCHAR2 IS
1054   BEGIN
1055     RETURN C_INV_DUE_2_HEAD_2;
1056   END C_INV_DUE_2_HEAD_2_P;
1057 
1058   FUNCTION C_INV_DUE_3_HEAD_1_P RETURN VARCHAR2 IS
1059   BEGIN
1060     RETURN C_INV_DUE_3_HEAD_1;
1061   END C_INV_DUE_3_HEAD_1_P;
1062 
1063   FUNCTION C_INV_DUE_3_HEAD_2_P RETURN VARCHAR2 IS
1064   BEGIN
1065     RETURN C_INV_DUE_3_HEAD_2;
1066   END C_INV_DUE_3_HEAD_2_P;
1067 
1068   FUNCTION C_INV_DUE_4_HEAD_1_P RETURN VARCHAR2 IS
1069   BEGIN
1070     RETURN C_INV_DUE_4_HEAD_1;
1071   END C_INV_DUE_4_HEAD_1_P;
1072 
1073   FUNCTION C_INV_DUE_4_HEAD_2_P RETURN VARCHAR2 IS
1074   BEGIN
1075     RETURN C_INV_DUE_4_HEAD_2;
1076   END C_INV_DUE_4_HEAD_2_P;
1077 
1078   FUNCTION C_INV_DUE_1_RANGE_FR_P RETURN NUMBER IS
1079   BEGIN
1080     RETURN C_INV_DUE_1_RANGE_FR;
1081   END C_INV_DUE_1_RANGE_FR_P;
1082 
1083   FUNCTION C_INV_DUE_1_RANGE_TO_P RETURN NUMBER IS
1084   BEGIN
1085     RETURN C_INV_DUE_1_RANGE_TO;
1086   END C_INV_DUE_1_RANGE_TO_P;
1087 
1088   FUNCTION C_INV_DUE_2_RANGE_FR_P RETURN NUMBER IS
1089   BEGIN
1090     RETURN C_INV_DUE_2_RANGE_FR;
1091   END C_INV_DUE_2_RANGE_FR_P;
1092 
1093   FUNCTION C_INV_DUE_2_RANGE_TO_P RETURN NUMBER IS
1094   BEGIN
1095     RETURN C_INV_DUE_2_RANGE_TO;
1096   END C_INV_DUE_2_RANGE_TO_P;
1097 
1098   FUNCTION C_INV_DUE_3_RANGE_FR_P RETURN NUMBER IS
1099   BEGIN
1100     RETURN C_INV_DUE_3_RANGE_FR;
1101   END C_INV_DUE_3_RANGE_FR_P;
1102 
1103   FUNCTION C_INV_DUE_3_RANGE_TO_P RETURN NUMBER IS
1104   BEGIN
1105     RETURN C_INV_DUE_3_RANGE_TO;
1106   END C_INV_DUE_3_RANGE_TO_P;
1107 
1108   FUNCTION C_INV_DUE_4_RANGE_FR_P RETURN NUMBER IS
1109   BEGIN
1110     RETURN C_INV_DUE_4_RANGE_FR;
1111   END C_INV_DUE_4_RANGE_FR_P;
1112 
1113   FUNCTION C_INV_DUE_4_RANGE_TO_P RETURN NUMBER IS
1114   BEGIN
1115     RETURN C_INV_DUE_4_RANGE_TO;
1116   END C_INV_DUE_4_RANGE_TO_P;
1117 
1118   FUNCTION C_HEAD_INVOICE_TYPE_P RETURN VARCHAR2 IS
1119   BEGIN
1120     RETURN C_HEAD_INVOICE_TYPE;
1121   END C_HEAD_INVOICE_TYPE_P;
1122 
1123   FUNCTION C_HEAD_SORT_OPTION_P RETURN VARCHAR2 IS
1124   BEGIN
1125     RETURN C_HEAD_SORT_OPTION;
1126   END C_HEAD_SORT_OPTION_P;
1127 
1128   FUNCTION C_HEAD_VENDOR_NAME_P RETURN VARCHAR2 IS
1129   BEGIN
1130     RETURN C_HEAD_VENDOR_NAME;
1131   END C_HEAD_VENDOR_NAME_P;
1132 
1133   FUNCTION C_REP_DATA_CONVERTED_P RETURN VARCHAR2 IS
1134   BEGIN
1135     RETURN C_REP_DATA_CONVERTED;
1136   END C_REP_DATA_CONVERTED_P;
1137 
1138   FUNCTION C_NLS_END_OF_REPORT_P RETURN VARCHAR2 IS
1139   BEGIN
1140     RETURN C_NLS_END_OF_REPORT;
1141   END C_NLS_END_OF_REPORT_P;
1142 
1143   FUNCTION C_HEAD_SUMMARY_OPTION_P RETURN VARCHAR2 IS
1144   BEGIN
1145     RETURN C_HEAD_SUMMARY_OPTION;
1146   END C_HEAD_SUMMARY_OPTION_P;
1147 
1148   FUNCTION C_HEAD_FORMAT_OPTION_P RETURN VARCHAR2 IS
1149   BEGIN
1150     RETURN C_HEAD_FORMAT_OPTION;
1151   END C_HEAD_FORMAT_OPTION_P;
1152 
1153   FUNCTION C_HEAD_LEDGER_NAME_P RETURN VARCHAR2 IS
1154   BEGIN
1155     RETURN C_HEAD_LEDGER_NAME;
1156   END C_HEAD_LEDGER_NAME_P;
1157 
1158   FUNCTION C_HEAD_LEGAL_ENTITY_NAME_P RETURN VARCHAR2 IS
1159   BEGIN
1160     RETURN C_HEAD_LEGAL_ENTITY_NAME;
1161   END C_HEAD_LEGAL_ENTITY_NAME_P;
1162 
1163 END JE_JEHUIAGE_XMLP_PKG;
1164 
1165