DBA Data[Home] [Help]

PACKAGE BODY: APPS.CE_CEXSTMSR_XMLP_PKG

Source


1 PACKAGE BODY CE_CEXSTMSR_XMLP_PKG AS
2 /* $Header: CEXSTMSRB.pls 120.0 2007/12/28 07:57:30 abraghun noship $ */
3   FUNCTION BEFOREREPORT RETURN BOOLEAN IS
4   BEGIN
5     DECLARE
6       L_MESSAGE FND_NEW_MESSAGES.MESSAGE_TEXT%TYPE;
7     BEGIN
8       P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
9       P_STAT_DATE_FROM_T := TO_CHAR(P_STAT_DATE_FROM,fnd_global.nls_date_format);
10       P_STAT_DATE_TO_T := TO_CHAR(P_STAT_DATE_TO,fnd_global.nls_date_format);
11       INIT_SECURITY;
12       IF (P_TEST_LAYOUT = 'Y') THEN
13         RAISE NO_DATA_FOUND;
14       END IF;
15       BEGIN
16         SELECT
17           L.MEANING
18         INTO
19           C_ALL_TRANSLATION
20         FROM
21           CE_LOOKUPS L
22         WHERE L.LOOKUP_TYPE = 'LITERAL'
23           AND L.LOOKUP_CODE = 'ALL';
24       EXCEPTION
25         WHEN NO_DATA_FOUND THEN
26           SET_NAME('CE'
27                   ,'CE_PURGE_NO_SOB');
28           L_MESSAGE := GET;
29           RAISE_APPLICATION_ERROR(-20101
30                                  ,NULL);
31       END;
32       IF (P_BANK_ACCOUNT_ID IS NOT NULL) THEN
33         BEGIN
34           SELECT
35             ABB.BANK_NAME,
36             ABB.BANK_BRANCH_NAME,
37             ABA.BANK_ACCOUNT_NAME,
38             ABA.BANK_ACCOUNT_NUM,
39             ABA.CURRENCY_CODE
40           INTO
41             C_BANK_NAME_DSP
42             ,C_BANK_BRANCH_NAME_DSP
43             ,C_BANK_ACCOUNT_NAME_DSP
44             ,C_BANK_ACCOUNT_NUM_DSP
45             ,C_BANK_CURRENCY_CODE_DSP
46           FROM
47             CE_BANK_BRANCHES_V ABB,
48             CE_BANK_ACCTS_GT_V ABA
49           WHERE ABA.BANK_ACCOUNT_ID = P_BANK_ACCOUNT_ID
50             AND ABB.BRANCH_PARTY_ID = ABA.BANK_BRANCH_ID;
51         EXCEPTION
52           WHEN NO_DATA_FOUND THEN
53             SET_NAME('CE'
54                     ,'CE_INVALID_BANK');
55             L_MESSAGE := GET;
56             RAISE_APPLICATION_ERROR(-20101
57                                    ,NULL);
58         END;
59       ELSE
60         C_BANK_NAME_DSP := C_ALL_TRANSLATION;
61         C_BANK_BRANCH_NAME_DSP := C_ALL_TRANSLATION;
62         C_BANK_ACCOUNT_NAME_DSP := C_ALL_TRANSLATION;
63         C_BANK_ACCOUNT_NUM_DSP := C_ALL_TRANSLATION;
64         C_BANK_CURRENCY_CODE_DSP := C_ALL_TRANSLATION;
65       END IF;
66       IF (P_AS_OF_DATE IS NULL) THEN
67         C_AS_OF_DATE_DSP := ' - ';
68       ELSE
69         C_AS_OF_DATE_DSP := P_AS_OF_DATE;
70       END IF;
71       SELECT
72         MEANING
73       INTO
74         C_BALANCES_BY
75       FROM
76         CE_LOOKUPS
77       WHERE LOOKUP_TYPE = 'BALANCES_BY'
78         AND LOOKUP_CODE = P_BALANCES_BY;
79       IF (P_STAT_DATE_FROM IS NOT NULL AND P_STAT_DATE_TO IS NOT NULL) THEN
80         C_STAT_DATE_LEX := 'sh.statement_date BETWEEN to_date(''' || TO_CHAR(P_STAT_DATE_FROM
81                                   ,'DD-MON-YYYY') || ''',''DD-MON-YYYY'') AND to_date(''' || TO_CHAR(P_STAT_DATE_TO
82                                   ,'DD-MON-YYYY') || ''',''DD-MON-YYYY'')';
83       ELSIF (P_STAT_DATE_FROM IS NULL AND P_STAT_DATE_TO IS NOT NULL) THEN
84         C_STAT_DATE_LEX := 'sh.statement_date <= to_date(''' || TO_CHAR(P_STAT_DATE_TO
85                                   ,'DD-MON-YYYY') || ''',''DD-MON-YYYY'')';
86       ELSIF (P_STAT_DATE_FROM IS NOT NULL AND P_STAT_DATE_TO IS NULL) THEN
87         C_STAT_DATE_LEX := 'sh.statement_date >= to_date(''' || TO_CHAR(P_STAT_DATE_FROM
88                                   ,'DD-MON-YYYY') || ''',''DD-MON-YYYY'')';
89       END IF;
90       IF (P_STAT_NUMBER_FROM IS NOT NULL AND P_STAT_NUMBER_TO IS NOT NULL) THEN
91         C_STAT_NUMBER_LEX := 'sh.statement_number BETWEEN ''' || P_STAT_NUMBER_FROM || ''' AND ''' || P_STAT_NUMBER_TO || '''';
92       ELSIF (P_STAT_NUMBER_FROM IS NULL AND P_STAT_NUMBER_TO IS NOT NULL) THEN
93         C_STAT_NUMBER_LEX := 'sh.statement_number <= ''' || P_STAT_NUMBER_TO || '''';
94       ELSIF (P_STAT_NUMBER_FROM IS NOT NULL AND P_STAT_NUMBER_TO IS NULL) THEN
95         C_STAT_NUMBER_LEX := 'sh.statement_number >= ''' || P_STAT_NUMBER_FROM || '''';
96       END IF;
97       IF (P_DEBUG_MODE = 'Y') THEN
98         NULL;
99       END IF;
100     END;
101     RETURN (TRUE);
102   END BEFOREREPORT;
103 
104   FUNCTION AFTERREPORT RETURN BOOLEAN IS
105   BEGIN
106     RETURN (TRUE);
107   END AFTERREPORT;
108 
109   FUNCTION C_NET_MOVEMENTFORMULA(C_STAT_END_BAL IN NUMBER
110                                 ,C_STAT_BEGIN_BAL IN NUMBER) RETURN NUMBER IS
111   BEGIN
112     RETURN (C_STAT_END_BAL - C_STAT_BEGIN_BAL);
113   END C_NET_MOVEMENTFORMULA;
114 
115   FUNCTION C_ITEMSFORMULA(C_STAT_HEADER_ID IN NUMBER) RETURN NUMBER IS
116   BEGIN
117     DECLARE
118       ITEMS CE_STATEMENT_LINES.STATEMENT_LINE_ID%TYPE;
119     BEGIN
120       SELECT
121         count(*)
122       INTO
123         ITEMS
124       FROM
125         CE_STATEMENT_LINES
126       WHERE STATEMENT_HEADER_ID = C_STAT_HEADER_ID;
127       RETURN (NVL(ITEMS
128                 ,0));
129     EXCEPTION
130       WHEN NO_DATA_FOUND THEN
131         RETURN (0);
132     END;
133     RETURN NULL;
134   END C_ITEMSFORMULA;
135 
136   FUNCTION C_UNREC_ITEMSFORMULA(C_STAT_HEADER_ID IN NUMBER) RETURN NUMBER IS
137   BEGIN
138     DECLARE
139       ITEMS CE_STATEMENT_LINES.STATEMENT_LINE_ID%TYPE;
140     BEGIN
141       SELECT
142         count(*)
143       INTO
144         ITEMS
145       FROM
146         CE_STATEMENT_LINES
147       WHERE STATEMENT_HEADER_ID = C_STAT_HEADER_ID
148         AND STATUS = 'UNRECONCILED';
149       RETURN (NVL(ITEMS
150                 ,0));
151     EXCEPTION
152       WHEN NO_DATA_FOUND THEN
153         RETURN (0);
154     END;
155     RETURN NULL;
156   END C_UNREC_ITEMSFORMULA;
157 
158   FUNCTION C_STAT_UNREC_AMOUNTFORMULA(C_STAT_HEADER_ID IN NUMBER) RETURN NUMBER IS
159   BEGIN
160     DECLARE
161       AMOUNT CE_STATEMENT_LINES.AMOUNT%TYPE;
162       AMOUNT_CLEARED CE_RECONCILED_TRANSACTIONS_V.AMOUNT_CLEARED%TYPE;
163     BEGIN
164       SELECT
165         SUM(AMOUNT)
166       INTO
167         AMOUNT
168       FROM
169         CE_STATEMENT_LINES
170       WHERE STATEMENT_HEADER_ID = C_STAT_HEADER_ID;
171       SELECT
172         SUM(AMOUNT_CLEARED)
173       INTO
174         AMOUNT_CLEARED
175       FROM
176         CE_RECONCILED_TRANSACTIONS_V
177       WHERE STATEMENT_HEADER_ID = C_STAT_HEADER_ID;
178       RETURN (NVL(AMOUNT
179                 ,0) - NVL(AMOUNT_CLEARED
180                 ,0));
181     EXCEPTION
182       WHEN NO_DATA_FOUND THEN
183         RETURN (0);
184     END;
185     RETURN NULL;
186   END C_STAT_UNREC_AMOUNTFORMULA;
187 
188   FUNCTION G_BANKGROUPFILTER(C_BANK_ID IN NUMBER) RETURN BOOLEAN IS
189   BEGIN
190     IF (C_BANK_ID IS NOT NULL) THEN
191       C_THE_END := 'Y';
192     END IF;
193     RETURN (TRUE);
194   END G_BANKGROUPFILTER;
195 
196   FUNCTION C_LINES_UNREC_AMOUNTFORMULA(C_STAT_LINE_STATUS IN VARCHAR2
197                                       ,C_STAT_LINE_TYPE IN VARCHAR2
198                                       ,C_STAT_LINE_AMOUNT IN NUMBER
199                                       ,C_LINES_SUM_CLEARED IN NUMBER) RETURN NUMBER IS
200   BEGIN
201     IF (C_STAT_LINE_STATUS = 'EXTERNAL') THEN
202       RETURN (0);
203     ELSE
204       IF (C_STAT_LINE_STATUS not in ('UNRECONCILED','ERROR')) THEN
205         RETURN (0);
206       ELSIF (C_STAT_LINE_TYPE = 'RECEIPT') THEN
207         RETURN (C_STAT_LINE_AMOUNT - NVL(C_LINES_SUM_CLEARED
208                   ,0));
209       ELSE
210         RETURN -1 * (C_STAT_LINE_AMOUNT - NVL(C_LINES_SUM_CLEARED
211                   ,0));
212       END IF;
213     END IF;
214     RETURN NULL;
215   END C_LINES_UNREC_AMOUNTFORMULA;
216 
217   FUNCTION C_STAT_END_BALFORMULA(C_STAT_BEGIN_BAL IN NUMBER
218                                 ,C_STAT_DEBIT_AMOUNT IN NUMBER
219                                 ,C_STAT_CREDIT_AMOUNT IN NUMBER) RETURN NUMBER IS
220   BEGIN
221     RETURN (NVL(C_STAT_BEGIN_BAL
222               ,0) - C_STAT_DEBIT_AMOUNT + C_STAT_CREDIT_AMOUNT);
223   END C_STAT_END_BALFORMULA;
224 
225   FUNCTION C_DATEFORMATFORMULA(C_DATEFORMAT IN VARCHAR2) RETURN VARCHAR2 IS
226   BEGIN
227    -- RETURN (C_DATEFORMAT);
228     RETURN (fnd_global.nls_date_format);
232   BEGIN
229   END C_DATEFORMATFORMULA;
230 
231   FUNCTION C_ALL_TRANSLATION_P RETURN VARCHAR2 IS
233     RETURN C_ALL_TRANSLATION;
234   END C_ALL_TRANSLATION_P;
235 
236   FUNCTION C_BANK_NAME_DSP_P RETURN VARCHAR2 IS
237   BEGIN
238     RETURN C_BANK_NAME_DSP;
239   END C_BANK_NAME_DSP_P;
240 
241   FUNCTION C_STAT_DATE_LEX_P RETURN VARCHAR2 IS
242   BEGIN
243     RETURN C_STAT_DATE_LEX;
244   END C_STAT_DATE_LEX_P;
245 
246   FUNCTION C_SOB_NAME_P RETURN VARCHAR2 IS
247   BEGIN
248     RETURN C_SOB_NAME;
249   END C_SOB_NAME_P;
250 
251   FUNCTION C_SET_OF_BOOKS_ID_P RETURN NUMBER IS
252   BEGIN
253     RETURN C_SET_OF_BOOKS_ID;
254   END C_SET_OF_BOOKS_ID_P;
255 
256   FUNCTION C_THE_END_P RETURN VARCHAR2 IS
257   BEGIN
258     RETURN C_THE_END;
259   END C_THE_END_P;
260 
261   FUNCTION C_FUNC_CURR_CODE_P RETURN VARCHAR2 IS
262   BEGIN
263     RETURN C_FUNC_CURR_CODE;
264   END C_FUNC_CURR_CODE_P;
265 
266   FUNCTION C_BANK_BRANCH_NAME_DSP_P RETURN VARCHAR2 IS
267   BEGIN
268     RETURN C_BANK_BRANCH_NAME_DSP;
269   END C_BANK_BRANCH_NAME_DSP_P;
270 
271   FUNCTION C_BANK_ACCOUNT_NUM_DSP_P RETURN VARCHAR2 IS
272   BEGIN
273     RETURN C_BANK_ACCOUNT_NUM_DSP;
274   END C_BANK_ACCOUNT_NUM_DSP_P;
275 
276   FUNCTION C_BANK_ACCOUNT_NAME_DSP_P RETURN VARCHAR2 IS
277   BEGIN
278     RETURN C_BANK_ACCOUNT_NAME_DSP;
279   END C_BANK_ACCOUNT_NAME_DSP_P;
280 
281   FUNCTION C_BANK_CURRENCY_CODE_DSP_P RETURN VARCHAR2 IS
282   BEGIN
283     RETURN C_BANK_CURRENCY_CODE_DSP;
284   END C_BANK_CURRENCY_CODE_DSP_P;
285 
286   FUNCTION C_STAT_NUMBER_LEX_P RETURN VARCHAR2 IS
287   BEGIN
288     RETURN C_STAT_NUMBER_LEX;
289   END C_STAT_NUMBER_LEX_P;
290 
291   FUNCTION C_AS_OF_DATE_DSP_P RETURN VARCHAR2 IS
292   BEGIN
293     RETURN C_AS_OF_DATE_DSP;
294   END C_AS_OF_DATE_DSP_P;
295 
296   FUNCTION C_BALANCES_BY_P RETURN VARCHAR2 IS
297   BEGIN
298     RETURN C_BALANCES_BY;
299   END C_BALANCES_BY_P;
300 
301   PROCEDURE SET_NAME(APPLICATION IN VARCHAR2
302                     ,NAME IN VARCHAR2) IS
303   BEGIN
304 
305 begin FND_MESSAGE.SET_NAME(APPLICATION, NAME); end;
306     --STPROC.BIND_I(APPLICATION);
307     --STPROC.BIND_I(NAME);
308     --STPROC.EXECUTE;
309   END SET_NAME;
310 
311  /* PROCEDURE SET_TOKEN(TOKEN IN VARCHAR2
312                      ,VALUE IN VARCHAR2
313                      ,TRANSLATE IN BOOLEAN) IS
314   BEGIN
315     STPROC.INIT('declare TRANSLATE BOOLEAN; begin TRANSLATE := sys.diutil.int_to_bool(:TRANSLATE); FND_MESSAGE.SET_TOKEN(:TOKEN, :VALUE, TRANSLATE); end;');
316     STPROC.BIND_I(TRANSLATE);
317     STPROC.BIND_I(TOKEN);
318     STPROC.BIND_I(VALUE);
319     STPROC.EXECUTE;
320   END SET_TOKEN;
321 
322   PROCEDURE RETRIEVE(MSGOUT OUT NOCOPY VARCHAR2) IS
323   BEGIN
324     STPROC.INIT('begin FND_MESSAGE.RETRIEVE(:MSGOUT); end;');
325     STPROC.BIND_O(MSGOUT);
326     STPROC.EXECUTE;
327     STPROC.RETRIEVE(1
328                    ,MSGOUT);
329   END RETRIEVE;
330 
331   PROCEDURE CLEAR IS
332   BEGIN
333     STPROC.INIT('begin FND_MESSAGE.CLEAR; end;');
334     STPROC.EXECUTE;
335   END CLEAR;
336 
337   FUNCTION GET_STRING(APPIN IN VARCHAR2
338                      ,NAMEIN IN VARCHAR2) RETURN VARCHAR2 IS
339     X0 VARCHAR2(2000);
340   BEGIN
341     STPROC.INIT('begin :X0 := FND_MESSAGE.GET_STRING(:APPIN, :NAMEIN); end;');
342     STPROC.BIND_O(X0);
343     STPROC.BIND_I(APPIN);
344     STPROC.BIND_I(NAMEIN);
345     STPROC.EXECUTE;
346     STPROC.RETRIEVE(1
347                    ,X0);
348     RETURN X0;
349   END GET_STRING;*/
350 
351   FUNCTION GET RETURN VARCHAR2 IS
352     X0 VARCHAR2(2000);
353   BEGIN
354     begin X0 := FND_MESSAGE.GET; end;
355     --STPROC.BIND_O(X0);
356     --STPROC.EXECUTE;
357     --STPROC.RETRIEVE(1                 ,X0);
358     RETURN X0;
359   END GET;
360 
361   /*FUNCTION GET_ENCODED RETURN VARCHAR2 IS
362     X0 VARCHAR2(2000);
363   BEGIN
364     STPROC.INIT('begin :X0 := FND_MESSAGE.GET_ENCODED; end;');
365     STPROC.BIND_O(X0);
366     STPROC.EXECUTE;
367     STPROC.RETRIEVE(1
368                    ,X0);
369     RETURN X0;
370   END GET_ENCODED;
371 
372   PROCEDURE PARSE_ENCODED(ENCODED_MESSAGE IN VARCHAR2
373                          ,APP_SHORT_NAME OUT NOCOPY VARCHAR2
374                          ,MESSAGE_NAME OUT NOCOPY VARCHAR2) IS
375   BEGIN
376     STPROC.INIT('begin FND_MESSAGE.PARSE_ENCODED(:ENCODED_MESSAGE, :APP_SHORT_NAME, :MESSAGE_NAME); end;');
377     STPROC.BIND_I(ENCODED_MESSAGE);
378     STPROC.BIND_O(APP_SHORT_NAME);
379     STPROC.BIND_O(MESSAGE_NAME);
380     STPROC.EXECUTE;
381     STPROC.RETRIEVE(2
382                    ,APP_SHORT_NAME);
383     STPROC.RETRIEVE(3
384                    ,MESSAGE_NAME);
385   END PARSE_ENCODED;
386 
387   PROCEDURE SET_ENCODED(ENCODED_MESSAGE IN VARCHAR2) IS
388   BEGIN
389     STPROC.INIT('begin FND_MESSAGE.SET_ENCODED(:ENCODED_MESSAGE); end;');
390     STPROC.BIND_I(ENCODED_MESSAGE);
391     STPROC.EXECUTE;
392   END SET_ENCODED;
393 
394   PROCEDURE RAISE_ERROR IS
395   BEGIN
396     STPROC.INIT('begin FND_MESSAGE.RAISE_ERROR; end;');
397     STPROC.EXECUTE;
398   END RAISE_ERROR;
399 
400   PROCEDURE DEBUG(LINE IN VARCHAR2) IS
401   BEGIN
402     STPROC.INIT('begin CEP_STANDARD.DEBUG(:LINE); end;');
403     STPROC.BIND_I(LINE);
404     STPROC.EXECUTE;
405   END DEBUG;
406 
407   PROCEDURE ENABLE_DEBUG IS
408   BEGIN
409     STPROC.INIT('begin CEP_STANDARD.ENABLE_DEBUG; end;');
410     STPROC.EXECUTE;
411   END ENABLE_DEBUG;
412 
413   PROCEDURE DISABLE_DEBUG IS
414   BEGIN
415     STPROC.INIT('begin CEP_STANDARD.DISABLE_DEBUG; end;');
416     STPROC.EXECUTE;
417   END DISABLE_DEBUG;*/
418 
419   PROCEDURE INIT_SECURITY IS
420   BEGIN
421     begin cep_standard.init_security; end;
422     --STPROC.EXECUTE;
423   END INIT_SECURITY;
424 
425  /* FUNCTION GET_WINDOW_SESSION_TITLE RETURN VARCHAR2 IS
426     X0 VARCHAR2(2000);
427   BEGIN
428     STPROC.INIT('begin :X0 := CEP_STANDARD.GET_WINDOW_SESSION_TITLE; end;');
429     STPROC.BIND_O(X0);
430     STPROC.EXECUTE;
431     STPROC.RETRIEVE(1
432                    ,X0);
433     RETURN X0;
434   END GET_WINDOW_SESSION_TITLE;
435 
436   FUNCTION GET_EFFECTIVE_DATE(P_BANK_ACCOUNT_ID IN NUMBER
437                              ,P_TRX_CODE IN VARCHAR2
438                              ,P_RECEIPT_DATE IN DATE) RETURN DATE IS
439     X0 DATE;
440   BEGIN
441     STPROC.INIT('begin :X0 := CEP_STANDARD.GET_EFFECTIVE_DATE(:P_BANK_ACCOUNT_ID, :P_TRX_CODE, :P_RECEIPT_DATE); end;');
442     STPROC.BIND_O(X0);
443     STPROC.BIND_I(P_BANK_ACCOUNT_ID);
444     STPROC.BIND_I(P_TRX_CODE);
445     STPROC.BIND_I(P_RECEIPT_DATE);
446     STPROC.EXECUTE;
447     STPROC.RETRIEVE(1
448                    ,X0);
449     RETURN X0;
450   END GET_EFFECTIVE_DATE;*/
451 
452 END CE_CEXSTMSR_XMLP_PKG;
453