[Home] [Help]
PACKAGE BODY: APPS.AR_ARXKIR_XMLP_PKG
Source
1 PACKAGE BODY AR_ARXKIR_XMLP_PKG AS
2 /* $Header: ARXKIRB.pls 120.0 2007/12/27 13:54:51 abraghun noship $ */
3 FUNCTION C_1FORMULA(CURRENT_PERIOD IN VARCHAR2
4 ,PRIOR_PERIOD IN VARCHAR2
5 ,CURRENT_YEAR IN NUMBER
6 ,SET_OF_BOOKS_ID_LP IN VARCHAR2
7 ,CURRENT_END_DATE IN DATE
8 ,CURRENT_START_DATE IN DATE
9 ,PRIOR_END_DATE IN DATE
10 ,PRIOR_START_DATE IN DATE) RETURN NUMBER IS
11 BEGIN
12 DECLARE
13 CURRENT_CUSTOMER_COUNT NUMBER(9,2);
14 PRIOR_CUSTOMER_COUNT NUMBER(9,2);
15 CURRENT_YEAR_CUSTOMER_COUNT NUMBER(9,2);
16 CURRENT_LOCATION_COUNT NUMBER(9,2);
17 PRIOR_LOCATION_COUNT NUMBER(9,2);
18 PRIOR_YEAR_COUNT NUMBER(9,2);
19 CURRENT_ON_HOLD_Y_COUNT NUMBER(9,2);
20 PRIOR_ON_HOLD_Y_COUNT NUMBER(9,2);
21 YEAR_ON_HOLD_Y_COUNT NUMBER(9,2);
22 CURRENT_ON_HOLD_N_COUNT NUMBER(9,2);
23 PRIOR_ON_HOLD_N_COUNT NUMBER(9,2);
24 YEAR_ON_HOLD_N_COUNT NUMBER(9,2);
25 CURRENT_PAY_PER_DAY NUMBER(9,2);
26 PRIOR_PAY_PER_DAY NUMBER(9,2);
27 CURRENT_BATCH_PER_DAY NUMBER(9,2);
28 PRIOR_BATCH_PER_DAY NUMBER(9,2);
29 CURRENT_PAY_PER_BATCH NUMBER(9,2);
30 PRIOR_PAY_PER_BATCH NUMBER(9,2);
31 BEGIN
32 SELECT
33 NVL(SUM(DECODE(GPS.PERIOD_NAME
34 ,CURRENT_PERIOD
35 ,1
36 ,0))
37 ,0) CURRENT_CUSTOMER_COUNT,
38 NVL(SUM(DECODE(GPS.PERIOD_NAME
39 ,PRIOR_PERIOD
40 ,1
41 ,0))
42 ,0) PRIOR_CUSTOMER_COUNT,
43 NVL(SUM(DECODE(GPS.PERIOD_YEAR
44 ,CURRENT_YEAR
45 ,1
46 ,0))
47 ,0) CURRENT_YEAR_CUSTOMER_COUNT
48 INTO CURRENT_CUSTOMER_COUNT,PRIOR_CUSTOMER_COUNT,CURRENT_YEAR_CUSTOMER_COUNT
49 FROM
50 HZ_CUST_ACCOUNTS C,
51 GL_PERIOD_STATUSES GPS
52 WHERE C.CREATION_DATE BETWEEN GPS.START_DATE
53 AND GPS.END_DATE
54 AND GPS.APPLICATION_ID = 222
55 AND GPS.SET_OF_BOOKS_ID = SET_OF_BOOKS_ID_LP
56 AND ( GPS.PERIOD_NAME = CURRENT_PERIOD
57 OR GPS.PERIOD_NAME = PRIOR_PERIOD )
58 AND C.CREATION_DATE BETWEEN GPS.START_DATE
59 AND GPS.END_DATE;
60 P_CURRENT_CUSTOMER_COUNT := CURRENT_CUSTOMER_COUNT;
61 P_PRIOR_CUSTOMER_COUNT := PRIOR_CUSTOMER_COUNT;
62 P_CURRENT_YEAR_CUSTOMER_COUNT := CURRENT_YEAR_CUSTOMER_COUNT;
63 SELECT
64 NVL(SUM(DECODE(GPS.PERIOD_NAME
65 ,CURRENT_PERIOD
66 ,1
67 ,0))
68 ,0) CURRENT_LOCATION_COUNT,
69 NVL(SUM(DECODE(GPS.PERIOD_NAME
70 ,PRIOR_PERIOD
71 ,1
72 ,0))
73 ,0) PRIOR_LOCATION_COUNT,
74 NVL(SUM(DECODE(GPS.PERIOD_YEAR
75 ,CURRENT_YEAR
76 ,1
77 ,0))
78 ,0) PRIOR_YEAR_COUNT
79 INTO CURRENT_LOCATION_COUNT,PRIOR_LOCATION_COUNT,PRIOR_YEAR_COUNT
80 FROM
81 HZ_CUST_ACCT_SITES A,
82 GL_PERIOD_STATUSES GPS
83 WHERE A.CREATION_DATE BETWEEN GPS.START_DATE
84 AND GPS.END_DATE
85 AND GPS.SET_OF_BOOKS_ID = SET_OF_BOOKS_ID_LP
86 AND GPS.APPLICATION_ID = 222
87 AND ( GPS.PERIOD_NAME = CURRENT_PERIOD
88 OR GPS.PERIOD_NAME = PRIOR_PERIOD );
89 P_CURRENT_LOCATION_COUNT := CURRENT_LOCATION_COUNT;
90 P_PRIOR_LOCATION_COUNT := PRIOR_LOCATION_COUNT;
91 P_PRIOR_YEAR_COUNT := PRIOR_YEAR_COUNT;
92 SELECT
93 NVL(SUM(DECODE(GPS.PERIOD_NAME
94 ,CURRENT_PERIOD
95 ,1
96 ,0))
97 ,0) CURRENT_ON_HOLD_Y_COUNT,
98 NVL(SUM(DECODE(GPS.PERIOD_NAME
99 ,PRIOR_PERIOD
100 ,1
101 ,0))
102 ,0) PRIOR_ON_HOLD_Y_COUNT,
103 NVL(SUM(DECODE(GPS.PERIOD_YEAR
104 ,CURRENT_YEAR
105 ,1
106 ,0))
107 ,0) YEAR_ON_HOLD_Y_COUNT
108 INTO CURRENT_ON_HOLD_Y_COUNT,PRIOR_ON_HOLD_Y_COUNT,YEAR_ON_HOLD_Y_COUNT
109 FROM
110 AR_CREDIT_HISTORIES CH,
111 GL_PERIOD_STATUSES GPS
112 WHERE CH.CREATION_DATE BETWEEN GPS.START_DATE
113 AND GPS.END_DATE
114 AND CH.ON_HOLD = 'Y'
115 AND GPS.SET_OF_BOOKS_ID = SET_OF_BOOKS_ID_LP
116 AND GPS.APPLICATION_ID = 222
117 AND ( GPS.PERIOD_NAME = CURRENT_PERIOD
118 OR GPS.PERIOD_NAME = PRIOR_PERIOD );
119 P_CURRENT_ON_HOLD_Y_COUNT := CURRENT_ON_HOLD_Y_COUNT;
120 P_PRIOR_ON_HOLD_Y_COUNT := PRIOR_ON_HOLD_Y_COUNT;
121 P_YEAR_ON_HOLD_Y_COUNT := YEAR_ON_HOLD_Y_COUNT;
122 SELECT
123 NVL(SUM(DECODE(GPS.PERIOD_NAME
124 ,CURRENT_PERIOD
125 ,1
126 ,0))
127 ,0) CURRENT_ON_HOLD_N_COUNT,
128 NVL(SUM(DECODE(GPS.PERIOD_NAME
129 ,PRIOR_PERIOD
130 ,1
131 ,0))
132 ,0) PRIOR_ON_HOLD_N_COUNT,
133 NVL(SUM(DECODE(GPS.PERIOD_YEAR
134 ,CURRENT_YEAR
135 ,1
136 ,0))
137 ,0) YEAR_ON_HOLD_N_COUNT
138 INTO CURRENT_ON_HOLD_N_COUNT,PRIOR_ON_HOLD_N_COUNT,YEAR_ON_HOLD_N_COUNT
139 FROM
140 AR_CREDIT_HISTORIES CH,
141 GL_PERIOD_STATUSES GPS
142 WHERE CH.CREATION_DATE BETWEEN GPS.START_DATE
143 AND GPS.END_DATE
144 AND CH.ON_HOLD = 'N'
145 AND GPS.SET_OF_BOOKS_ID = SET_OF_BOOKS_ID_LP
146 AND GPS.APPLICATION_ID = 222
147 AND ( GPS.PERIOD_NAME = CURRENT_PERIOD
148 OR GPS.PERIOD_NAME = PRIOR_PERIOD );
149 P_CURRENT_ON_HOLD_N_COUNT := CURRENT_ON_HOLD_N_COUNT;
150 P_PRIOR_ON_HOLD_N_COUNT := PRIOR_ON_HOLD_N_COUNT;
151 P_YEAR_ON_HOLD_N_COUNT := YEAR_ON_HOLD_N_COUNT;
152 SELECT
153 ROUND(NVL(SUM(DECODE(GPS.PERIOD_NAME
154 ,CURRENT_PERIOD
155 ,1
156 ,0))
157 ,0) / ((CURRENT_END_DATE) - (CURRENT_START_DATE))
158 ,1) CURRENT_PAY_PER_DAY,
159 ROUND(NVL(SUM(DECODE(GPS.PERIOD_NAME
160 ,PRIOR_PERIOD
161 ,1
162 ,0))
163 ,0) / ((PRIOR_END_DATE) - (PRIOR_START_DATE))
164 ,1) PRIOR_PAY_PER_DAY
165 INTO CURRENT_PAY_PER_DAY,PRIOR_PAY_PER_DAY
166 FROM
167 AR_CASH_RECEIPTS CR,
168 AR_RECEIPT_METHODS RM,
169 AR_RECEIPT_CLASSES RC,
170 AR_CASH_RECEIPT_HISTORY CRH,
171 GL_PERIOD_STATUSES GPS
172 WHERE CR.RECEIPT_METHOD_ID = RM.RECEIPT_METHOD_ID
173 AND RM.RECEIPT_CLASS_ID = RC.RECEIPT_CLASS_ID
174 AND CR.CASH_RECEIPT_ID = CRH.CASH_RECEIPT_ID
175 AND CRH.FIRST_POSTED_RECORD_FLAG = 'Y'
176 AND RC.CREATION_METHOD_CODE = 'MANUAL'
177 AND GPS.SET_OF_BOOKS_ID = SET_OF_BOOKS_ID_LP
178 AND GPS.APPLICATION_ID = 222
179 AND ( GPS.PERIOD_NAME = CURRENT_PERIOD
180 OR GPS.PERIOD_NAME = PRIOR_PERIOD )
181 AND CRH.GL_DATE BETWEEN GPS.START_DATE
182 AND GPS.END_DATE
183 AND CR.STATUS NOT IN ( 'NSF' , 'REV' , 'STOP' );
184 P_CURRENT_PAY_PER_DAY := CURRENT_PAY_PER_DAY;
185 P_PRIOR_PAY_PER_DAY := PRIOR_PAY_PER_DAY;
186 SELECT
187 NVL(ROUND(SUM(DECODE(GPS.PERIOD_NAME
188 ,CURRENT_PERIOD
189 ,1
190 ,0)) / ((CURRENT_END_DATE) - (CURRENT_START_DATE))
191 ,1)
192 ,0) CURRENT_BATCH_PER_DAY,
193 NVL(ROUND(SUM(DECODE(GPS.PERIOD_NAME
194 ,PRIOR_PERIOD
195 ,1
196 ,0)) / ((PRIOR_END_DATE) - (PRIOR_START_DATE))
197 ,1)
198 ,0) PRIOR_BATCH_PER_DAY
199 INTO CURRENT_BATCH_PER_DAY,PRIOR_BATCH_PER_DAY
200 FROM
201 AR_BATCHES B,
202 GL_PERIOD_STATUSES GPS
203 WHERE GPS.SET_OF_BOOKS_ID = SET_OF_BOOKS_ID_LP
204 AND GPS.APPLICATION_ID = 222
205 AND ( GPS.PERIOD_NAME = CURRENT_PERIOD
206 OR GPS.PERIOD_NAME = PRIOR_PERIOD )
207 AND B.TYPE = 'MANUAL'
208 AND B.GL_DATE BETWEEN GPS.START_DATE
209 AND GPS.END_DATE;
210 P_CURRENT_BATCH_PER_DAY := CURRENT_BATCH_PER_DAY;
211 P_PRIOR_BATCH_PER_DAY := PRIOR_BATCH_PER_DAY;
212 SELECT
213 NVL(ROUND(AVG(DECODE(GPS.PERIOD_NAME
214 ,CURRENT_PERIOD
215 ,COUNT(CR.CASH_RECEIPT_ID)
216 ,NULL))
217 ,1)
218 ,0) CURRENT_PAY_PER_BATCH,
219 NVL(ROUND(AVG(DECODE(GPS.PERIOD_NAME
220 ,PRIOR_PERIOD
221 ,COUNT(CR.CASH_RECEIPT_ID)
222 ,NULL))
223 ,1)
224 ,0) PRIOR_PAY_PER_BATCH
225 INTO CURRENT_PAY_PER_BATCH,PRIOR_PAY_PER_BATCH
226 FROM
227 AR_CASH_RECEIPTS CR,
228 AR_RECEIPT_METHODS RM,
229 AR_RECEIPT_CLASSES RC,
230 AR_CASH_RECEIPT_HISTORY CRH,
231 AR_BATCHES B,
232 GL_PERIOD_STATUSES GPS
233 WHERE CR.RECEIPT_METHOD_ID = RM.RECEIPT_METHOD_ID
234 AND RM.RECEIPT_CLASS_ID = RC.RECEIPT_CLASS_ID
235 AND CR.CASH_RECEIPT_ID = CRH.CASH_RECEIPT_ID
236 AND CRH.FIRST_POSTED_RECORD_FLAG = 'Y'
237 AND RC.CREATION_METHOD_CODE = 'MANUAL'
238 AND GPS.SET_OF_BOOKS_ID = SET_OF_BOOKS_ID_LP
239 AND GPS.APPLICATION_ID = 222
240 AND ( GPS.PERIOD_NAME = CURRENT_PERIOD
241 OR GPS.PERIOD_NAME = PRIOR_PERIOD )
242 AND CRH.BATCH_ID = B.BATCH_ID
243 AND B.GL_DATE BETWEEN GPS.START_DATE
244 AND GPS.END_DATE
245 GROUP BY
246 B.BATCH_ID,
247 GPS.PERIOD_NAME;
248 P_CURRENT_PAY_PER_BATCH := CURRENT_PAY_PER_BATCH;
249 P_PRIOR_PAY_PER_BATCH := PRIOR_PAY_PER_BATCH;
250 RETURN (1);
251 END;
252 RETURN NULL;
253 END C_1FORMULA;
254
255 FUNCTION PC_ON_HOLD_N_COUNTFORMULA RETURN VARCHAR2 IS
256 BEGIN
257 DECLARE
258 PERCENT_VALUE VARCHAR2(240);
259 BEGIN
260 /*SRW.REFERENCE(P_PRIOR_ON_HOLD_N_COUNT)*/NULL;
261 /*SRW.REFERENCE(P_CURRENT_ON_HOLD_N_COUNT)*/NULL;
262 SELECT
263 DECODE(P_PRIOR_ON_HOLD_N_COUNT
264 ,0
265 ,'n/a'
266 ,NVL(TO_CHAR(((P_CURRENT_ON_HOLD_N_COUNT - P_PRIOR_ON_HOLD_N_COUNT) * 100 / P_PRIOR_ON_HOLD_N_COUNT)
267 ,'990D00')
268 ,'n/a'))
269 INTO PERCENT_VALUE
270 FROM
271 DUAL;
272 IF PERCENT_VALUE = 'n/a' THEN
273 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
274 END IF;
275 RETURN (PERCENT_VALUE);
276 END;
277 RETURN NULL;
278 END PC_ON_HOLD_N_COUNTFORMULA;
279
280 FUNCTION PC_ON_HOLD_Y_COUNTFORMULA RETURN VARCHAR2 IS
281 BEGIN
282 DECLARE
283 PERCENT_VALUE VARCHAR2(240);
284 BEGIN
285 /*SRW.REFERENCE(P_PRIOR_ON_HOLD_Y_COUNT)*/NULL;
286 /*SRW.REFERENCE(P_CURRENT_ON_HOLD_Y_COUNT)*/NULL;
287 SELECT
288 DECODE(P_PRIOR_ON_HOLD_Y_COUNT
289 ,0
290 ,'n/a'
291 ,NVL(TO_CHAR(((P_CURRENT_ON_HOLD_Y_COUNT - P_PRIOR_ON_HOLD_Y_COUNT) * 100 / P_PRIOR_ON_HOLD_Y_COUNT)
292 ,'990D00')
293 ,'n/a'))
294 INTO PERCENT_VALUE
295 FROM
296 DUAL;
297 IF PERCENT_VALUE = 'n/a' THEN
298 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
299 END IF;
300 RETURN (PERCENT_VALUE);
301 END;
302 RETURN NULL;
303 END PC_ON_HOLD_Y_COUNTFORMULA;
304
305 FUNCTION PC_NEW_INVOICES_COUNTFORMULA(PRIOR_NEW_INVOICES_COUNT IN NUMBER
306 ,CURRENT_NEW_INVOICES_COUN IN NUMBER) RETURN VARCHAR2 IS
307 BEGIN
308 DECLARE
309 PERCENT_VALUE VARCHAR2(240);
310 BEGIN
311 /*SRW.REFERENCE(PRIOR_NEW_INVOICES_COUNT)*/NULL;
312 /*SRW.REFERENCE(CURRENT_NEW_INVOICES_COUN)*/NULL;
313 SELECT
314 DECODE(PRIOR_NEW_INVOICES_COUNT
315 ,0
316 ,'n/a'
317 ,TO_CHAR((((CURRENT_NEW_INVOICES_COUN - PRIOR_NEW_INVOICES_COUNT) / PRIOR_NEW_INVOICES_COUNT)) * 100
318 ,'990D00'))
319 INTO PERCENT_VALUE
320 FROM
321 DUAL;
322 IF PERCENT_VALUE = 'n/a' THEN
323 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
324 END IF;
325 RETURN (PERCENT_VALUE);
326 END;
327 RETURN NULL;
328 END PC_NEW_INVOICES_COUNTFORMULA;
329
330 FUNCTION PC_NEW_INVOICES_AMOUNTFORMULA(PRIOR_NEW_INVOICES_AMOUNT IN NUMBER
331 ,CURRENT_NEW_INVOICES_AMOU IN NUMBER) RETURN VARCHAR2 IS
332 BEGIN
333 DECLARE
334 PERCENT_VALUE VARCHAR2(240);
335 BEGIN
336 /*SRW.REFERENCE(PRIOR_NEW_INVOICES_AMOUNT)*/NULL;
337 /*SRW.REFERENCE(CURRENT_NEW_INVOICES_AMOU)*/NULL;
338 SELECT
339 DECODE(PRIOR_NEW_INVOICES_AMOUNT
340 ,0
341 ,'n/a'
342 ,NVL(TO_CHAR(((CURRENT_NEW_INVOICES_AMOU - PRIOR_NEW_INVOICES_AMOUNT) * 100 / PRIOR_NEW_INVOICES_AMOUNT)
343 ,'990D00')
344 ,'n/a'))
345 INTO PERCENT_VALUE
346 FROM
347 DUAL;
348 IF PERCENT_VALUE = 'n/a' THEN
349 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
350 END IF;
351 RETURN (PERCENT_VALUE);
352 END;
353 RETURN NULL;
354 END PC_NEW_INVOICES_AMOUNTFORMULA;
355
356 FUNCTION PC_NEW_CREDIT_COUNTFORMULA(PRIOR_NEW_CREDIT_COUNT IN NUMBER
357 ,CURRENT_NEW_CREDIT_COUNT IN NUMBER) RETURN VARCHAR2 IS
358 BEGIN
359 DECLARE
360 PERCENT_VALUE VARCHAR2(240);
361 BEGIN
362 /*SRW.REFERENCE(PRIOR_NEW_CREDIT_COUNT)*/NULL;
363 /*SRW.REFERENCE(CURRENT_NEW_CREDIT_COUNT)*/NULL;
364 SELECT
365 DECODE(PRIOR_NEW_CREDIT_COUNT
366 ,0
367 ,'n/a'
368 ,NVL(TO_CHAR(((CURRENT_NEW_CREDIT_COUNT - PRIOR_NEW_CREDIT_COUNT) * 100 / PRIOR_NEW_CREDIT_COUNT)
369 ,'990D00')
370 ,'n/a'))
371 INTO PERCENT_VALUE
372 FROM
373 DUAL;
374 IF PERCENT_VALUE = 'n/a' THEN
375 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
376 END IF;
377 RETURN (PERCENT_VALUE);
378 END;
379 RETURN NULL;
380 END PC_NEW_CREDIT_COUNTFORMULA;
381
382 FUNCTION PC_NEW_CREDIT_AMOUNTFORMULA(PRIOR_NEW_CREDIT_AMOUNT IN NUMBER
383 ,CURRENT_NEW_CREDIT_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
384 BEGIN
385 DECLARE
386 PERCENT_VALUE VARCHAR2(240);
387 BEGIN
388 /*SRW.REFERENCE(PRIOR_NEW_CREDIT_AMOUNT)*/NULL;
389 /*SRW.REFERENCE(CURRENT_NEW_CREDIT_AMOUNT)*/NULL;
390 SELECT
391 DECODE(PRIOR_NEW_CREDIT_AMOUNT
392 ,0
393 ,'n/a'
394 ,NVL(TO_CHAR(((CURRENT_NEW_CREDIT_AMOUNT - PRIOR_NEW_CREDIT_AMOUNT) * 100 / PRIOR_NEW_CREDIT_AMOUNT)
395 ,'990D00')
396 ,'n/a'))
397 INTO PERCENT_VALUE
398 FROM
399 DUAL;
400 IF PERCENT_VALUE = 'n/a' THEN
401 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
402 END IF;
403 RETURN (PERCENT_VALUE);
404 END;
405 RETURN NULL;
406 END PC_NEW_CREDIT_AMOUNTFORMULA;
407
408 FUNCTION PC_DUE_COUNTFORMULA(PRIOR_DUE_COUNT IN NUMBER
409 ,CURRENT_DUE_COUNT IN NUMBER) RETURN VARCHAR2 IS
410 BEGIN
411 DECLARE
412 PERCENT_VALUE VARCHAR2(240);
413 BEGIN
414 /*SRW.REFERENCE(PRIOR_DUE_COUNT)*/NULL;
415 /*SRW.REFERENCE(CURRENT_DUE_COUNT)*/NULL;
416 SELECT
417 DECODE(PRIOR_DUE_COUNT
418 ,0
419 ,'n/a'
420 ,NVL(TO_CHAR(((CURRENT_DUE_COUNT - PRIOR_DUE_COUNT) * 100 / PRIOR_DUE_COUNT)
421 ,'990D00')
422 ,'n/a'))
423 INTO PERCENT_VALUE
424 FROM
425 DUAL;
426 IF PERCENT_VALUE = 'n/a' THEN
427 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
428 END IF;
429 RETURN (PERCENT_VALUE);
430 END;
431 RETURN NULL;
432 END PC_DUE_COUNTFORMULA;
433
434 FUNCTION PC_DUE_AMOUNTFORMULA(PRIOR_DUE_AMOUNT IN NUMBER
435 ,CURRENT_DUE_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
436 BEGIN
437 DECLARE
438 PERCENT_VALUE VARCHAR2(240);
439 BEGIN
440 /*SRW.REFERENCE(PRIOR_DUE_AMOUNT)*/NULL;
441 /*SRW.REFERENCE(CURRENT_DUE_AMOUNT)*/NULL;
442 SELECT
443 DECODE(PRIOR_DUE_AMOUNT
444 ,0
445 ,'n/a'
446 ,NVL(TO_CHAR(((CURRENT_DUE_AMOUNT - PRIOR_DUE_AMOUNT) * 100 / PRIOR_DUE_AMOUNT)
447 ,'990D00')
448 ,'n/a'))
449 INTO PERCENT_VALUE
450 FROM
451 DUAL;
452 IF PERCENT_VALUE = 'n/a' THEN
453 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
454 END IF;
455 RETURN (PERCENT_VALUE);
456 END;
457 RETURN NULL;
458 END PC_DUE_AMOUNTFORMULA;
459
460 FUNCTION PC_PAST_DUE_AMOUNTFORMULA(CURRENT_PAST_DUE_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
461 BEGIN
462 DECLARE
463 PERCENT_VALUE VARCHAR2(240);
464 BEGIN
465 /*SRW.REFERENCE(P_PRIOR_PAST_DUE_AMOUNT)*/NULL;
466 /*SRW.REFERENCE(CURRENT_PAST_DUE_AMOUNT)*/NULL;
467 SELECT
468 DECODE(P_PRIOR_PAST_DUE_AMOUNT
469 ,0
470 ,'n/a'
471 ,NVL(TO_CHAR(((CURRENT_PAST_DUE_AMOUNT - P_PRIOR_PAST_DUE_AMOUNT) * 100 / P_PRIOR_PAST_DUE_AMOUNT)
472 ,'990D00')
473 ,'n/a'))
474 INTO PERCENT_VALUE
475 FROM
476 DUAL;
477 IF PERCENT_VALUE = 'n/a' THEN
478 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
479 END IF;
480 RETURN (PERCENT_VALUE);
481 END;
482 RETURN NULL;
483 END PC_PAST_DUE_AMOUNTFORMULA;
484
485 FUNCTION PC_PAST_DUE_COUNTFORMULA(CURRENT_PAST_DUE_COUNT IN NUMBER) RETURN VARCHAR2 IS
486 BEGIN
487 DECLARE
488 PERCENT_VALUE VARCHAR2(240);
489 BEGIN
490 /*SRW.REFERENCE(P_PRIOR_PAST_DUE_COUNT)*/NULL;
491 /*SRW.REFERENCE(CURRENT_PAST_DUE_COUNT)*/NULL;
492 SELECT
493 DECODE(P_PRIOR_PAST_DUE_COUNT
494 ,0
495 ,'n/a'
496 ,NVL(TO_CHAR(((CURRENT_PAST_DUE_COUNT - P_PRIOR_PAST_DUE_COUNT) * 100 / P_PRIOR_PAST_DUE_COUNT)
497 ,'990D00')
498 ,'n/a'))
499 INTO PERCENT_VALUE
500 FROM
501 DUAL;
502 IF PERCENT_VALUE = 'n/a' THEN
503 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
504 END IF;
505 RETURN (PERCENT_VALUE);
506 END;
507 RETURN NULL;
508 END PC_PAST_DUE_COUNTFORMULA;
509
510 FUNCTION PC_QC_COUNTFORMULA(PRIOR_QC_COUNT IN NUMBER
511 ,CURRENT_QC_COUNT IN NUMBER) RETURN VARCHAR2 IS
512 BEGIN
513 DECLARE
514 PERCENT_VALUE VARCHAR2(240);
515 BEGIN
516 /*SRW.REFERENCE(PRIOR_QC_COUNT)*/NULL;
517 /*SRW.REFERENCE(CURRENT_QC_COUNT)*/NULL;
518 SELECT
519 DECODE(PRIOR_QC_COUNT
520 ,0
521 ,'n/a'
522 ,NVL(TO_CHAR(((CURRENT_QC_COUNT - PRIOR_QC_COUNT) * 100 / PRIOR_QC_COUNT)
523 ,'990D00')
524 ,'n/a'))
525 INTO PERCENT_VALUE
526 FROM
527 DUAL;
528 IF PERCENT_VALUE = 'n/a' THEN
529 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
530 END IF;
531 RETURN (PERCENT_VALUE);
532 END;
533 RETURN NULL;
534 END PC_QC_COUNTFORMULA;
535
536 FUNCTION PC_QC_AMOUNTFORMULA(PRIOR_QC_AMOUNT IN NUMBER
537 ,CURRENT_QC_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
538 BEGIN
539 DECLARE
540 PERCENT_VALUE VARCHAR2(240);
541 BEGIN
542 /*SRW.REFERENCE(PRIOR_QC_AMOUNT)*/NULL;
543 /*SRW.REFERENCE(CURRENT_QC_AMOUNT)*/NULL;
544 SELECT
545 DECODE(PRIOR_QC_AMOUNT
546 ,0
547 ,'n/a'
548 ,NVL(TO_CHAR(((CURRENT_QC_AMOUNT - PRIOR_QC_AMOUNT) * 100 / PRIOR_QC_AMOUNT)
549 ,'990D00')
550 ,'n/a'))
551 INTO PERCENT_VALUE
552 FROM
553 DUAL;
554 IF PERCENT_VALUE = 'n/a' THEN
555 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
556 END IF;
557 RETURN (PERCENT_VALUE);
558 END;
559 RETURN NULL;
560 END PC_QC_AMOUNTFORMULA;
561
562 FUNCTION PC_C_COUNTFORMULA(PRIOR_C_COUNT IN NUMBER
563 ,CURRENT_C_COUNT IN NUMBER) RETURN VARCHAR2 IS
564 BEGIN
565 DECLARE
566 PERCENT_VALUE VARCHAR2(240);
567 BEGIN
568 /*SRW.REFERENCE(PRIOR_C_COUNT)*/NULL;
569 /*SRW.REFERENCE(CURRENT_C_COUNT)*/NULL;
570 SELECT
571 DECODE(PRIOR_C_COUNT
572 ,0
573 ,'n/a'
574 ,NVL(TO_CHAR(((CURRENT_C_COUNT - PRIOR_C_COUNT) * 100 / PRIOR_C_COUNT)
575 ,'990D00')
576 ,'n/a'))
577 INTO PERCENT_VALUE
578 FROM
579 DUAL;
580 IF PERCENT_VALUE = 'n/a' THEN
581 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
582 END IF;
583 RETURN (PERCENT_VALUE);
584 END;
585 RETURN NULL;
586 END PC_C_COUNTFORMULA;
587
588 FUNCTION PC_C_AMOUNTFORMULA(PRIOR_C_AMOUNT IN NUMBER
589 ,CURRENT_C_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
590 BEGIN
591 DECLARE
592 PERCENT_VALUE VARCHAR2(240);
593 BEGIN
594 /*SRW.REFERENCE(PRIOR_C_AMOUNT)*/NULL;
595 /*SRW.REFERENCE(CURRENT_C_AMOUNT)*/NULL;
596 SELECT
597 DECODE(PRIOR_C_AMOUNT
598 ,0
599 ,'n/a'
600 ,NVL(TO_CHAR(((CURRENT_C_AMOUNT - PRIOR_C_AMOUNT) * 100 / PRIOR_C_AMOUNT)
601 ,'990D00')
602 ,'n/a'))
603 INTO PERCENT_VALUE
604 FROM
605 DUAL;
606 IF PERCENT_VALUE = 'n/a' THEN
607 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
608 END IF;
609 RETURN (PERCENT_VALUE);
610 END;
611 RETURN NULL;
612 END PC_C_AMOUNTFORMULA;
613
614 FUNCTION PC_CR_COUNTFORMULA(PRIOR_CR_COUNT IN NUMBER
615 ,CURRENT_CR_COUNT IN NUMBER) RETURN VARCHAR2 IS
616 BEGIN
617 DECLARE
618 PERCENT_VALUE VARCHAR2(240);
619 BEGIN
620 /*SRW.REFERENCE(PRIOR_CR_COUNT)*/NULL;
621 /*SRW.REFERENCE(CURRENT_CR_COUNT)*/NULL;
622 SELECT
623 DECODE(PRIOR_CR_COUNT
624 ,0
625 ,'n/a'
626 ,NVL(TO_CHAR(((CURRENT_CR_COUNT - PRIOR_CR_COUNT) * 100 / PRIOR_CR_COUNT)
627 ,'990D00')
628 ,'n/a'))
629 INTO PERCENT_VALUE
630 FROM
631 DUAL;
632 IF PERCENT_VALUE = 'n/a' THEN
633 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
634 END IF;
635 RETURN (PERCENT_VALUE);
636 END;
637 RETURN NULL;
638 END PC_CR_COUNTFORMULA;
639
640 FUNCTION PC_CR_AMOUNTFORMULA(PRIOR_CR_AMOUNT IN NUMBER
641 ,CURRENT_CR_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
642 BEGIN
643 DECLARE
644 PERCENT_VALUE VARCHAR2(240);
645 BEGIN
646 /*SRW.REFERENCE(PRIOR_CR_AMOUNT)*/NULL;
647 /*SRW.REFERENCE(CURRENT_CR_AMOUNT)*/NULL;
648 SELECT
649 DECODE(PRIOR_CR_AMOUNT
650 ,0
651 ,'n/a'
652 ,NVL(TO_CHAR(((CURRENT_CR_AMOUNT - PRIOR_CR_AMOUNT) * 100 / PRIOR_CR_AMOUNT)
653 ,'990D00')
654 ,'n/a'))
655 INTO PERCENT_VALUE
656 FROM
657 DUAL;
658 IF PERCENT_VALUE = 'n/a' THEN
659 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
660 END IF;
661 RETURN (PERCENT_VALUE);
662 END;
663 RETURN NULL;
664 END PC_CR_AMOUNTFORMULA;
665
666 FUNCTION PC_ADJUST_COUNTFORMULA(PRIOR_ADJUST_COUNT IN NUMBER
667 ,CURRENT_ADJUST_COUNT IN NUMBER) RETURN VARCHAR2 IS
668 BEGIN
669 DECLARE
670 PERCENT_VALUE VARCHAR2(240);
671 BEGIN
672 /*SRW.REFERENCE(PRIOR_ADJUST_COUNT)*/NULL;
673 /*SRW.REFERENCE(CURRENT_ADJUST_COUNT)*/NULL;
674 SELECT
675 DECODE(PRIOR_ADJUST_COUNT
676 ,0
677 ,'n/a'
678 ,NVL(TO_CHAR(((CURRENT_ADJUST_COUNT - PRIOR_ADJUST_COUNT) * 100 / PRIOR_ADJUST_COUNT)
679 ,'990D00')
680 ,'n/a'))
681 INTO PERCENT_VALUE
682 FROM
683 DUAL;
684 IF PERCENT_VALUE = 'n/a' THEN
685 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
686 END IF;
687 RETURN (PERCENT_VALUE);
688 END;
689 RETURN NULL;
690 END PC_ADJUST_COUNTFORMULA;
691
692 FUNCTION PC_ADJUST_AMOUNTFORMULA(PRIOR_ADJUST_AMOUNT IN NUMBER
693 ,CURRENT_ADJUST_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
694 BEGIN
695 DECLARE
696 PERCENT_VALUE VARCHAR2(240);
697 BEGIN
698 /*SRW.REFERENCE(PRIOR_ADJUST_AMOUNT)*/NULL;
699 /*SRW.REFERENCE(CURRENT_ADJUST_AMOUNT)*/NULL;
700 SELECT
701 DECODE(PRIOR_ADJUST_AMOUNT
702 ,0
703 ,'n/a'
704 ,NVL(TO_CHAR(((CURRENT_ADJUST_AMOUNT - PRIOR_ADJUST_AMOUNT) * 100 / PRIOR_ADJUST_AMOUNT)
705 ,'990D00')
706 ,'n/a'))
707 INTO PERCENT_VALUE
708 FROM
709 DUAL;
710 IF PERCENT_VALUE = 'n/a' THEN
711 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
712 END IF;
713 RETURN (PERCENT_VALUE);
714 END;
715 RETURN NULL;
716 END PC_ADJUST_AMOUNTFORMULA;
717
718 FUNCTION PC_TYPE_AMOUNTFORMULA(PRIOR_TYPE_AMOUNT IN NUMBER
719 ,CURRENT_TYPE_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
720 BEGIN
721 DECLARE
722 PERCENT_VALUE VARCHAR2(240);
723 BEGIN
724 /*SRW.REFERENCE(PRIOR_TYPE_AMOUNT)*/NULL;
725 /*SRW.REFERENCE(CURRENT_TYPE_AMOUNT)*/NULL;
726 SELECT
727 DECODE(PRIOR_TYPE_AMOUNT
728 ,0
729 ,'n/a'
730 ,NVL(TO_CHAR(((CURRENT_TYPE_AMOUNT - PRIOR_TYPE_AMOUNT) * 100 / PRIOR_TYPE_AMOUNT)
731 ,'990D00')
732 ,'n/a'))
733 INTO PERCENT_VALUE
734 FROM
735 DUAL;
736 IF PERCENT_VALUE = 'n/a' THEN
737 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
738 END IF;
742 END PC_TYPE_AMOUNTFORMULA;
739 RETURN (PERCENT_VALUE);
740 END;
741 RETURN NULL;
743
744 FUNCTION PC_PT_COUNTFORMULA(PRIOR_PT_COUNT IN NUMBER
745 ,CURRENT_PT_COUNT IN NUMBER) RETURN VARCHAR2 IS
746 BEGIN
747 DECLARE
748 PERCENT_VALUE VARCHAR2(240);
749 BEGIN
750 /*SRW.REFERENCE(PRIOR_PT_COUNT)*/NULL;
751 /*SRW.REFERENCE(CURRENT_PT_COUNT)*/NULL;
752 SELECT
753 DECODE(PRIOR_PT_COUNT
754 ,0
755 ,'n/a'
756 ,NVL(TO_CHAR(((CURRENT_PT_COUNT - PRIOR_PT_COUNT) * 100 / PRIOR_PT_COUNT)
757 ,'990D00')
758 ,'n/a'))
759 INTO PERCENT_VALUE
760 FROM
761 DUAL;
762 IF PERCENT_VALUE = 'n/a' THEN
763 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
764 END IF;
765 RETURN (PERCENT_VALUE);
766 END;
767 RETURN NULL;
768 END PC_PT_COUNTFORMULA;
769
770 FUNCTION PC_NSF_COUNTFORMULA(PRIOR_NSF_COUNT IN NUMBER
771 ,CURRENT_NSF_COUNT IN NUMBER) RETURN VARCHAR2 IS
772 BEGIN
773 DECLARE
774 PERCENT_VALUE VARCHAR2(240);
775 BEGIN
776 /*SRW.REFERENCE(PRIOR_NSF_COUNT)*/NULL;
777 /*SRW.REFERENCE(CURRENT_NSF_COUNT)*/NULL;
778 SELECT
779 DECODE(PRIOR_NSF_COUNT
780 ,0
781 ,'n/a'
782 ,NVL(TO_CHAR(((CURRENT_NSF_COUNT - PRIOR_NSF_COUNT) * 100 / PRIOR_NSF_COUNT)
783 ,'990D00')
784 ,'n/a'))
785 INTO PERCENT_VALUE
786 FROM
787 DUAL;
788 IF PERCENT_VALUE = 'n/a' THEN
789 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
790 END IF;
791 RETURN (PERCENT_VALUE);
792 END;
793 RETURN NULL;
794 END PC_NSF_COUNTFORMULA;
795
796 FUNCTION PC_NSF_AMOUNTFORMULA(PRIOR_NSF_AMOUNT IN NUMBER
797 ,CURRENT_NSF_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
798 BEGIN
799 DECLARE
800 PERCENT_VALUE VARCHAR2(240);
801 BEGIN
802 /*SRW.REFERENCE(PRIOR_NSF_AMOUNT)*/NULL;
803 /*SRW.REFERENCE(CURRENT_NSF_AMOUNT)*/NULL;
804 SELECT
805 DECODE(PRIOR_NSF_AMOUNT
806 ,0
807 ,'n/a'
808 ,NVL(TO_CHAR(((CURRENT_NSF_AMOUNT - PRIOR_NSF_AMOUNT) * 100 / PRIOR_NSF_AMOUNT)
809 ,'990D00')
810 ,'n/a'))
811 INTO PERCENT_VALUE
812 FROM
813 DUAL;
814 IF PERCENT_VALUE = 'n/a' THEN
815 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
816 END IF;
817 RETURN (PERCENT_VALUE);
818 END;
819 RETURN NULL;
820 END PC_NSF_AMOUNTFORMULA;
821
822 FUNCTION PC_OR_AMOUNTFORMULA(PRIOR_OR_AMOUNT IN NUMBER
823 ,CURRENT_OR_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
824 BEGIN
825 DECLARE
826 PERCENT_VALUE VARCHAR2(240);
827 BEGIN
828 /*SRW.REFERENCE(PRIOR_OR_AMOUNT)*/NULL;
829 /*SRW.REFERENCE(CURRENT_OR_AMOUNT)*/NULL;
830 SELECT
831 DECODE(PRIOR_OR_AMOUNT
832 ,0
833 ,'n/a'
834 ,NVL(TO_CHAR(((CURRENT_OR_AMOUNT - PRIOR_OR_AMOUNT) * 100 / PRIOR_OR_AMOUNT)
835 ,'990D00')
836 ,'n/a'))
837 INTO PERCENT_VALUE
838 FROM
839 DUAL;
840 IF PERCENT_VALUE = 'n/a' THEN
841 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
842 END IF;
843 RETURN (PERCENT_VALUE);
844 END;
845 RETURN NULL;
846 END PC_OR_AMOUNTFORMULA;
847
848 FUNCTION PC_OR_COUNTFORMULA(PRIOR_OR_COUNT IN NUMBER
849 ,CURRENT_OR_COUNT IN NUMBER) RETURN VARCHAR2 IS
850 BEGIN
851 DECLARE
852 PERCENT_VALUE VARCHAR2(240);
853 BEGIN
854 /*SRW.REFERENCE(PRIOR_OR_COUNT)*/NULL;
855 /*SRW.REFERENCE(CURRENT_OR_COUNT)*/NULL;
856 SELECT
857 DECODE(PRIOR_OR_COUNT
858 ,0
859 ,'n/a'
860 ,NVL(TO_CHAR(((CURRENT_OR_COUNT - PRIOR_OR_COUNT) * 100 / PRIOR_OR_COUNT)
861 ,'990D00')
862 ,'n/a'))
863 INTO PERCENT_VALUE
864 FROM
865 DUAL;
866 IF PERCENT_VALUE = 'n/a' THEN
867 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
868 END IF;
869 RETURN (PERCENT_VALUE);
870 END;
871 RETURN NULL;
872 END PC_OR_COUNTFORMULA;
873
874 FUNCTION PC_EDT_COUNTFORMULA(PRIOR_EDT_COUNT IN NUMBER
875 ,CURRENT_EDT_COUNT IN NUMBER) RETURN VARCHAR2 IS
876 BEGIN
877 DECLARE
878 PERCENT_VALUE VARCHAR2(240);
879 BEGIN
880 /*SRW.REFERENCE(PRIOR_EDT_COUNT)*/NULL;
881 /*SRW.REFERENCE(CURRENT_EDT_COUNT)*/NULL;
882 SELECT
883 DECODE(PRIOR_EDT_COUNT
884 ,0
885 ,'n/a'
886 ,NVL(TO_CHAR(((CURRENT_EDT_COUNT - PRIOR_EDT_COUNT) * 100 / PRIOR_EDT_COUNT)
887 ,'990D00')
888 ,'n/a'))
889 INTO PERCENT_VALUE
890 FROM
891 DUAL;
892 IF PERCENT_VALUE = 'n/a' THEN
893 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
894 END IF;
895 RETURN (PERCENT_VALUE);
896 END;
897 RETURN NULL;
898 END PC_EDT_COUNTFORMULA;
899
900 FUNCTION PC_EDT_AMOUNTFORMULA(PRIOR_EDT_AMOUNT IN NUMBER
904 PERCENT_VALUE VARCHAR2(240);
901 ,CURRENT_EDT_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
902 BEGIN
903 DECLARE
905 BEGIN
906 /*SRW.REFERENCE(PRIOR_EDT_AMOUNT)*/NULL;
907 /*SRW.REFERENCE(CURRENT_EDT_AMOUNT)*/NULL;
908 SELECT
909 DECODE(PRIOR_EDT_AMOUNT
910 ,0
911 ,'n/a'
912 ,NVL(TO_CHAR(((CURRENT_EDT_AMOUNT - PRIOR_EDT_AMOUNT) * 100 / PRIOR_EDT_AMOUNT)
913 ,'990D00')
914 ,'n/a'))
915 INTO PERCENT_VALUE
916 FROM
917 DUAL;
918 IF PERCENT_VALUE = 'n/a' THEN
919 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
920 END IF;
921 RETURN (PERCENT_VALUE);
922 END;
923 RETURN NULL;
924 END PC_EDT_AMOUNTFORMULA;
925
926 FUNCTION PC_UDT_COUNTFORMULA(PRIOR_UDT_COUNT IN NUMBER
927 ,CURRENT_UDT_COUNT IN NUMBER) RETURN VARCHAR2 IS
928 BEGIN
929 DECLARE
930 PERCENT_VALUE VARCHAR2(240);
931 BEGIN
932 /*SRW.REFERENCE(PRIOR_UDT_COUNT)*/NULL;
933 /*SRW.REFERENCE(CURRENT_UDT_COUNT)*/NULL;
934 SELECT
935 DECODE(PRIOR_UDT_COUNT
936 ,0
937 ,'n/a'
938 ,NVL(TO_CHAR(((CURRENT_UDT_COUNT - PRIOR_UDT_COUNT) * 100 / PRIOR_UDT_COUNT)
939 ,'990D00')
940 ,'n/a'))
941 INTO PERCENT_VALUE
942 FROM
943 DUAL;
944 IF PERCENT_VALUE = 'n/a' THEN
945 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
946 END IF;
947 RETURN (PERCENT_VALUE);
948 END;
949 RETURN NULL;
950 END PC_UDT_COUNTFORMULA;
951
952 FUNCTION PC_UDT_AMOUNTFORMULA(PRIOR_UDT_AMOUNT IN NUMBER
953 ,CURRENT_UDT_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
954 BEGIN
955 DECLARE
956 PERCENT_VALUE VARCHAR2(240);
957 BEGIN
958 /*SRW.REFERENCE(PRIOR_UDT_AMOUNT)*/NULL;
959 /*SRW.REFERENCE(CURRENT_UDT_AMOUNT)*/NULL;
960 SELECT
961 DECODE(PRIOR_UDT_AMOUNT
962 ,0
963 ,'n/a'
964 ,NVL(TO_CHAR(((CURRENT_UDT_AMOUNT - PRIOR_UDT_AMOUNT) * 100 / PRIOR_UDT_AMOUNT)
965 ,'990D00')
966 ,'n/a'))
967 INTO PERCENT_VALUE
968 FROM
969 DUAL;
970 IF PERCENT_VALUE = 'n/a' THEN
971 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
972 END IF;
973 RETURN (PERCENT_VALUE);
974 END;
975 RETURN NULL;
976 END PC_UDT_AMOUNTFORMULA;
977
978 FUNCTION PC1_CUSTOMER_COUNTFORMULA RETURN VARCHAR2 IS
979 BEGIN
980 DECLARE
981 PERCENT_VALUE VARCHAR2(240);
982 BEGIN
983 /*SRW.REFERENCE(P_PRIOR_CUSTOMER_COUNT)*/NULL;
984 /*SRW.REFERENCE(P_CURRENT_CUSTOMER_COUNT)*/NULL;
985 SELECT
986 DECODE(P_PRIOR_CUSTOMER_COUNT
987 ,0
988 ,'n/a'
989 ,NVL(TO_CHAR(((P_CURRENT_CUSTOMER_COUNT - P_PRIOR_CUSTOMER_COUNT) * 100 / P_PRIOR_CUSTOMER_COUNT)
990 ,'990D00')
991 ,'n/a'))
992 INTO PERCENT_VALUE
993 FROM
994 DUAL;
995 IF PERCENT_VALUE = 'n/a' THEN
996 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
997 END IF;
998 PC_CUSTOMER_COUNT := PERCENT_VALUE;
999 RETURN (PERCENT_VALUE);
1000 END;
1001 RETURN NULL;
1002 END PC1_CUSTOMER_COUNTFORMULA;
1003
1004 FUNCTION PC1_LOCATION_COUNTFORMULA RETURN VARCHAR2 IS
1005 BEGIN
1006 DECLARE
1007 PERCENT_VALUE VARCHAR2(240);
1008 BEGIN
1009 /*SRW.REFERENCE(P_PRIOR_LOCATION_COUNT)*/NULL;
1010 /*SRW.REFERENCE(P_CURRENT_LOCATION_COUNT)*/NULL;
1011 SELECT
1012 DECODE(P_PRIOR_LOCATION_COUNT
1013 ,0
1014 ,'n/a'
1015 ,NVL(TO_CHAR(((P_CURRENT_LOCATION_COUNT - P_PRIOR_LOCATION_COUNT) * 100 / P_PRIOR_LOCATION_COUNT)
1016 ,'990D00')
1017 ,'n/a'))
1018 INTO PERCENT_VALUE
1019 FROM
1020 DUAL;
1021 IF PERCENT_VALUE = 'n/a' THEN
1022 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
1023 END IF;
1024 PC_LOCATION_COUNT := PERCENT_VALUE;
1025 RETURN (PERCENT_VALUE);
1026 END;
1027 RETURN NULL;
1028 END PC1_LOCATION_COUNTFORMULA;
1029
1030 FUNCTION PC1_PAY_PER_BATCHFORMULA RETURN VARCHAR2 IS
1031 BEGIN
1032 DECLARE
1033 PERCENT_VALUE VARCHAR2(240);
1034 BEGIN
1035 /*SRW.REFERENCE(P_PRIOR_PAY_PER_BATCH)*/NULL;
1036 /*SRW.REFERENCE(P_CURRENT_PAY_PER_BATCH)*/NULL;
1037 SELECT
1038 DECODE(P_PRIOR_PAY_PER_BATCH
1039 ,0
1040 ,'n/a'
1041 ,NVL(TO_CHAR(((P_CURRENT_PAY_PER_BATCH - P_PRIOR_PAY_PER_BATCH) * 100 / P_PRIOR_PAY_PER_BATCH)
1042 ,'990D00')
1043 ,'n/a'))
1044 INTO PERCENT_VALUE
1045 FROM
1046 DUAL;
1047 IF PERCENT_VALUE = 'n/a' THEN
1048 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
1049 END IF;
1050 PC_PAY_PER_BATCH := PERCENT_VALUE;
1051 RETURN (PERCENT_VALUE);
1052 END;
1053 RETURN NULL;
1054 END PC1_PAY_PER_BATCHFORMULA;
1055
1056 FUNCTION PC1_PAY_PER_DAYFORMULA RETURN VARCHAR2 IS
1057 BEGIN
1058 DECLARE
1059 PERCENT_VALUE VARCHAR2(240);
1060 BEGIN
1064 DECODE(P_PRIOR_PAY_PER_DAY
1061 /*SRW.REFERENCE(P_PRIOR_PAY_PER_DAY)*/NULL;
1062 /*SRW.REFERENCE(P_CURRENT_PAY_PER_DAY)*/NULL;
1063 SELECT
1065 ,0
1066 ,'n/a'
1067 ,NVL(TO_CHAR(((P_CURRENT_PAY_PER_DAY - P_PRIOR_PAY_PER_DAY) * 100 / P_PRIOR_PAY_PER_DAY)
1068 ,'990D00')
1069 ,'n/a'))
1070 INTO PERCENT_VALUE
1071 FROM
1072 DUAL;
1073 IF PERCENT_VALUE = 'n/a' THEN
1074 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
1075 END IF;
1076 PC_PAY_PER_DAY := PERCENT_VALUE;
1077 RETURN (PERCENT_VALUE);
1078 END;
1079 RETURN NULL;
1080 END PC1_PAY_PER_DAYFORMULA;
1081
1082 FUNCTION PC1_BATCH_PER_DAY_COUNTFORMULA RETURN VARCHAR2 IS
1083 BEGIN
1084 DECLARE
1085 PERCENT_VALUE VARCHAR2(240);
1086 BEGIN
1087 /*SRW.REFERENCE(P_PRIOR_BATCH_PER_DAY)*/NULL;
1088 /*SRW.REFERENCE(P_CURRENT_BATCH_PER_DAY)*/NULL;
1089 SELECT
1090 DECODE(P_PRIOR_BATCH_PER_DAY
1091 ,0
1092 ,'n/a'
1093 ,NVL(TO_CHAR(((P_CURRENT_BATCH_PER_DAY - P_PRIOR_BATCH_PER_DAY) * 100 / P_PRIOR_BATCH_PER_DAY)
1094 ,'990D00')
1095 ,'n/a'))
1096 INTO PERCENT_VALUE
1097 FROM
1098 DUAL;
1099 IF PERCENT_VALUE = 'n/a' THEN
1100 PERCENT_VALUE := ARP_STANDARD.FND_MESSAGE('AR_REPORTS_NA_LOWER');
1101 END IF;
1102 PC_BATCH_PER_DAY_COUNT := PERCENT_VALUE;
1103 RETURN (PERCENT_VALUE);
1104 END;
1105 RETURN NULL;
1106 END PC1_BATCH_PER_DAY_COUNTFORMULA;
1107
1108 FUNCTION BEFOREREPORT RETURN BOOLEAN IS
1109 BEGIN
1110 P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
1111 /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
1112 RETURN (TRUE);
1113 END BEFOREREPORT;
1114
1115 FUNCTION AFTERREPORT RETURN BOOLEAN IS
1116 BEGIN
1117 /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
1118 RETURN (TRUE);
1119 END AFTERREPORT;
1120
1121 FUNCTION PC_PRIOR_PAST_DUE_COUNTFORMULA RETURN NUMBER IS
1122 BEGIN
1123 /*SRW.REFERENCE(P_PRIOR_PAST_DUE_COUNT)*/NULL;
1124 RETURN (P_PRIOR_PAST_DUE_COUNT);
1125 END PC_PRIOR_PAST_DUE_COUNTFORMULA;
1126
1127 FUNCTION C_COPY_VALUEFORMULA(PRIOR_PAST_DUE_COUNT IN NUMBER
1128 ,PRIOR_PAST_DUE_AMOUNT IN NUMBER) RETURN NUMBER IS
1129 BEGIN
1130 BEGIN
1131 /*SRW.REFERENCE(PRIOR_PAST_DUE_COUNT)*/NULL;
1132 /*SRW.REFERENCE(PRIOR_PAST_DUE_AMOUNT)*/NULL;
1133 /*SRW.REFERENCE(P_PRIOR_PAST_DUE_COUNT)*/NULL;
1134 /*SRW.REFERENCE(P_PRIOR_PAST_DUE_AMOUNT)*/NULL;
1135 P_PRIOR_PAST_DUE_COUNT := PRIOR_PAST_DUE_COUNT;
1136 P_PRIOR_PAST_DUE_AMOUNT := PRIOR_PAST_DUE_AMOUNT;
1137 RETURN 0;
1138 END;
1139 RETURN NULL;
1140 END C_COPY_VALUEFORMULA;
1141
1142 FUNCTION P_CURRENT_CUSTOMER_COUNT_P RETURN NUMBER IS
1143 BEGIN
1144 RETURN P_CURRENT_CUSTOMER_COUNT;
1145 END P_CURRENT_CUSTOMER_COUNT_P;
1146
1147 FUNCTION P_PRIOR_CUSTOMER_COUNT_P RETURN NUMBER IS
1148 BEGIN
1149 RETURN P_PRIOR_CUSTOMER_COUNT;
1150 END P_PRIOR_CUSTOMER_COUNT_P;
1151
1152 FUNCTION P_CURRENT_YEAR_CUSTOMER_COUNTF RETURN NUMBER IS
1153 BEGIN
1154 RETURN P_CURRENT_YEAR_CUSTOMER_COUNT;
1155 END P_CURRENT_YEAR_CUSTOMER_COUNTF;
1156
1157 FUNCTION P_CURRENT_LOCATION_COUNT_P RETURN NUMBER IS
1158 BEGIN
1159 RETURN P_CURRENT_LOCATION_COUNT;
1160 END P_CURRENT_LOCATION_COUNT_P;
1161
1162 FUNCTION P_PRIOR_LOCATION_COUNT_P RETURN NUMBER IS
1163 BEGIN
1164 RETURN P_PRIOR_LOCATION_COUNT;
1165 END P_PRIOR_LOCATION_COUNT_P;
1166
1167 FUNCTION P_PRIOR_YEAR_COUNT_P RETURN NUMBER IS
1168 BEGIN
1169 RETURN P_PRIOR_YEAR_COUNT;
1170 END P_PRIOR_YEAR_COUNT_P;
1171
1172 FUNCTION P_CURRENT_ON_HOLD_Y_COUNT_P RETURN NUMBER IS
1173 BEGIN
1174 RETURN P_CURRENT_ON_HOLD_Y_COUNT;
1175 END P_CURRENT_ON_HOLD_Y_COUNT_P;
1176
1177 FUNCTION P_PRIOR_ON_HOLD_Y_COUNT_P RETURN NUMBER IS
1178 BEGIN
1179 RETURN P_PRIOR_ON_HOLD_Y_COUNT;
1180 END P_PRIOR_ON_HOLD_Y_COUNT_P;
1181
1182 FUNCTION P_YEAR_ON_HOLD_Y_COUNT_P RETURN NUMBER IS
1183 BEGIN
1184 RETURN P_YEAR_ON_HOLD_Y_COUNT;
1185 END P_YEAR_ON_HOLD_Y_COUNT_P;
1186
1187 FUNCTION P_CURRENT_ON_HOLD_N_COUNT_P RETURN NUMBER IS
1188 BEGIN
1189 RETURN P_CURRENT_ON_HOLD_N_COUNT;
1190 END P_CURRENT_ON_HOLD_N_COUNT_P;
1191
1192 FUNCTION P_PRIOR_ON_HOLD_N_COUNT_P RETURN NUMBER IS
1193 BEGIN
1194 RETURN P_PRIOR_ON_HOLD_N_COUNT;
1195 END P_PRIOR_ON_HOLD_N_COUNT_P;
1196
1197 FUNCTION P_YEAR_ON_HOLD_N_COUNT_P RETURN NUMBER IS
1198 BEGIN
1199 RETURN P_YEAR_ON_HOLD_N_COUNT;
1200 END P_YEAR_ON_HOLD_N_COUNT_P;
1201
1202 FUNCTION P_CURRENT_PAY_PER_DAY_P RETURN NUMBER IS
1203 BEGIN
1204 RETURN P_CURRENT_PAY_PER_DAY;
1205 END P_CURRENT_PAY_PER_DAY_P;
1206
1207 FUNCTION P_PRIOR_PAY_PER_DAY_P RETURN NUMBER IS
1208 BEGIN
1209 RETURN P_PRIOR_PAY_PER_DAY;
1210 END P_PRIOR_PAY_PER_DAY_P;
1211
1212 FUNCTION P_PRIOR_BATCH_PER_DAY_P RETURN NUMBER IS
1213 BEGIN
1214 RETURN P_PRIOR_BATCH_PER_DAY;
1215 END P_PRIOR_BATCH_PER_DAY_P;
1216
1217 FUNCTION P_CURRENT_BATCH_PER_DAY_P RETURN NUMBER IS
1218 BEGIN
1219 RETURN P_CURRENT_BATCH_PER_DAY;
1220 END P_CURRENT_BATCH_PER_DAY_P;
1221
1222 FUNCTION P_CURRENT_PAY_PER_BATCH_P RETURN NUMBER IS
1223 BEGIN
1224 RETURN P_CURRENT_PAY_PER_BATCH;
1225 END P_CURRENT_PAY_PER_BATCH_P;
1226
1227 FUNCTION P_PRIOR_PAY_PER_BATCH_P RETURN NUMBER IS
1228 BEGIN
1229 RETURN P_PRIOR_PAY_PER_BATCH;
1230 END P_PRIOR_PAY_PER_BATCH_P;
1231
1232 FUNCTION PC_LOCATION_COUNT_P RETURN VARCHAR2 IS
1233 BEGIN
1234 RETURN PC_LOCATION_COUNT;
1235 END PC_LOCATION_COUNT_P;
1236
1237 FUNCTION PC_BATCH_PER_DAY_COUNT_P RETURN VARCHAR2 IS
1238 BEGIN
1239 RETURN PC_BATCH_PER_DAY_COUNT;
1240 END PC_BATCH_PER_DAY_COUNT_P;
1241
1242 FUNCTION PC_PAY_PER_BATCH_P RETURN VARCHAR2 IS
1243 BEGIN
1244 RETURN PC_PAY_PER_BATCH;
1245 END PC_PAY_PER_BATCH_P;
1246
1247 FUNCTION PC_PAY_PER_DAY_P RETURN VARCHAR2 IS
1248 BEGIN
1249 RETURN PC_PAY_PER_DAY;
1250 END PC_PAY_PER_DAY_P;
1251
1252 FUNCTION PC_CUSTOMER_COUNT_P RETURN VARCHAR2 IS
1253 BEGIN
1254 RETURN PC_CUSTOMER_COUNT;
1255 END PC_CUSTOMER_COUNT_P;
1256
1257 FUNCTION C_PRIOR_PAST_DUE_COUNT_P RETURN NUMBER IS
1258 BEGIN
1259 RETURN C_PRIOR_PAST_DUE_COUNT;
1260 END C_PRIOR_PAST_DUE_COUNT_P;
1261
1262 FUNCTION C_PRIOR_PAST_DUE_AMOUNT_P RETURN NUMBER IS
1263 BEGIN
1264 RETURN C_PRIOR_PAST_DUE_AMOUNT;
1265 END C_PRIOR_PAST_DUE_AMOUNT_P;
1266
1267 END AR_ARXKIR_XMLP_PKG;
1268