[Home] [Help]
PACKAGE BODY: APPS.XLA_XLAABASR_XMLP_PKG
Source
1 PACKAGE BODY XLA_XLAABASR_XMLP_PKG AS
2 /* $Header: XLAABASRB.pls 120.0 2007/12/27 11:57:19 vjaganat noship $ */
3 FUNCTION BEFOREREPORT RETURN BOOLEAN IS
4 CURSOR C IS
5 SELECT
6 ENTITY_CODE,
7 EVENT_CLASS_CODE
8 FROM
9 XLA_EVENT_CLASSES_FVL EC
10 WHERE EC.APPLICATION_ID = P_APPLICATION_ID;
11 L_EXTRACT_RET_CODE BOOLEAN;
12 L_EVENT_CLASS_CODE VARCHAR2(30);
13 L_ENTITY_CODE VARCHAR2(30);
14 BEGIN
15 P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
16 /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
17 XLA_UTILITY_PKG.ACTIVATE('SRS_DBP'
18 ,'XLAABASR');
19 XLA_ENVIRONMENT_PKG.REFRESH;
20 SET_REPORT_CONSTANTS;
21 IF (NVL(P_REPORT_ONLY_MODE
22 ,'N') <> 'Y') THEN
23 IF (P_EVENT_CLASS_CODE IS NULL OR LENGTH(P_EVENT_CLASS_CODE) = 0) THEN
24 OPEN C;
25 LOOP
26 FETCH C
27 INTO L_ENTITY_CODE,L_EVENT_CLASS_CODE;
28 EXIT WHEN C%NOTFOUND;
29 XLA_UTILITY_PKG.TRACE('entity_code = ' || L_ENTITY_CODE
30 ,30);
31 XLA_UTILITY_PKG.TRACE('event_class_code = ' || L_EVENT_CLASS_CODE
32 ,30);
33 IF (XLA_EXTRACT_INTEGRITY_PKG.CHECK_EXTRACT_INTEGRITY(P_APPLICATION_ID => P_APPLICATION_ID
34 ,P_ENTITY_CODE => L_ENTITY_CODE
35 ,P_EVENT_CLASS_CODE => L_EVENT_CLASS_CODE
36 ,P_PROCESSING_MODE => P_PROCESSING_MODE) = FALSE) THEN
37 CP_EXTRACT_RET_CODE := 1;
38 END IF;
39 END LOOP;
40 CLOSE C;
41 ELSE
42 IF (XLA_EXTRACT_INTEGRITY_PKG.CHECK_EXTRACT_INTEGRITY(P_APPLICATION_ID => P_APPLICATION_ID
43 ,P_ENTITY_CODE => P_ENTITY_CODE
44 ,P_EVENT_CLASS_CODE => P_EVENT_CLASS_CODE
45 ,P_PROCESSING_MODE => P_PROCESSING_MODE) = FALSE) THEN
46 CP_EXTRACT_RET_CODE := 1;
47 END IF;
48 END IF;
49 END IF;
50 RETURN (TRUE);
51 EXCEPTION
52 WHEN OTHERS THEN
53 IF (C%ISOPEN) THEN
54 CLOSE C;
55 END IF;
56 /*SRW.MESSAGE('0'
57 ,SQLERRM)*/NULL;
58 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
59 END BEFOREREPORT;
60
61 PROCEDURE SET_REPORT_CONSTANTS IS
62 BEGIN
63 IF (P_REPORT_ONLY_MODE = 'N') THEN
64 CP_QUERY := ' AND ERR.REQUEST_ID = ' || P_CONC_REQUEST_ID;
65 ELSIF (P_REPORT_ONLY_MODE = 'Y') THEN
66 CP_QUERY := ' AND ERR.EVENT_CLASS_CODE = ''' || P_EVENT_CLASS_CODE || '''
67 AND ERR.ENTITY_CODE = ''' || P_ENTITY_CODE || '''
68 AND ERR.PRODUCT_RULE_CODE IS NULL ';
69 ELSE
70 CP_QUERY := ' AND ERR.REQUEST_ID = -1';
71 END IF;
72 EXCEPTION
73 WHEN OTHERS THEN
74 /*SRW.MESSAGE('0'
75 ,SQLERRM)*/NULL;
76 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
77 END SET_REPORT_CONSTANTS;
78
79 FUNCTION AFTERREPORT RETURN BOOLEAN IS
80 L_TEMP BOOLEAN;
81 BEGIN
82 IF CP_EXTRACT_RET_CODE = 1 OR P_REPORT_ONLY_MODE = 'Y' THEN
83 L_TEMP := FND_CONCURRENT.SET_COMPLETION_STATUS(STATUS => 'WARNING'
84 ,MESSAGE => NULL);
85 ELSIF CP_EXTRACT_RET_CODE = 0 THEN
86 NULL;
87 ELSE
88 L_TEMP := FND_CONCURRENT.SET_COMPLETION_STATUS(STATUS => 'ERROR'
89 ,MESSAGE => NULL);
90 END IF;
91 XLA_UTILITY_PKG.DEACTIVATE('XLAABASR');
92 /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
93 RETURN (TRUE);
94 EXCEPTION
95 WHEN OTHERS THEN
96 XLA_UTILITY_PKG.DEACTIVATE('XLAABASR');
97 /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
98 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
99 END AFTERREPORT;
100
101 FUNCTION CP_EXTRACT_RET_CODE_P RETURN NUMBER IS
102 BEGIN
103 RETURN CP_EXTRACT_RET_CODE;
104 END CP_EXTRACT_RET_CODE_P;
105
106 FUNCTION CP_QUERY_P RETURN VARCHAR2 IS
107 BEGIN
108 RETURN CP_QUERY;
109 END CP_QUERY_P;
110
111 END XLA_XLAABASR_XMLP_PKG;