[Home] [Help]
PACKAGE BODY: APPS.PA_PAXACRTA_XMLP_PKG
Source
1 PACKAGE BODY PA_PAXACRTA_XMLP_PKG AS
2 /* $Header: PAXACRTAB.pls 120.0 2008/01/02 11:12:35 krreddy noship $ */
3 FUNCTION GET_COVER_PAGE_VALUES RETURN BOOLEAN IS
4 BEGIN
5 RETURN (TRUE);
6 EXCEPTION
7 WHEN OTHERS THEN
8 RETURN (FALSE);
9 END GET_COVER_PAGE_VALUES;
10 FUNCTION BEFOREREPORT RETURN BOOLEAN IS
11 BEGIN
12 DECLARE
13 INIT_FAILURE EXCEPTION;
14 NDF VARCHAR2(80);
15 ERRBUF VARCHAR2(525);
16 MESSAGE_BUF VARCHAR2(256);
17 NUMBER_OF_MESSAGES NUMBER;
18 BEGIN
19 P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
20 /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
21 /*SRW.USER_EXIT('FND GETPROFILE
22 NAME="PA_DEBUG_MODE"
23 FIELD=":p_debug_mode"
24 PRINT_ERROR="N"')*/NULL;
25 P_RULE_OPTIMIZER := FND_PROFILE.VALUE('PA_RULE_BASED_OPTIMIZER');
26 IF (GET_COMPANY_NAME <> TRUE) THEN
27 RAISE INIT_FAILURE;
28 END IF;
29 SELECT
30 MEANING
31 INTO NDF
32 FROM
33 PA_LOOKUPS
34 WHERE LOOKUP_CODE = 'NO_DATA_FOUND'
35 AND LOOKUP_TYPE = 'MESSAGE';
36 C_NO_DATA_FOUND := NDF;
37 /*SRW.MESSAGE(1
38 ,'Concurrent request id is ' || TO_CHAR(P_CONC_REQUEST_ID))*/NULL;
39 /*SRW.MESSAGE(1
40 ,'Calling Refresh Transaction Accumulation')*/NULL;
41 PA_PROJ_ACCUM_MAIN.BUILD_TXN_ACCUM(ERRBUF
42 ,C_RETCODE
43 ,P_PROJECT_NUM_FROM
44 ,P_PROJECT_NUM_TO
45 ,P_START_PA_PERIOD
46 ,P_END_PA_PERIOD
47 ,P_SYSTEM_LINKAGE_FUNCTION);
48 IF (C_RETCODE <> 0) THEN
49 /*SRW.MESSAGE(1
50 ,ERRBUF)*/NULL;
51 NUMBER_OF_MESSAGES := PA_DEBUG.NO_OF_DEBUG_MESSAGES;
52 IF (P_DEBUG_MODE = 'Y' AND NUMBER_OF_MESSAGES > 0) THEN
53 /*SRW.MESSAGE(1
54 ,'Debug Messages:')*/NULL;
55 FOR i IN 1 .. NUMBER_OF_MESSAGES LOOP
56 PA_DEBUG.GET_MESSAGE(I
57 ,MESSAGE_BUF);
58 /*SRW.MESSAGE(1
59 ,MESSAGE_BUF)*/NULL;
60 END LOOP;
61 END IF;
62 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
63 END IF;
64 EXCEPTION
65 WHEN NO_DATA_FOUND THEN
66 SELECT
67 MEANING
68 INTO NDF
69 FROM
70 PA_LOOKUPS
71 WHERE LOOKUP_CODE = 'NO_DATA_FOUND'
72 AND LOOKUP_TYPE = 'MESSAGE';
73 C_NO_DATA_FOUND := NDF;
74 C_DUMMY_DATA := 1;
75 WHEN OTHERS THEN
76 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
77 END;
78 RETURN (TRUE);
79 END BEFOREREPORT;
80 FUNCTION GET_COMPANY_NAME RETURN BOOLEAN IS
81 L_NAME GL_SETS_OF_BOOKS.NAME%TYPE;
82 BEGIN
83 SELECT
84 GL.NAME
85 INTO L_NAME
86 FROM
87 GL_SETS_OF_BOOKS GL,
88 PA_IMPLEMENTATIONS PI
89 WHERE GL.SET_OF_BOOKS_ID = PI.SET_OF_BOOKS_ID;
90 C_COMPANY_NAME_HEADER := L_NAME;
91 RETURN (TRUE);
92 EXCEPTION
93 WHEN OTHERS THEN
94 RETURN (FALSE);
95 END GET_COMPANY_NAME;
96 FUNCTION AFTERREPORT RETURN BOOLEAN IS
97 BEGIN
98 DECLARE
99 MESSAGE_BUF VARCHAR2(256);
100 NUMBER_OF_MESSAGES NUMBER;
101 ACCUM_ERROR EXCEPTION;
102 X_PROJECT_ID NUMBER;
103 X_RAW_COST_B NUMBER;
104 X_BILLABLE_RAW_COST_B NUMBER;
105 X_BURDENED_COST_B NUMBER;
106 X_BILLABLE_BURDENED_COST_B NUMBER;
107 X_QUANTITY_B NUMBER;
108 X_LABOR_HOURS_B NUMBER;
109 X_BILLABLE_QUANTITY_B NUMBER;
110 X_BILLABLE_LABOR_HOURS_B NUMBER;
111 X_REVENUE_B NUMBER;
112 X_RAW_COST_A NUMBER;
113 X_BILLABLE_RAW_COST_A NUMBER;
114 X_BURDENED_COST_A NUMBER;
115 X_BILLABLE_BURDENED_COST_A NUMBER;
116 X_QUANTITY_A NUMBER;
117 X_LABOR_HOURS_A NUMBER;
118 X_BILLABLE_QUANTITY_A NUMBER;
119 X_BILLABLE_LABOR_HOURS_A NUMBER;
120 X_REVENUE_A NUMBER;
121 BEGIN
122 /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
123 NUMBER_OF_MESSAGES := PA_ACCUM_SRW.GET_NUMBER_OF_PROJECTS;
124 /*SRW.MESSAGE(1
125 ,'No. of Projects Accumulated = ' || TO_CHAR(NUMBER_OF_MESSAGES))*/NULL;
126 BEGIN
127 FOR i IN 1 .. NUMBER_OF_MESSAGES LOOP
128 PA_ACCUM_SRW.REPORT_PROJECT_TXN_NUMBERS(I
129 ,X_PROJECT_ID
130 ,X_RAW_COST_B
131 ,X_BILLABLE_RAW_COST_B
132 ,X_BURDENED_COST_B
133 ,X_BILLABLE_BURDENED_COST_B
134 ,X_QUANTITY_B
135 ,X_LABOR_HOURS_B
136 ,X_BILLABLE_QUANTITY_B
137 ,X_BILLABLE_LABOR_HOURS_B
138 ,X_REVENUE_B
139 ,X_RAW_COST_A
140 ,X_BILLABLE_RAW_COST_A
141 ,X_BURDENED_COST_A
142 ,X_BILLABLE_BURDENED_COST_A
143 ,X_QUANTITY_A
144 ,X_LABOR_HOURS_A
145 ,X_BILLABLE_QUANTITY_A
146 ,X_BILLABLE_LABOR_HOURS_A
147 ,X_REVENUE_A);
148 /*SRW.MESSAGE(1
149 ,'Project Id = ')*/NULL;
150 /*SRW.MESSAGE(1
151 ,'|---------------------|---------------------------|')*/NULL;
152 /*SRW.MESSAGE(1
153 ,'| ACCUMULATION COLUMN | Before | After |')*/NULL;
154 /*SRW.MESSAGE(1
155 ,'|---------------------|---------------------------|')*/NULL;
156 /*SRW.MESSAGE(1
157 ,'|RAW COST ' || FMT(X_RAW_COST_B) || FMT(X_RAW_COST_A))*/NULL;
158 /*SRW.MESSAGE(1
159 ,'|BILLABLE RAW COST ' || FMT(X_BILLABLE_RAW_COST_B) || FMT(X_BILLABLE_RAW_COST_A))*/NULL;
160 /*SRW.MESSAGE(1
161 ,'|BURDENED COST ' || FMT(X_BURDENED_COST_B) || FMT(X_BURDENED_COST_A))*/NULL;
162 /*SRW.MESSAGE(1
163 ,'|BILLABLE BURDENED CST' || FMT(X_BILLABLE_BURDENED_COST_B) || FMT(X_BILLABLE_BURDENED_COST_A))*/NULL;
164 /*SRW.MESSAGE(1
165 ,'|QUANTITY ' || FMT(X_QUANTITY_B) || FMT(X_QUANTITY_A))*/NULL;
166 /*SRW.MESSAGE(1
167 ,'|LABOR HOURS ' || FMT(X_LABOR_HOURS_B) || FMT(X_LABOR_HOURS_A))*/NULL;
168 /*SRW.MESSAGE(1
169 ,'|BILLABLE QUANTITY ' || FMT(X_BILLABLE_QUANTITY_B) || FMT(X_BILLABLE_QUANTITY_A))*/NULL;
170 /*SRW.MESSAGE(1
171 ,'|BILLABLE LABOR HOURS ' || FMT(X_BILLABLE_LABOR_HOURS_B) || FMT(X_BILLABLE_LABOR_HOURS_A))*/NULL;
172 /*SRW.MESSAGE(1
173 ,'|REVENUE ' || FMT(X_REVENUE_B) || FMT(X_REVENUE_A))*/NULL;
174 /*SRW.MESSAGE(1
175 ,'|---------------------|---------------------------|')*/NULL;
176 END LOOP;
177 EXCEPTION
178 WHEN OTHERS THEN
179 NULL;
180 END;
181 NUMBER_OF_MESSAGES := PA_DEBUG.NO_OF_DEBUG_MESSAGES;
182 IF (P_DEBUG_MODE = 'Y' AND NUMBER_OF_MESSAGES > 0) THEN
183 /*SRW.MESSAGE(1
184 ,'Debug Messages:')*/NULL;
185 FOR i IN 1 .. NUMBER_OF_MESSAGES LOOP
186 PA_DEBUG.GET_MESSAGE(I
187 ,MESSAGE_BUF);
188 /*SRW.MESSAGE(1
189 ,MESSAGE_BUF)*/NULL;
190 END LOOP;
191 END IF;
192 EXCEPTION
193 WHEN OTHERS THEN
194 /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
195 END;
196 RETURN (TRUE);
197 END AFTERREPORT;
198 FUNCTION FMT(NUMBER_IN IN NUMBER) RETURN VARCHAR2 IS
199 BEGIN
200 RETURN TO_CHAR(NVL(NUMBER_IN
201 ,0)
202 ,'9999999990D99');
203 END FMT;
204 FUNCTION CF_CORBFORMULA(PROJECT_TYPE_CLASS_CODE IN VARCHAR2) RETURN VARCHAR2 IS
205 BEGIN
206 IF PROJECT_TYPE_CLASS_CODE = 'CAPITAL' THEN
207 RETURN P_CAPITAL;
208 ELSE
209 RETURN P_BILLABLE;
210 END IF;
211 END CF_CORBFORMULA;
212 FUNCTION CF_NOTCORBFORMULA(PROJECT_TYPE_CLASS_CODE IN VARCHAR2) RETURN VARCHAR2 IS
213 BEGIN
214 IF PROJECT_TYPE_CLASS_CODE = 'CAPITAL' THEN
215 RETURN P_NONCAPITAL;
216 ELSE
217 RETURN P_NONBILLABLE;
218 END IF;
219 END CF_NOTCORBFORMULA;
220 FUNCTION C_FMT_MASKFORMULA RETURN VARCHAR2 IS
221 TMP_FMT_MASK VARCHAR2(15);
222 BEGIN
223 TMP_FMT_MASK := PA_CURRENCY.CURRENCY_FMT_MASK(15);
224 RETURN TMP_FMT_MASK;
225 END C_FMT_MASKFORMULA;
226 FUNCTION CF_CMT_EXCEPTIONSFORMULA(SUM_EXCEPTION_CODE IN VARCHAR2) RETURN CHAR IS
227 TMP_MESSAGE VARCHAR2(255);
228 BEGIN
229 FND_MESSAGE.SET_NAME('PA'
230 ,SUM_EXCEPTION_CODE);
231 SELECT
232 SUBSTRB(FND_MESSAGE.GET
233 ,1
234 ,255)
235 INTO TMP_MESSAGE
236 FROM
237 DUAL;
238 RETURN TMP_MESSAGE;
239 END CF_CMT_EXCEPTIONSFORMULA;
240 FUNCTION CF_CMT_LINE_EXCEPTFORMULA(CMT_REJECTION_CODE IN VARCHAR2) RETURN VARCHAR2 IS
241 TMP_LINE_EXCEPT VARCHAR2(255);
242 BEGIN
243 FND_MESSAGE.SET_NAME('PA'
244 ,CMT_REJECTION_CODE);
245 SELECT
246 SUBSTRB(FND_MESSAGE.GET
247 ,1
248 ,255)
249 INTO TMP_LINE_EXCEPT
250 FROM
251 DUAL;
252 RETURN TMP_LINE_EXCEPT;
253 END CF_CMT_LINE_EXCEPTFORMULA;
254 FUNCTION C_COMPANY_NAME_HEADER_P RETURN VARCHAR2 IS
255 BEGIN
256 RETURN C_COMPANY_NAME_HEADER;
257 END C_COMPANY_NAME_HEADER_P;
258 FUNCTION C_NO_DATA_FOUND_P RETURN VARCHAR2 IS
259 BEGIN
260 RETURN C_NO_DATA_FOUND;
261 END C_NO_DATA_FOUND_P;
262 FUNCTION C_DUMMY_DATA_P RETURN NUMBER IS
263 BEGIN
264 RETURN C_DUMMY_DATA;
265 END C_DUMMY_DATA_P;
266 FUNCTION C_RETCODE_P RETURN NUMBER IS
267 BEGIN
268 RETURN C_RETCODE;
269 END C_RETCODE_P;
270 END PA_PAXACRTA_XMLP_PKG;
271