DBA Data[Home] [Help]

PACKAGE BODY: APPS.JA_JAINITCR_XMLP_PKG

Source


1 PACKAGE BODY JA_JAINITCR_XMLP_PKG AS
2 /* $Header: JAINITCRB.pls 120.3 2008/02/19 12:54:42 jmeena noship $ */
3   FUNCTION CONVERT_NUMBER(IN_NUMERAL IN INTEGER := 0) RETURN VARCHAR2 IS
4     NUMBER_TOO_LARGE EXCEPTION;
5     NUMERAL INTEGER := ABS(IN_NUMERAL);
6     MAX_DIGIT INTEGER := 12;
7     NUMBER_TEXT VARCHAR2(240) := '';
8     CURRENT_SEGMENT VARCHAR2(80);
9     B_ZERO VARCHAR2(25);
10     B_THOUSAND VARCHAR2(25);
11     THOUSAND NUMBER := POWER(10
12          ,3);
13     B_LAKH VARCHAR2(25);
14     LAKH NUMBER := POWER(10
15          ,5);
16     B_CRORE VARCHAR2(25);
17     CRORE NUMBER := POWER(10
18          ,7);
19     FUNCTION CONVERT_NUMBER(SEGMENT IN NUMBER) RETURN VARCHAR2 IS
20       VALUE_TEXT VARCHAR2(80);
21     BEGIN
22       VALUE_TEXT := TO_CHAR(TO_DATE(SEGMENT
23                                    ,'YYYY')
24                            ,'Yyyysp');
25       RETURN (VALUE_TEXT);
26     END CONVERT_NUMBER;
27   BEGIN
28     IF NUMERAL >= POWER(10
29          ,MAX_DIGIT) THEN
30       RAISE NUMBER_TOO_LARGE;
31     END IF;
32     SELECT
33       ' ' || LC1.meaning || ' ', --Changed from ap_lookup_codes to ja_lookups for Bug#5930605
34       ' ' || LC2.meaning || ' ', --Changed from ap_lookup_codes to ja_lookups for Bug#5930605
35       ' ' || LC3.meaning || ' ', --Changed from ap_lookup_codes to ja_lookups for Bug#5930605
36       ' ' || LC4.meaning  --Changed from ap_lookup_codes to ja_lookups for Bug#5930605
37     INTO B_CRORE,B_LAKH,B_THOUSAND,B_ZERO
38     FROM
39       ja_lookups LC1, --Changed from ap_lookup_codes to ja_lookups for Bug#5930605
40       ja_lookups LC2, --Changed from ap_lookup_codes to ja_lookups for Bug#5930605
41       ja_lookups LC3, --Changed from ap_lookup_codes to ja_lookups for Bug#5930605
42       ja_lookups LC4 --Changed from ap_lookup_codes to ja_lookups for Bug#5930605
43     WHERE LC1.LOOKUP_CODE = 'CRORE'
44       AND LC1.LOOKUP_TYPE = 'JAI_NLS_TRANSLATION' --Modified for bug# 5930605
45       AND LC2.LOOKUP_CODE = 'LAKH'
46       AND LC2.LOOKUP_TYPE = 'JAI_NLS_TRANSLATION' -- Modified for bug# 5930605
47       AND LC3.LOOKUP_CODE = 'THOUSAND'
48       AND LC3.LOOKUP_TYPE = 'JAI_NLS_TRANSLATION' -- Modified for bug# 5930605
49       AND LC4.LOOKUP_CODE = 'ZERO'
50       AND LC4.LOOKUP_TYPE = 'JAI_NLS_TRANSLATION'; -- Modified for bug# 5930605
51     IF NUMERAL = 0 THEN
52       RETURN (B_ZERO);
53     END IF;
54     CURRENT_SEGMENT := TRUNC(NUMERAL / CRORE);
55     NUMERAL := NUMERAL - (CURRENT_SEGMENT * CRORE);
56     IF CURRENT_SEGMENT <> 0 THEN
57       NUMBER_TEXT := NUMBER_TEXT || CONVERT_NUMBER(CURRENT_SEGMENT) || B_CRORE;
58     END IF;
59     CURRENT_SEGMENT := TRUNC(NUMERAL / LAKH);
60     NUMERAL := NUMERAL - (CURRENT_SEGMENT * LAKH);
61     IF CURRENT_SEGMENT <> 0 THEN
62       NUMBER_TEXT := NUMBER_TEXT || CONVERT_NUMBER(CURRENT_SEGMENT) || B_LAKH;
63     END IF;
64     CURRENT_SEGMENT := TRUNC(NUMERAL / THOUSAND);
65     NUMERAL := NUMERAL - (CURRENT_SEGMENT * THOUSAND);
66     IF CURRENT_SEGMENT <> 0 THEN
67       NUMBER_TEXT := NUMBER_TEXT || CONVERT_NUMBER(CURRENT_SEGMENT) || B_THOUSAND;
68     END IF;
69     IF NUMERAL <> 0 THEN
70       NUMBER_TEXT := NUMBER_TEXT || CONVERT_NUMBER(NUMERAL);
71     END IF;
72     NUMBER_TEXT := SUBSTR(NUMBER_TEXT
73                          ,1
74                          ,1) || RTRIM(LOWER(SUBSTR(NUMBER_TEXT
75                                      ,2
76                                      ,NVL(LENGTH(NUMBER_TEXT)
77                                         ,0))));
78     RETURN (NUMBER_TEXT);
79   EXCEPTION
80     WHEN NUMBER_TOO_LARGE THEN
81       RETURN (NULL);
82     WHEN OTHERS THEN
83       RETURN (NULL);
84   END CONVERT_NUMBER;
85 
86   FUNCTION CF_3FORMULA(CS_TDS_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
87     TEMP VARCHAR2(240);
88     TMP NUMBER;
89   BEGIN
90     TMP := CS_TDS_AMOUNT;
91     TEMP := 'Certified that a sum of Rs.("in words") ' || RTRIM(CONVERT_NUMBER(TMP)) || ' only has been deducted at Source and paid to the credit of the central government as per details given above';
92     RETURN (TEMP);
93   END CF_3FORMULA;
94 
95   FUNCTION AFTERREPORT RETURN BOOLEAN IS
96   BEGIN
97     UPDATE
98       JAI_AP_TDS_F16_HDRS_ALL
99     SET
100       ISSUE_DATE = SYSDATE
101       ,PRINT_FLAG = 'Y'
102     WHERE CERTIFICATE_NUM >= NVL(P_CERTIFICATE_START_NO
103        ,CERTIFICATE_NUM)
104       AND CERTIFICATE_NUM <= NVL(P_CERTIFICATE_END_NO
105        ,CERTIFICATE_NUM)
106       AND VENDOR_ID = NVL(P_VENDOR_ID
107        ,VENDOR_ID)
108       AND TRUNC(FROM_DATE) >= NVL(P_FROM_DATE
109        ,TRUNC(FROM_DATE))
110       AND TRUNC(TO_DATE) <= NVL(P_TO_DATE
111        ,TRUNC(TO_DATE));
112     COMMIT;
113     /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
114     RETURN (TRUE);
115   END AFTERREPORT;
116 
117   FUNCTION BANK_BRANCHFORMULA(C_CHQ IN VARCHAR2
118                              ,TDS_INVOICE_ID IN NUMBER
119                              ,TDS_ID IN NUMBER) RETURN VARCHAR2 IS
120     BRANCH_NAME VARCHAR2(190);
121     P_BANK_NAME VARCHAR2(30);
122     P_BANK_BRANCH_NAME VARCHAR2(30);
123     P_ADD1 VARCHAR2(35);
124     P_ADD2 VARCHAR2(35);
125     P_ADD3 VARCHAR2(35);
126     P_CITY VARCHAR2(25);
127     ADDRESS VARCHAR2(130);
128     CURSOR GET_BANK_ADD_CUR IS
129       SELECT
130         ATTRIBUTE2
131       FROM
132         AP_CHECKS_ALL
133       WHERE ATTRIBUTE3 = C_CHQ
134         AND ATTRIBUTE_CATEGORY = 'India Payment Information'
135         AND CHECK_ID in (
136         SELECT
137           CHECK_ID
138         FROM
139           AP_INVOICE_PAYMENTS_ALL
140         WHERE INVOICE_ID = TDS_INVOICE_ID );
141     V_BANK_ADD VARCHAR2(150);
142   BEGIN
143     OPEN GET_BANK_ADD_CUR;
144     FETCH GET_BANK_ADD_CUR
145      INTO V_BANK_ADD;
146     CLOSE GET_BANK_ADD_CUR;
147     RETURN (V_BANK_ADD);
148   EXCEPTION
149     WHEN NO_DATA_FOUND THEN
150       BEGIN
151         SELECT
152           BANK_NAME,
153           BANK_BRANCH_NAME,
154           ADDRESS_LINE1,
155           ADDRESS_LINE2,
156           ADDRESS_LINE3,
157           CITY
158         INTO P_BANK_NAME,P_BANK_BRANCH_NAME,P_ADD1,P_ADD2,P_ADD3,P_CITY
159         FROM
160           AP_BANK_BRANCHES
161         WHERE BANK_BRANCH_ID in (
162           SELECT
163             BANK_BRANCH_ID
164           FROM
165             AP_BANK_ACCOUNTS_ALL
166           WHERE BANK_ACCOUNT_ID IN (
167             SELECT
168               DISTINCT
169               EXTERNAL_BANK_ACCOUNT_ID
170             FROM
171               AP_BANK_ACCOUNT_USES_ALL
172             WHERE PRIMARY_FLAG = 'Y'
173               AND VENDOR_ID = TDS_ID ) );
174         IF P_ADD1 IS NOT NULL THEN
175           ADDRESS := P_ADD1;
176         END IF;
177         IF P_ADD2 IS NOT NULL THEN
178           ADDRESS := ADDRESS || ',' || P_ADD2;
179         END IF;
180         IF P_ADD3 IS NOT NULL THEN
181           ADDRESS := ADDRESS || ',' || P_ADD3;
182         END IF;
183         IF P_CITY IS NOT NULL THEN
184           ADDRESS := ADDRESS || ',' || P_CITY;
185         END IF;
186         BRANCH_NAME := P_BANK_NAME || ' ' || P_BANK_BRANCH_NAME || ' ,' || ADDRESS;
187         RETURN (BRANCH_NAME);
188       EXCEPTION
189         WHEN NO_DATA_FOUND THEN
190           RETURN ('N/A');
191         WHEN OTHERS THEN
192           NULL;
193       END;
194     WHEN OTHERS THEN
195       RETURN ('N/A');
196   END BANK_BRANCHFORMULA;
197 
198   FUNCTION CF_1FORMULA RETURN VARCHAR2 IS
199     CURSOR ORG_NAME_CUR(P_ORGANIZATION_ID IN NUMBER) IS
200       SELECT
201         NAME
202       FROM
203         HR_ORGANIZATION_UNITS
204       WHERE ORGANIZATION_ID = P_ORGANIZATION_ID;
205     V_NAME1 VARCHAR(60);
206   BEGIN
207     OPEN ORG_NAME_CUR(P_ORGANIZATION_ID);
208     FETCH ORG_NAME_CUR
209      INTO V_NAME1;
210     CLOSE ORG_NAME_CUR;
211     RETURN (V_NAME1);
212   END CF_1FORMULA;
213 
214   FUNCTION CF_2FORMULA RETURN VARCHAR2 IS
215     V_ADDRESS1 VARCHAR2(840);
216   BEGIN
217     SELECT
218       DECODE(HOU.LOCATION_ID
219             ,NULL
220             ,HOU.INTERNAL_ADDRESS_LINE
221             ,LOC.ADDRESS_LINE_1 || ',' || LOC.ADDRESS_LINE_2 || ',' || LOC.ADDRESS_LINE_3 || ',' || LOC.TOWN_OR_CITY || ',' || LOC.POSTAL_CODE || ',' || LOC.COUNTRY)
222     INTO V_ADDRESS1
223     FROM
224       HR_ORGANIZATION_UNITS HOU,
225       HR_LOCATIONS LOC
226     WHERE HOU.ORGANIZATION_ID = P_ORGANIZATION_ID
227       AND HOU.LOCATION_ID = loc.location_id (+);
228     RETURN (V_ADDRESS1);
229   EXCEPTION
230     WHEN NO_DATA_FOUND THEN
231       RETURN NULL;
232   END CF_2FORMULA;
233 
234   FUNCTION CP_1FORMULA RETURN CHAR IS
235   BEGIN
236     NULL;
237   END CP_1FORMULA;
238 
239   FUNCTION CF_VEN_PAN_NOFORMULA(VEN_ID IN NUMBER) RETURN CHAR IS
240     V_PAN_NO JAI_AP_TDS_VENDOR_HDRS.PAN_NO%TYPE;
241     CURSOR GET_PAN_NO_CUR(P_VEN_ID IN NUMBER) IS
242       SELECT
243         PAN_NO
244       FROM
245         JAI_AP_TDS_VENDOR_HDRS
246       WHERE VENDOR_ID = P_VEN_ID;
247   BEGIN
248     OPEN GET_PAN_NO_CUR(VEN_ID);
249     FETCH GET_PAN_NO_CUR
250      INTO V_PAN_NO;
251     CLOSE GET_PAN_NO_CUR;
252     RETURN V_PAN_NO;
253   END CF_VEN_PAN_NOFORMULA;
254 
255   FUNCTION CF_CHECK_DEP_DATEFORMULA(CHQ IN NUMBER) RETURN DATE IS
256     CURSOR CHK_DEP_DATE_CUR IS
257       SELECT
258         CHECK_DEPOSIT_DATE
259       FROM
260         JAI_AP_TDS_PAYMENTS APC,
261         JAI_AP_TDS_F16_HDRS_ALL AFRM
262       WHERE CHECK_NUMBER = CHQ
263         AND APC.VENDOR_ID = AFRM.TAX_AUTHORITY_ID;
264     V_CHQ_NO DATE;
265   BEGIN
266     OPEN CHK_DEP_DATE_CUR;
267     FETCH CHK_DEP_DATE_CUR
268      INTO V_CHQ_NO;
269     CLOSE CHK_DEP_DATE_CUR;
270     RETURN (V_CHQ_NO);
271   EXCEPTION
272     WHEN NO_DATA_FOUND THEN
273       /*SRW.MESSAGE(20
274                  ,'NO cheque deposit given for the cheque')*/NULL;
275       RETURN NULL;
276     WHEN OTHERS THEN
277       /*SRW.MESSAGE(20
278                  ,'Cheque date is improper in the system')*/NULL;
279       RETURN NULL;
280   END CF_CHECK_DEP_DATEFORMULA;
281 
282   FUNCTION BEFOREREPORT RETURN BOOLEAN IS
283     CURSOR C_PROGRAM_ID(P_REQUEST_ID IN NUMBER) IS
284       SELECT
285         CONCURRENT_PROGRAM_ID,
286         NVL(ENABLE_TRACE
287            ,'N')
288       FROM
289         FND_CONCURRENT_REQUESTS
290       WHERE REQUEST_ID = P_REQUEST_ID;
291     CURSOR GET_AUDSID IS
292       SELECT
293         A.SID,
294         A.SERIAL#,
295         B.SPID
296       FROM
297         V$SESSION A,
298         V$PROCESS B
299       WHERE AUDSID = USERENV('SESSIONID')
300         AND A.PADDR = B.ADDR;
301     CURSOR GET_DBNAME IS
302       SELECT
303         NAME
304       FROM
305         V$DATABASE;
306     V_ENABLE_TRACE FND_CONCURRENT_PROGRAMS.ENABLE_TRACE%TYPE;
307     V_PROGRAM_ID FND_CONCURRENT_PROGRAMS.CONCURRENT_PROGRAM_ID%TYPE;
308     AUDSID NUMBER := USERENV('SESSIONID');
309     SID NUMBER;
310     SERIAL NUMBER;
311     SPID VARCHAR2(9);
312     NAME1 VARCHAR2(25);
313   BEGIN
314     P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
315     /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
316     /*SRW.MESSAGE(1275
317                ,'Report Version is 120.15 last modified date is 27-Jun-2007')*/NULL;
318     BEGIN
319       OPEN C_PROGRAM_ID(P_CONC_REQUEST_ID);
320       FETCH C_PROGRAM_ID
321        INTO V_PROGRAM_ID,V_ENABLE_TRACE;
322       CLOSE C_PROGRAM_ID;
323       /*SRW.MESSAGE(1275
324                  ,'v_program_id -> ' || V_PROGRAM_ID || ', v_enable_trace -> ' || V_ENABLE_TRACE || ', request_id -> ' || P_CONC_REQUEST_ID)*/NULL;
325       IF V_ENABLE_TRACE = 'Y' THEN
326         OPEN GET_AUDSID;
327         FETCH GET_AUDSID
328          INTO SID,SERIAL,SPID;
329         CLOSE GET_AUDSID;
330         OPEN GET_DBNAME;
331         FETCH GET_DBNAME
332          INTO NAME1;
333         CLOSE GET_DBNAME;
334         /*SRW.MESSAGE(1275
335                    ,'TraceFile Name = ' || LOWER(NAME1) || '_ora_' || SPID || '.trc')*/NULL;
336         EXECUTE IMMEDIATE
337           'ALTER SESSION SET EVENTS ''10046 trace name context forever, level 4''';
338       END IF;
339     EXCEPTION
340       WHEN OTHERS THEN
341         /*SRW.MESSAGE(1275
342                    ,'Error during enabling the trace. ErrCode -> ' || SQLCODE || ', ErrMesg -> ' || SQLERRM)*/NULL;
343     END;
344     RETURN (TRUE);
345   END BEFOREREPORT;
346 
347   FUNCTION F_SELECTED_CERT_DATE RETURN VARCHAR2 IS
348     RET_TEXT VARCHAR2(1000) := NULL;
349    -- NL CONSTANT VARCHAR2(1) DEFAULT CHR(10);
350   BEGIN
351     IF P_FROM_DATE IS NOT NULL THEN
352       RET_TEXT := ' AND   afrm.certificate_date BETWEEN :P_FROM_DATE ';
353     ELSE
354       RET_TEXT := ' AND   afrm.certificate_date BETWEEN afrm.certificate_date ';
355     END IF;
356     IF P_TO_DATE IS NOT NULL THEN
357       RET_TEXT := RET_TEXT || ' and :P_TO_DATE ';
358     ELSE
359       RET_TEXT := RET_TEXT || ' and sysdate ';
360     END IF;
361     IF RET_TEXT IS NOT NULL THEN
362       RET_TEXT := RET_TEXT ;
363     END IF;
364     RETURN RET_TEXT;
365   END F_SELECTED_CERT_DATE;
366 
367   FUNCTION F_SELECTED_CERT_ID RETURN VARCHAR2 IS
368     RET_TEXT VARCHAR2(1000) := NULL;
369     -- NL CONSTANT VARCHAR2(1) DEFAULT CHR(10);
370   BEGIN
371     IF P_CERTIFICATE_START_NO IS NOT NULL THEN
372       RET_TEXT := 'AND   afrm.certificate_num BETWEEN :P_CERTIFICATE_START_NO ';
373     ELSE
374       RET_TEXT := 'AND   afrm.certificate_num BETWEEN afrm.certificate_num ';
375     END IF;
376     IF P_CERTIFICATE_END_NO IS NOT NULL THEN
377       RET_TEXT := RET_TEXT || ' and :P_CERTIFICATE_END_NO ';
378     ELSE
379       RET_TEXT := RET_TEXT || ' and afrm.certificate_num ';
380     END IF;
381     IF RET_TEXT IS NOT NULL THEN
382       RET_TEXT := RET_TEXT ;
383     END IF;
384     RETURN RET_TEXT;
385   END F_SELECTED_CERT_ID;
386 
387   FUNCTION F_SELECTED_VENDOR RETURN VARCHAR2 IS
388     RET_TEXT VARCHAR2(1000) := NULL;
389     -- NL CONSTANT VARCHAR2(1) DEFAULT CHR(10);
390   BEGIN
391     IF P_VENDOR_ID IS NOT NULL THEN
392       RET_TEXT := ' AND afrm.vendor_id = :P_vendor_id ';
393     ELSE
394       RET_TEXT := ' AND afrm.vendor_id = afrm.vendor_id ';
395     END IF;
396     IF RET_TEXT IS NOT NULL THEN
397       RET_TEXT := RET_TEXT ;
398     END IF;
399     RETURN RET_TEXT;
400   END F_SELECTED_VENDOR;
401 
402   FUNCTION AFTERPFORM RETURN BOOLEAN IS
403   BEGIN
404     P_SELECTED_VENDOR := F_SELECTED_VENDOR;
405     P_SELECTED_CERT_ID := F_SELECTED_CERT_ID;
406     P_SELECTED_CERT_DATE := F_SELECTED_CERT_DATE;
407     RETURN (TRUE);
408   END AFTERPFORM;
409 
410   FUNCTION CF_TDS_AMTFORMULA(TDS_INVOICE_ID IN NUMBER
411                             ,TDS_INVOICE_AMT IN NUMBER) RETURN NUMBER IS
412     CURSOR C_GET_TAX_ID IS
413       SELECT
414         JATP.TDS_TAX_ID
415       FROM
416         JAI_AP_TDS_INV_PAYMENTS JATP
417       WHERE JATP.INVOICE_ID = TDS_INVOICE_ID;
418     CURSOR C_GET_TDS_RATES(P_TAX_ID IN NUMBER) IS
419       SELECT
420         ( NVL(TAX_RATE
421            ,0) - ( NVL(SURCHARGE_RATE
422            ,0) + NVL(CESS_RATE
423            ,0) ) ) TDS_RATE,
424         NVL(SURCHARGE_RATE
425            ,0) SURCHARGE_RATE,
426         NVL(CESS_RATE
427            ,0),
428         NVL(SH_CESS_RATE
429            ,0),
430         NVL(TAX_RATE
431            ,0)
432       FROM
433         JAI_CMN_TAXES_ALL JTC
434       WHERE TAX_ID = P_TAX_ID;
435     LN_TAX_ID NUMBER;
436     LN_TDS_RATE NUMBER;
437     LN_TAX_RATE NUMBER;
438     LN_SURCHARGE_RATE NUMBER;
439     LN_CESS_RATE NUMBER;
440     LN_SH_CESS_RATE NUMBER;
441     LN_TDS_AMT NUMBER;
442   BEGIN
443     OPEN C_GET_TAX_ID;
444     FETCH C_GET_TAX_ID
445      INTO LN_TAX_ID;
446     CLOSE C_GET_TAX_ID;
447     OPEN C_GET_TDS_RATES(LN_TAX_ID);
448     FETCH C_GET_TDS_RATES
449      INTO LN_TDS_RATE,LN_SURCHARGE_RATE,LN_CESS_RATE,LN_SH_CESS_RATE,LN_TAX_RATE;
450     CLOSE C_GET_TDS_RATES;
451     CP_SURCHARGE_AMT := ROUND((TDS_INVOICE_AMT * LN_SURCHARGE_RATE / LN_TAX_RATE)
452                              ,2);
453     CP_CESS_AMT := ROUND((TDS_INVOICE_AMT * LN_CESS_RATE / LN_TAX_RATE)
454                         ,2);
455     CP_SH_CESS_AMT := ROUND((TDS_INVOICE_AMT * LN_SH_CESS_RATE / LN_TAX_RATE)
456                            ,2);
457     CP_CESS_AMT := CP_CESS_AMT + CP_SH_CESS_AMT;
458     LN_TDS_AMT := TDS_INVOICE_AMT - NVL(CP_SURCHARGE_AMT
459                      ,0) - NVL(CP_CESS_AMT
460                      ,0);
461     RETURN (NVL(LN_TDS_AMT
462               ,0));
463   END CF_TDS_AMTFORMULA;
464 
465   FUNCTION CF_BSR_CODEFORMULA(BANK_ACCOUNT_ID IN NUMBER) RETURN VARCHAR2 IS
466     CURSOR C_BANK_BRANCH_CODE(P_BANK_ACCOUNT_ID IN NUMBER) IS
467       SELECT
468         A.BANK_NUM
469       FROM
470         AP_BANK_BRANCHES A,
471         AP_BANK_ACCOUNTS_ALL B
472       WHERE A.BANK_BRANCH_ID = B.BANK_BRANCH_ID
473         AND B.BANK_ACCOUNT_ID = P_BANK_ACCOUNT_ID;
474     LV_BANK_BRANCH_CODE AP_BANK_BRANCHES.BANK_NUM%TYPE;
475   BEGIN
476     OPEN C_BANK_BRANCH_CODE(BANK_ACCOUNT_ID);
477     FETCH C_BANK_BRANCH_CODE
478      INTO LV_BANK_BRANCH_CODE;
479     CLOSE C_BANK_BRANCH_CODE;
480     RETURN LV_BANK_BRANCH_CODE;
481   END CF_BSR_CODEFORMULA;
482 
483   FUNCTION CP_CESS_AMT_P RETURN NUMBER IS
484   BEGIN
485     RETURN CP_CESS_AMT;
486   END CP_CESS_AMT_P;
487 
488   FUNCTION CP_SURCHARGE_AMT_P RETURN NUMBER IS
489   BEGIN
490     RETURN CP_SURCHARGE_AMT;
491   END CP_SURCHARGE_AMT_P;
492 
493   FUNCTION CP_SH_CESS_AMT_P RETURN NUMBER IS
494   BEGIN
495     RETURN CP_SH_CESS_AMT;
496   END CP_SH_CESS_AMT_P;
497 
498   FUNCTION CP_1_P RETURN VARCHAR2 IS
499   BEGIN
500     RETURN CP_1;
501   END CP_1_P;
502 
503 END JA_JAINITCR_XMLP_PKG;
504 
505 
506