DBA Data[Home] [Help]

PACKAGE BODY: APPS.JA_JAINAPCR_XMLP_PKG

Source


1 PACKAGE BODY JA_JAINAPCR_XMLP_PKG AS
2 /* $Header: JAINAPCRB.pls 120.1 2007/12/25 16:11:04 dwkrishn noship $ */
3   FUNCTION CF_PO_NOFORMULA(P_PO_DISTRIBUTION_ID IN NUMBER) RETURN VARCHAR2 IS
4     V_PO_NUM VARCHAR2(30);
5     V_PO_HEADER_ID NUMBER;
6   BEGIN
7     SELECT
8       PO_HEADER_ID
9     INTO V_PO_HEADER_ID
10     FROM
11       PO_DISTRIBUTIONS_ALL
12     WHERE PO_DISTRIBUTION_ID = P_PO_DISTRIBUTION_ID;
13     SELECT
14       SEGMENT1
15     INTO V_PO_NUM
16     FROM
17       PO_HEADERS_ALL
18     WHERE PO_HEADER_ID = V_PO_HEADER_ID;
19     RETURN (V_PO_NUM);
20     RETURN NULL;
21   EXCEPTION
22     WHEN NO_DATA_FOUND THEN
23       RETURN NULL;
24   END CF_PO_NOFORMULA;
25   FUNCTION CF_ORGNFORMULA(P_PO_DISTRIBUTION_ID IN NUMBER) RETURN VARCHAR2 IS
26     V_ORGANIZATION_NAME VARCHAR2(60);
27     V_SHIP_TO_LOCATION_ID NUMBER;
28     V_LOCATION_ID NUMBER;
29     V_ORGANIZATION_ID NUMBER;
30     V_PO_HEADER_ID NUMBER;
31   BEGIN
32     SELECT
33       PO_HEADER_ID
34     INTO V_PO_HEADER_ID
35     FROM
36       PO_DISTRIBUTIONS_ALL
37     WHERE PO_DISTRIBUTION_ID = P_PO_DISTRIBUTION_ID;
38     SELECT
39       SHIP_TO_LOCATION_ID
40     INTO V_SHIP_TO_LOCATION_ID
41     FROM
42       PO_HEADERS_ALL
43     WHERE PO_HEADER_ID = V_PO_HEADER_ID;
44     SELECT
45       INVENTORY_ORGANIZATION_ID
46     INTO V_ORGANIZATION_ID
47     FROM
48       HR_LOCATIONS
49     WHERE LOCATION_ID = V_SHIP_TO_LOCATION_ID;
50     SELECT
51       ORGANIZATION_NAME
52     INTO V_ORGANIZATION_NAME
53     FROM
54       ORG_ORGANIZATION_DEFINITIONS
55     WHERE ORGANIZATION_ID = V_ORGANIZATION_ID;
56     RETURN (V_ORGANIZATION_NAME);
57     RETURN NULL;
58   EXCEPTION
59     WHEN NO_DATA_FOUND THEN
60       RETURN NULL;
61   END CF_ORGNFORMULA;
62   FUNCTION CF_LOCNFORMULA(P_PO_DISTRIBUTION_ID IN NUMBER) RETURN VARCHAR2 IS
63     V_LOCATION_CODE HR_LOCATIONS.LOCATION_CODE%TYPE;
64     V_SHIP_TO_LOCATION_ID NUMBER;
65     V_LOCATION_ID NUMBER;
66     V_PO_HEADER_ID NUMBER;
67     CURSOR C_LOC_CODE IS
68       SELECT
69         LOCATION_CODE
70       FROM
71         HR_LOCATIONS HL,
72         PO_HEADERS_ALL PH,
73         PO_DISTRIBUTIONS_ALL POD
74       WHERE PH.PO_HEADER_ID = POD.PO_HEADER_ID
75         AND POD.PO_DISTRIBUTION_ID = P_PO_DISTRIBUTION_ID
76         AND HL.LOCATION_ID = PH.SHIP_TO_LOCATION_ID;
77   BEGIN
78     OPEN C_LOC_CODE;
79     FETCH C_LOC_CODE
80      INTO V_LOCATION_CODE;
81     CLOSE C_LOC_CODE;
82     RETURN (V_LOCATION_CODE);
83   END CF_LOCNFORMULA;
84   FUNCTION CF_DR_REFORMULA(ORG_ID IN NUMBER
85                           ,INVOICE_TYPE_LOOKUP_CODE IN VARCHAR2
86                           ,ACCT_DR IN NUMBER
87                           ,EXCHANGE_RATE_TYPE IN VARCHAR2
88                           ,INVOICE_CURRENCY_CODE IN VARCHAR2
89                           ,EXCHANGE_DATE IN DATE
90                           ,EXCHANGE_RATE IN NUMBER
91                           ,DR_VAL IN NUMBER) RETURN NUMBER IS
92     V_DR_RE NUMBER;
93     V_SET_OF_BOOKS_ID NUMBER;
94     V_FUNCTIONAL_CURRENCY VARCHAR2(100);
95   BEGIN
96     SELECT
97       SET_OF_BOOKS_ID
98     INTO V_SET_OF_BOOKS_ID
99     FROM
100       HR_OPERATING_UNITS
101     WHERE ORGANIZATION_ID = NVL(ORG_ID
102        ,0);
103     SELECT
104       CURRENCY_CODE
105     INTO V_FUNCTIONAL_CURRENCY
106     FROM
107       GL_SETS_OF_BOOKS
108     WHERE SET_OF_BOOKS_ID = V_SET_OF_BOOKS_ID;
109     IF (NVL(INVOICE_TYPE_LOOKUP_CODE
110        ,'N') = ('GAIN/LOSS')) THEN
111       /*SRW.MESSAGE('9'
112                  ,'In gain loss')*/NULL;
113       IF (ACCT_DR = 0) THEN
114         RETURN (0);
115       ELSE
116         RETURN (ACCT_DR);
117       END IF;
118       /*SRW.MESSAGE(9
119                  ,'Value of acctd dr ' || ACCT_DR)*/NULL;
120     ELSE
121       IF EXCHANGE_RATE_TYPE IS NOT NULL THEN
122         V_DR_RE := JAI_CMN_UTILS_PKG.CURRENCY_CONVERSION(V_SET_OF_BOOKS_ID
123                                                         ,INVOICE_CURRENCY_CODE
124                                                         ,EXCHANGE_DATE
125                                                         ,EXCHANGE_RATE_TYPE
126                                                         ,EXCHANGE_RATE);
127         V_DR_RE := V_DR_RE * DR_VAL;
128         RETURN (V_DR_RE);
129       ELSE
130         RETURN (DR_VAL);
131       END IF;
132     END IF;
133     RETURN NULL;
134   EXCEPTION
135     WHEN OTHERS THEN
136       /*SRW.MESSAGE(3
137                  ,SQLERRM)*/NULL;
138       RETURN (NULL);
139   END CF_DR_REFORMULA;
140   FUNCTION CF_CR_REFORMULA(ORG_ID IN NUMBER
141                           ,INVOICE_TYPE_LOOKUP_CODE IN VARCHAR2
142                           ,ACCT_CR IN NUMBER
143                           ,EXCHANGE_RATE_TYPE IN VARCHAR2
144                           ,INVOICE_CURRENCY_CODE IN VARCHAR2
145                           ,EXCHANGE_DATE IN DATE
146                           ,EXCHANGE_RATE IN NUMBER
147                           ,CR_VAL IN NUMBER) RETURN NUMBER IS
148     V_CR_RE NUMBER;
149     V_SET_OF_BOOKS_ID NUMBER;
150     V_FUNCTIONAL_CURRENCY VARCHAR2(100);
151   BEGIN
152     SELECT
153       SET_OF_BOOKS_ID
154     INTO V_SET_OF_BOOKS_ID
155     FROM
156       HR_OPERATING_UNITS
157     WHERE ORGANIZATION_ID = NVL(ORG_ID
158        ,0);
159     SELECT
160       CURRENCY_CODE
161     INTO V_FUNCTIONAL_CURRENCY
162     FROM
163       GL_SETS_OF_BOOKS
164     WHERE SET_OF_BOOKS_ID = V_SET_OF_BOOKS_ID;
165     IF (NVL(INVOICE_TYPE_LOOKUP_CODE
166        ,'N') = ('GAIN/LOSS')) THEN
167       IF (ACCT_CR = 0) THEN
168         RETURN (0);
169       ELSE
170         RETURN (ACCT_CR);
171       END IF;
172     ELSE
173       IF EXCHANGE_RATE_TYPE IS NOT NULL THEN
174         V_CR_RE := JAI_CMN_UTILS_PKG.CURRENCY_CONVERSION(V_SET_OF_BOOKS_ID
175                                                         ,INVOICE_CURRENCY_CODE
176                                                         ,EXCHANGE_DATE
177                                                         ,EXCHANGE_RATE_TYPE
178                                                         ,EXCHANGE_RATE);
179         V_CR_RE := V_CR_RE * CR_VAL;
180         RETURN (V_CR_RE);
181       ELSE
182         RETURN (CR_VAL);
183       END IF;
184     END IF;
185     RETURN NULL;
186   EXCEPTION
187     WHEN OTHERS THEN
188       /*SRW.MESSAGE(4
189                  ,SQLERRM)*/NULL;
190       RETURN (NULL);
191   END CF_CR_REFORMULA;
192   FUNCTION CF_BATCHFORMULA(P_BATCH_ID IN NUMBER) RETURN VARCHAR2 IS
193     V_BATCH_NAME VARCHAR2(50);
194   BEGIN
195     SELECT
196       BATCH_NAME
197     INTO V_BATCH_NAME
198     FROM
199       AP_BATCHES_ALL
200     WHERE BATCH_ID = P_BATCH_ID;
201     RETURN (V_BATCH_NAME);
202     RETURN NULL;
203   EXCEPTION
204     WHEN NO_DATA_FOUND THEN
205       RETURN (NULL);
206   END CF_BATCHFORMULA;
207   FUNCTION CF_ADDRFORMULA(P_INVOICE_NUM IN VARCHAR2) RETURN VARCHAR2 IS
208     V_LEGAL_ENTITY NUMBER;
209     V_NAME VARCHAR2(60);
210     V_SET_OF_BOOKS_ID NUMBER;
211   BEGIN
212     SELECT
213       DISTINCT
214       SET_OF_BOOKS_ID
215     INTO V_SET_OF_BOOKS_ID
216     FROM
217       AP_INVOICES_ALL
218     WHERE INVOICE_NUM = P_INVOICE_NUM;
219     SELECT
220       NAME
221     INTO V_NAME
222     FROM
223       GL_SETS_OF_BOOKS_V
224     WHERE SET_OF_BOOKS_ID = V_SET_OF_BOOKS_ID;
225     RETURN (V_NAME);
226     RETURN NULL;
227   EXCEPTION
228     WHEN OTHERS THEN
229       RETURN (NULL);
230   END CF_ADDRFORMULA;
231   FUNCTION CF_ACCOUNTFORMULA(CCID IN NUMBER) RETURN VARCHAR2 IS
232     V_ACCOUNT VARCHAR2(1000);
233   BEGIN
234     JAI_CMN_GL_PKG.GET_ACCOUNT_NUMBER(P_CHART_OF_ACCTS_ID
235                                      ,CCID
236                                      ,V_ACCOUNT);
237     RETURN (V_ACCOUNT);
238   END CF_ACCOUNTFORMULA;
239   FUNCTION DEBIT_BALANCE(CAL_DATE IN DATE) RETURN NUMBER IS
240     V_VENDOR_ID NUMBER;
241     V_SET_OF_BOOKS_ID NUMBER;
242     V_FUNCTIONAL_CURRENCY VARCHAR2(100);
243     V_VENDOR_SITE_CODE VARCHAR2(15) := P_VENDOR_SITE_CODE2;
244     V_ORG_ID1 NUMBER := P_ORG_ID1;
245     V_SEGMENT2 NUMBER := P_SEGMENT2;
246     V_DEBIT_BALANCE NUMBER;
247   BEGIN
248     SELECT
249       VENDOR_ID
250     INTO V_VENDOR_ID
251     FROM
252       PO_VENDORS
253     WHERE SEGMENT1 = V_SEGMENT2;
254     SELECT
255       SET_OF_BOOKS_ID
256     INTO V_SET_OF_BOOKS_ID
257     FROM
258       HR_OPERATING_UNITS
259     WHERE ORGANIZATION_ID = NVL(V_ORG_ID1
260        ,0);
261     SELECT
262       CURRENCY_CODE
263     INTO V_FUNCTIONAL_CURRENCY
264     FROM
265       GL_SETS_OF_BOOKS
266     WHERE SET_OF_BOOKS_ID = V_SET_OF_BOOKS_ID;
267     V_DEBIT_BALANCE := JAI_AP_RPT_APCR_PKG.COMPUTE_DEBIT_BALANCE(CAL_DATE
268                                                                 ,V_VENDOR_ID
269                                                                 ,V_SET_OF_BOOKS_ID
270                                                                 ,V_VENDOR_SITE_CODE
271                                                                 ,P_ORG_ID);
272     /*SRW.MESSAGE(1000
273                ,'return value : ' || TO_CHAR(V_DEBIT_BALANCE))*/NULL;
274     RETURN (V_DEBIT_BALANCE);
275     RETURN NULL;
276   EXCEPTION
277     WHEN OTHERS THEN
278       /*SRW.MESSAGE(1
279                  ,SQLERRM)*/NULL;
280       RETURN (NULL);
281   END DEBIT_BALANCE;
282   FUNCTION CREDIT_BALANCE(CAL_DATE IN DATE) RETURN NUMBER IS
283     V_VENDOR_ID NUMBER;
284     V_SET_OF_BOOKS_ID NUMBER;
285     V_FUNCTIONAL_CURRENCY VARCHAR2(100);
286     V_VENDOR_SITE_CODE VARCHAR2(15) := P_VENDOR_SITE_CODE2;
287     V_ORG_ID1 NUMBER := P_ORG_ID1;
288     V_SEGMENT2 NUMBER := P_SEGMENT2;
289     V_CREDIT_BALANCE NUMBER;
290   BEGIN
291     SELECT
292       VENDOR_ID
293     INTO V_VENDOR_ID
294     FROM
295       PO_VENDORS
296     WHERE SEGMENT1 = V_SEGMENT2;
297     SELECT
298       SET_OF_BOOKS_ID
299     INTO V_SET_OF_BOOKS_ID
300     FROM
301       HR_OPERATING_UNITS
302     WHERE ORGANIZATION_ID = NVL(V_ORG_ID1
303        ,0);
304     /*SRW.MESSAGE(1000
305                ,'input to credit balance : ' || CAL_DATE || '/' || V_VENDOR_ID || '/' || V_SET_OF_BOOKS_ID || '/' || V_VENDOR_SITE_CODE || '/' || P_ORG_ID)*/NULL;
306     V_CREDIT_BALANCE := JAI_AP_RPT_APCR_PKG.COMPUTE_CREDIT_BALANCE(CAL_DATE
307                                                                   ,V_VENDOR_ID
308                                                                   ,V_SET_OF_BOOKS_ID
309                                                                   ,V_VENDOR_SITE_CODE
310                                                                   ,P_ORG_ID);
311     /*SRW.MESSAGE(1000
312                ,'return value : ' || TO_CHAR(V_CREDIT_BALANCE))*/NULL;
313     RETURN (V_CREDIT_BALANCE);
314     RETURN NULL;
315   EXCEPTION
316     WHEN OTHERS THEN
317       /*SRW.MESSAGE(2
318                  ,SQLERRM)*/NULL;
319       RETURN (NULL);
320   END CREDIT_BALANCE;
321   FUNCTION CF_V_NAMEFORMULA RETURN VARCHAR2 IS
322     CURSOR FOR_NAME(V_ID IN NUMBER,V_NO IN VARCHAR2) IS
323       SELECT
324         VENDOR_NAME
325       FROM
326         PO_VENDORS
327       WHERE VENDOR_ID = V_ID
328       OR SEGMENT1 = V_NO;
329     V_VENDOR_NAME VARCHAR2(80);
330   BEGIN
331     OPEN FOR_NAME(P_VENDOR_ID,P_VENDOR_NO);
332     FETCH FOR_NAME
333      INTO V_VENDOR_NAME;
334     CLOSE FOR_NAME;
335     RETURN (V_VENDOR_NAME);
336   END CF_V_NAMEFORMULA;
337   FUNCTION CF_P_SOBFORMULA RETURN VARCHAR2 IS
338     CURSOR FOR_SOB_ID(ORG_ID IN NUMBER) IS
339       SELECT
340         SET_OF_BOOKS_ID
341       FROM
342         HR_OPERATING_UNITS
343       WHERE ORGANIZATION_ID = ORG_ID;
344     CURSOR FOR_SOB_NAME(SOB_ID IN NUMBER) IS
345       SELECT
346         NAME
347       FROM
348         GL_SETS_OF_BOOKS
349       WHERE SET_OF_BOOKS_ID = SOB_ID;
350     V_SET_OF_BOOKS_ID NUMBER;
351     V_SOB_NAME VARCHAR2(100);
352   BEGIN
353     OPEN FOR_SOB_ID(P_ORG_ID);
354     FETCH FOR_SOB_ID
355      INTO V_SET_OF_BOOKS_ID;
356     CLOSE FOR_SOB_ID;
357     OPEN FOR_SOB_NAME(V_SET_OF_BOOKS_ID);
358     FETCH FOR_SOB_NAME
359      INTO V_SOB_NAME;
360     CLOSE FOR_SOB_NAME;
361     RETURN (V_SOB_NAME);
362   END CF_P_SOBFORMULA;
363   FUNCTION CF_TOTAL_CRFORMULA(VENDOR_SITE_CODE2 IN VARCHAR2
364                              ,SEGMENT2 IN VARCHAR2
365                              ,ORG_ID1 IN NUMBER) RETURN NUMBER IS
366     V_BAL NUMBER;
367   BEGIN
368     P_VENDOR_SITE_CODE2 := VENDOR_SITE_CODE2;
369     P_ORG_ID1 := ORG_ID1;
370     P_SEGMENT2 := SEGMENT2;
371     V_BAL := credit_balance(p_from_date);
372     RETURN (V_BAL);
373   END CF_TOTAL_CRFORMULA;
374   FUNCTION CF_TOTAL_DRFORMULA(VENDOR_SITE_CODE2 IN VARCHAR2
375                              ,SEGMENT2 IN VARCHAR2
376                              ,ORG_ID1 IN NUMBER) RETURN NUMBER IS
377     V_BAL NUMBER;
378   BEGIN
379     P_VENDOR_SITE_CODE2 := VENDOR_SITE_CODE2;
380     P_ORG_ID1 := ORG_ID1;
381     P_SEGMENT2 := SEGMENT2;
382     V_BAL := debit_balance(p_from_date);
383     RETURN (V_BAL);
384   END CF_TOTAL_DRFORMULA;
385   FUNCTION CF_CLOSING_BAL_CRFORMULA0070(VENDOR_SITE_CODE2 IN VARCHAR2
386                                        ,SEGMENT2 IN VARCHAR2
387                                        ,ORG_ID1 IN NUMBER) RETURN NUMBER IS
388     V_BAL NUMBER;
389   BEGIN
390     P_VENDOR_SITE_CODE2 := VENDOR_SITE_CODE2;
391     P_ORG_ID1 := ORG_ID1;
392     P_SEGMENT2 := SEGMENT2;
393     V_BAL := credit_balance(p_to_date + 1);
394     RETURN (V_BAL);
395   END CF_CLOSING_BAL_CRFORMULA0070;
396   FUNCTION CF_CLOSING_BAL_DRFORMULA0072(VENDOR_SITE_CODE2 IN VARCHAR2
397                                        ,SEGMENT2 IN VARCHAR2
398                                        ,ORG_ID1 IN NUMBER) RETURN NUMBER IS
399     V_BAL NUMBER;
400   BEGIN
401     P_VENDOR_SITE_CODE2 := VENDOR_SITE_CODE2;
402     P_ORG_ID1 := ORG_ID1;
403     P_SEGMENT2 := SEGMENT2;
404     V_BAL := debit_balance(p_to_date + 1);
405     RETURN (V_BAL);
406   END CF_CLOSING_BAL_DRFORMULA0072;
407   FUNCTION CF_TOTAL_CR1FORMULA(CF_TOTAL_CR IN NUMBER
408                               ,CF_TOTAL_DR IN NUMBER) RETURN NUMBER IS
409   BEGIN
410     IF CF_TOTAL_CR - CF_TOTAL_DR > 0 THEN
411       RETURN (CF_TOTAL_CR - CF_TOTAL_DR);
412     ELSE
413       RETURN (0);
414     END IF;
415     RETURN NULL;
416   END CF_TOTAL_CR1FORMULA;
417   FUNCTION CF_TOTAL_DR1FORMULA(CF_TOTAL_DR IN NUMBER
418                               ,CF_TOTAL_CR IN NUMBER) RETURN NUMBER IS
419   BEGIN
420     IF CF_TOTAL_DR - CF_TOTAL_CR > 0 THEN
421       RETURN (CF_TOTAL_DR - CF_TOTAL_CR);
422     ELSE
423       RETURN (0);
424     END IF;
425     RETURN NULL;
426   END CF_TOTAL_DR1FORMULA;
427   FUNCTION CF_CLOSING_BAL_CR1FORMULA0076(CF_CLOSING_BAL_CR IN NUMBER
428                                         ,CF_CLOSING_BAL_DR IN NUMBER) RETURN NUMBER IS
429   BEGIN
430     IF CF_CLOSING_BAL_CR - CF_CLOSING_BAL_DR > 0 THEN
431       RETURN (CF_CLOSING_BAL_CR - CF_CLOSING_BAL_DR);
432     ELSE
433       RETURN (0);
434     END IF;
435     RETURN NULL;
436   END CF_CLOSING_BAL_CR1FORMULA0076;
437   FUNCTION CF_CLOSING_BAL_DR1FORMULA0078(CF_CLOSING_BAL_DR IN NUMBER
438                                         ,CF_CLOSING_BAL_CR IN NUMBER) RETURN NUMBER IS
439   BEGIN
440     IF CF_CLOSING_BAL_DR - CF_CLOSING_BAL_CR > 0 THEN
441       RETURN (CF_CLOSING_BAL_DR - CF_CLOSING_BAL_CR);
442     ELSE
443       RETURN (0);
444     END IF;
445     RETURN NULL;
446   END CF_CLOSING_BAL_DR1FORMULA0078;
447   FUNCTION CF_1FORMULA(CF_TOTAL_CR1 IN NUMBER
448                       ,CS_2 IN NUMBER
449                       ,CS_1 IN NUMBER
450                       ,CF_TOTAL_DR1 IN NUMBER) RETURN NUMBER IS
451     V_OPEN_BALANCE NUMBER := 0;
452   BEGIN
453     IF CF_TOTAL_CR1 > 0 THEN
454       RETURN (NVL((NVL(CS_2
455                     ,0) - NVL(CS_1
456                     ,0))
457                 ,0) + CF_TOTAL_CR1);
458     ELSIF (CF_TOTAL_DR1) > 0 THEN
459       RETURN (NVL((NVL(CS_2
460                     ,0) - NVL(CS_1
461                     ,0))
462                 ,0) - CF_TOTAL_DR1);
463     ELSE
464       RETURN NVL((NVL(CS_2
465                     ,0) - NVL(CS_1
466                     ,0))
467                 ,0);
468     END IF;
469     RETURN NULL;
470   END CF_1FORMULA;
471   FUNCTION CF_2FORMULA(CS_3 IN NUMBER
472                       ,CS_4 IN NUMBER) RETURN NUMBER IS
473   BEGIN
474     RETURN NVL((NVL(CS_3
475                   ,0) - NVL(CS_4
476                   ,0))
477               ,0);
478   END CF_2FORMULA;
479   FUNCTION BEFOREREPORT RETURN BOOLEAN IS
480     CURSOR C_PROGRAM_ID(P_REQUEST_ID IN NUMBER) IS
481       SELECT
482         CONCURRENT_PROGRAM_ID,
483         NVL(ENABLE_TRACE
484            ,'N')
485       FROM
486         FND_CONCURRENT_REQUESTS
487       WHERE REQUEST_ID = P_REQUEST_ID;
488     V_ENABLE_TRACE FND_CONCURRENT_PROGRAMS.ENABLE_TRACE%TYPE;
489     V_PROGRAM_ID FND_CONCURRENT_PROGRAMS.CONCURRENT_PROGRAM_ID%TYPE;
490     CURSOR GET_AUDSID IS
491       SELECT
492         A.SID,
493         A.SERIAL#,
494         B.SPID
495       FROM
496         V$SESSION A,
497         V$PROCESS B
498       WHERE AUDSID = USERENV('SESSIONID')
499         AND A.PADDR = B.ADDR;
500     CURSOR GET_DBNAME IS
501       SELECT
502         NAME
503       FROM
504         V$DATABASE;
505     AUDSID NUMBER := USERENV('SESSIONID');
506     SID NUMBER;
507     SERIAL NUMBER;
508     SPID VARCHAR2(9);
509     NAME1 VARCHAR2(25);
510   BEGIN
511     P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
512     P_FROM_DATE_V := TO_CHAR(P_FROM_DATE, 'DD-MON-YYYY');
513     P_TO_DATE_V := TO_CHAR(P_TO_DATE, 'DD-MON-YYYY');
514     /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
515     /*SRW.MESSAGE(1275
516                ,'Report Version is 120.2 Last modified date is 25/07/2005')*/NULL;
517     IF P_TO_DATE < P_FROM_DATE THEN
518       /*SRW.MESSAGE(1275
519                  ,'From Date can''t be greater than To Date')*/NULL;
520       /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
521     END IF;
522     BEGIN
523       OPEN C_PROGRAM_ID(P_CONC_REQUEST_ID);
524       FETCH C_PROGRAM_ID
525        INTO V_PROGRAM_ID,V_ENABLE_TRACE;
526       CLOSE C_PROGRAM_ID;
527       /*SRW.MESSAGE(1275
528                  ,'v_program_id -> ' || V_PROGRAM_ID || ', v_enable_trace -> ' || V_ENABLE_TRACE || ', request_id -> ' || P_CONC_REQUEST_ID)*/NULL;
529       IF V_ENABLE_TRACE = 'Y' THEN
530         OPEN GET_AUDSID;
531         FETCH GET_AUDSID
532          INTO SID,SERIAL,SPID;
533         CLOSE GET_AUDSID;
534         OPEN GET_DBNAME;
535         FETCH GET_DBNAME
536          INTO NAME1;
537         CLOSE GET_DBNAME;
538         /*SRW.MESSAGE(599
539                    ,'TraceFile Name = ' || LOWER(NAME1) || '_ora_' || SPID || '.trc')*/NULL;
540         EXECUTE IMMEDIATE
541           'ALTER SESSION SET EVENTS ''10046 trace name context forever, level 4''';
542       END IF;
543       RETURN (TRUE);
544     EXCEPTION
545       WHEN OTHERS THEN
546         /*SRW.MESSAGE(1275
547                    ,'Error during enabling the trace. ErrCode -> ' || SQLCODE || ', ErrMesg ->' || SQLERRM)*/NULL;
548         RETURN (TRUE);
549     END;
550   END BEFOREREPORT;
551   FUNCTION AFTERREPORT RETURN BOOLEAN IS
552   BEGIN
553     /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
554     RETURN (TRUE);
555   END AFTERREPORT;
556 END JA_JAINAPCR_XMLP_PKG;
557 
558