[Home] [Help]
PACKAGE BODY: APPS.AR_ARBARL_XMLP_PKG
Source
1 PACKAGE BODY AR_ARBARL_XMLP_PKG AS
2 /* $Header: ARBARLB.pls 120.0 2007/12/27 11:08:11 abraghun noship $ */
3 FUNCTION AFTERREPORT RETURN BOOLEAN IS
4 BEGIN
5 IF (P_COMMIT_AT_END = 'Y') THEN
6 /* EXECUTE IMMEDIATE
7 'commit work';*/
8 commit;
9 ELSE
10 /* EXECUTE IMMEDIATE
11 'rollback work';*/
12 rollback;
13 END IF;
14 IF P_BAD_CCID_COUNT > 0 THEN
15 IF (FND_CONCURRENT.SET_COMPLETION_STATUS('WARNING'
16 ,ARP_STANDARD.FND_MESSAGE('ARBARL_WARN_BAD_CCID'))) THEN
17 NULL;
18 ELSE
19 /*SRW.MESSAGE('2001'
20 ,'Unable to set warning for bad ccids')*/NULL;
21 END IF;
22 END IF;
23 /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
24 RETURN (TRUE);
25 RETURN NULL;
26 EXCEPTION
27 WHEN OTHERS THEN
28 /*SRW.MESSAGE('2000'
29 ,SQLERRM)*/NULL;
30 RAISE;
31 END AFTERREPORT;
32
33 FUNCTION C_PP_AUTO_RULEFORMULA RETURN NUMBER IS
34 LINES NUMBER;
35 ERRMSG VARCHAR2(128);
36 ERRBUF VARCHAR2(256);
37 RETCODE VARCHAR2(256);
38 BUFFER VARCHAR2(256);
39 STATUS NUMBER;
40 PRAGMA AUTONOMOUS_TRANSACTION;
41 BEGIN
42 IF (P_RUN_AUTO_RULE = 'Y') THEN
43 ARP_AUTO_RULE.REFRESH(ERRBUF
44 ,RETCODE);
45 COMMIT;
46 LINES := ARP_AUTO_RULE.CREATE_DISTRIBUTIONS(P_COMMIT_AT_END
47 ,P_DEBUG_FLAG
48 ,NULL
49 ,P_DEBUG_SKIP_ROUNDING
50 ,P_CONTINUE_ON_ERROR);
51 IF (P_DEBUG_FLAG = 'Y') THEN
52 LOOP
53 DBMS_OUTPUT.GET_LINE(BUFFER,STATUS);
54 IF (STATUS > 0) THEN
55 EXIT;
56 END IF;
57 /*SRW.MESSAGE('100',BUFFER)*/NULL;
58 END LOOP;
59 END IF;
60 ELSE
61 LINES := 0;
62 IF NVL(CONC_REQUEST_ID,0) > 0 THEN
63 SELECT COUNT(*)
64 INTO LINES
65 FROM RA_CUST_TRX_LINE_GL_DIST
66 WHERE REQUEST_ID = CONC_REQUEST_ID
67 AND ACCOUNT_CLASS NOT IN ( 'UNEARN' , 'UNBILL' );
68
69 P_CONC_REQUEST_ID := CONC_REQUEST_ID;
70 END IF;
71 END IF;
72 RETURN (LINES);
73 RETURN NULL;
74 EXCEPTION
75 WHEN OTHERS THEN
76 /*SRW.MESSAGE('2000'
77 ,SQLERRM)*/NULL;
78 RAISE;
79 END C_PP_AUTO_RULEFORMULA;
80
81 FUNCTION AFTERPFORM RETURN BOOLEAN IS
82 BEGIN
83 P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
84 CONC_REQUEST_ID:=P_CONC_REQUEST_ID;
85 /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
86 P_DEBUG_SKIP_ROUNDING := SUBSTR(UPPER(P_DEBUG_SKIP_ROUNDING)
87 ,1
88 ,1);
89 IF P_DEBUG_SKIP_ROUNDING = 'Y' THEN
90 /*SRW.MESSAGE('0'
91 ,'ROUNDING SUPPRESSED!')*/NULL;
92 P_DEBUG_FLAG := 'Y';
93 ELSE
94 P_DEBUG_SKIP_ROUNDING := NULL;
95 END IF;
96 P_CONTINUE_ON_ERROR := SUBSTR(UPPER(P_CONTINUE_ON_ERROR)
97 ,1
98 ,1);
99 IF P_CONTINUE_ON_ERROR <> 'Y' THEN
100 P_CONTINUE_ON_ERROR := NULL;
101 END IF;
102 P_DEBUG_FLAG := SUBSTR(UPPER(P_DEBUG_FLAG)
103 ,1
104 ,1);
105 P_RUN_AUTO_RULE := SUBSTR(UPPER(P_RUN_AUTO_RULE)
106 ,1
107 ,1);
108 P_COMMIT_AT_END := SUBSTR(UPPER(P_COMMIT_AT_END)
109 ,1
110 ,1);
111 RETURN (TRUE);
112 END AFTERPFORM;
113
114 FUNCTION CHECK_CONC_REQUEST_ID(ID IN NUMBER) RETURN BOOLEAN IS
115 CURSOR SEL_REQUEST_ID(ID IN NUMBER) IS
116 SELECT
117 'x'
118 FROM
119 DUAL
120 WHERE exists (
121 SELECT
122 'x'
123 FROM
124 RA_CUST_TRX_LINE_GL_DIST
125 WHERE REQUEST_ID = ID );
126 CHK VARCHAR2(30);
127 BEGIN
128 IF ID IS NULL THEN
129 /*SRW.MESSAGE('100'
130 ,'Concurrent Request ID is mandatory')*/NULL;
131 RETURN (FALSE);
132 END IF;
133 OPEN SEL_REQUEST_ID(ID);
134 FETCH SEL_REQUEST_ID
135 INTO CHK;
136 IF SEL_REQUEST_ID%FOUND THEN
137 /*SRW.MESSAGE('100'
138 ,'Concurrent Request ' || TO_CHAR(ID) || ' alread used in ra_cust_trx_line_gl_dist')*/NULL;
139 CLOSE SEL_REQUEST_ID;
140 RETURN (FALSE);
141 END IF;
142 CLOSE SEL_REQUEST_ID;
143 RETURN (TRUE);
144 END CHECK_CONC_REQUEST_ID;
145
146 FUNCTION BEFOREREPORT RETURN BOOLEAN IS
147 BEGIN
148 P_CONTINUE_ON_ERROR_1:=P_CONTINUE_ON_ERROR;
149 P_RUN_AUTO_RULE_1:=P_RUN_AUTO_RULE;
150 P_COMMIT_AT_END_1:=P_COMMIT_AT_END;
151 P_DEBUG_FLAG_1:=P_DEBUG_FLAG;
152 P_DEBUG_SKIP_ROUNDING_1:=P_DEBUG_SKIP_ROUNDING;
153 GET_FLEX_ACCOUNT;
154 SETUP_WHO_DATA;
155 RETURN (TRUE);
156 END BEFOREREPORT;
157
158 FUNCTION CF_BAD_CCID_FUNCTFORMULA RETURN NUMBER IS
159 BEGIN
160 P_BAD_CCID_COUNT := P_BAD_CCID_COUNT + 1;
161 RETURN P_BAD_CCID_COUNT;
162 END CF_BAD_CCID_FUNCTFORMULA;
163
164 PROCEDURE GET_FLEX_ACCOUNT IS
165 BEGIN
166 /*SRW.MESSAGE(1000
167 ,'DEBUG: BeforeReport_Procs.Get_Flex_Account.')*/NULL;
168 END GET_FLEX_ACCOUNT;
169
170 PROCEDURE SETUP_WHO_DATA IS
171 BEGIN
172 /*SRW.MESSAGE(1000
173 ,'DEBUG: BeforeReport_Procs.Setup_Who_Data.')*/NULL;
174 ARP_STANDARD.SET_APPLICATION_INFORMATION(P_APPLICATION_ID
175 ,P_LANGUAGE_ID);
176 ARP_STANDARD.SET_WHO_INFORMATION(P_USER_ID
177 ,P_CONC_REQUEST_ID
178 ,P_APPLICATION_ID
179 ,P_PROGRAM_ID
180 ,NULL);
181 END SETUP_WHO_DATA;
182
183 END AR_ARBARL_XMLP_PKG;
184