DBA Data[Home] [Help]

PACKAGE BODY: APPS.JL_JLCOPCWT_XMLP_PKG

Source


1 PACKAGE BODY JL_JLCOPCWT_XMLP_PKG AS
2 /* $Header: JLCOPCWTB.pls 120.1 2007/12/25 16:51:29 dwkrishn noship $ */
3   FUNCTION GET_BASE_CURR_DATA RETURN BOOLEAN IS
4     BASE_CURR AP_SYSTEM_PARAMETERS.BASE_CURRENCY_CODE%TYPE;
5     PREC FND_CURRENCIES_VL.PRECISION%TYPE;
6     MIN_AU FND_CURRENCIES_VL.MINIMUM_ACCOUNTABLE_UNIT%TYPE;
7     DESCR FND_CURRENCIES_VL.DESCRIPTION%TYPE;
8   BEGIN
9     BASE_CURR := '';
10     PREC := 0;
11     MIN_AU := 0;
12     DESCR := '';
13     SELECT
14       P.BASE_CURRENCY_CODE,
15       C.PRECISION,
16       C.MINIMUM_ACCOUNTABLE_UNIT,
17       C.DESCRIPTION
18     INTO BASE_CURR,PREC,MIN_AU,DESCR
19     FROM
20       AP_SYSTEM_PARAMETERS P,
21       FND_CURRENCIES_VL C
22     WHERE P.BASE_CURRENCY_CODE = C.CURRENCY_CODE;
23     C_BASE_CURRENCY_CODE := BASE_CURR;
24     P_MIN_PRECISION := PREC;
25     C_BASE_MIN_ACCT_UNIT := MIN_AU;
26     C_BASE_DESCRIPTION := DESCR;
27     RETURN (TRUE);
28     RETURN NULL;
29   EXCEPTION
30     WHEN OTHERS THEN
31       RETURN (FALSE);
32   END GET_BASE_CURR_DATA;
33 
34   FUNCTION GET_COVER_PAGE_VALUES RETURN BOOLEAN IS
35   BEGIN
36     RETURN (TRUE);
37     RETURN NULL;
38   EXCEPTION
39     WHEN OTHERS THEN
40       RETURN (FALSE);
41   END GET_COVER_PAGE_VALUES;
42 
43   FUNCTION GET_NLS_STRINGS RETURN BOOLEAN IS
44     NLS_ALL AP_LOOKUP_CODES.DISPLAYED_FIELD%TYPE;
45     NLS_YES FND_LOOKUPS.MEANING%TYPE;
46     NLS_NO FND_LOOKUPS.MEANING%TYPE;
47   BEGIN
48     NLS_ALL := '';
49     NLS_YES := '';
50     NLS_NO := '';
51     SELECT
52       LY.MEANING,
53       LN.MEANING,
54       LA.DISPLAYED_FIELD
55     INTO NLS_YES,NLS_NO,NLS_ALL
56     FROM
57       FND_LOOKUPS LY,
58       FND_LOOKUPS LN,
59       AP_LOOKUP_CODES LA
60     WHERE LY.LOOKUP_TYPE = 'YES_NO'
61       AND LY.LOOKUP_CODE = 'Y'
62       AND LN.LOOKUP_TYPE = 'YES_NO'
63       AND LN.LOOKUP_CODE = 'N'
64       AND LA.LOOKUP_TYPE = 'NLS REPORT PARAMETER'
65       AND LA.LOOKUP_CODE = 'ALL';
66     C_NLS_YES := NLS_YES;
67     C_NLS_NO := NLS_NO;
68     C_NLS_ALL := NLS_ALL;
69     FND_MESSAGE.SET_NAME('SQLAP'
70                         ,'AP_APPRVL_NO_DATA');
71     C_NLS_NO_DATA_EXISTS := FND_MESSAGE.GET;
72     C_NLS_NO_DATA_EXISTS := '*** ' || C_NLS_NO_DATA_EXISTS || ' ***';
73     FND_MESSAGE.SET_NAME('SQLAP'
74                         ,'AP_ALL_END_OF_REPORT');
75     C_NLS_END_OF_REPORT := FND_MESSAGE.GET;
76     C_NLS_END_OF_REPORT := '*** ' || C_NLS_END_OF_REPORT || ' ***';
77     RETURN (TRUE);
78     RETURN NULL;
79   EXCEPTION
80     WHEN OTHERS THEN
81       RETURN (FALSE);
82   END GET_NLS_STRINGS;
83 
84   FUNCTION BEFOREREPORT RETURN BOOLEAN IS
85   BEGIN
86     DECLARE
87       CUANTOS NUMBER;
88       INIT_FAILURE EXCEPTION;
89       L_OU_ID NUMBER;
90     BEGIN
91       BEGIN
92        P_SUPPLIER_FROM_1:=P_SUPPLIER_FROM;
93         P_SUPPLIER_TO_1:= P_SUPPLIER_TO;
94         P_SUPP_NUM_FROM_1:= P_SUPP_NUM_FROM;
95         P_SUPP_NUM_TO_1:= P_SUPP_NUM_TO;
96         P_CONC_REQUEST_ID:= FND_GLOBAL.CONC_REQUEST_ID;
97         /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
98         IF (P_DEBUG_SWITCH = 'Y') THEN
99           /*SRW.MESSAGE('1'
100                      ,'After SRWINIT')*/NULL;
101         END IF;
102             EXCEPTION
103         WHEN OTHERS THEN
104           /*SRW.MESSAGE(02
105                      ,'ERROR unknown Location ID')*/NULL;
106           RAISE;
107       END;
108       BEGIN
109         FND_PROFILE.GET('org_id'
110                        ,L_OU_ID);
111         C_PROFILE_COUNTRY_CODE := JG_ZZ_SHARED_PKG.GET_COUNTRY(L_OU_ID
112                                                               ,NULL);
113         IF (P_DEBUG_SWITCH = 'Y') THEN
114           /*SRW.MESSAGE('1'
115                      ,'After Get the Country Code: ' || C_PROFILE_COUNTRY_CODE)*/NULL;
116         END IF;
117       EXCEPTION
118         WHEN OTHERS THEN
119           /*SRW.MESSAGE(02
120                      ,'ERROR unknown Country Code')*/NULL;
121           RAISE;
122       END;
123       IF (GET_NLS_STRINGS <> TRUE) THEN
124         RAISE INIT_FAILURE;
125       END IF;
126       IF (P_DEBUG_SWITCH = 'Y') THEN
127         /*SRW.MESSAGE('3'
128                    ,'After Get_NLS_Strings')*/NULL;
129       END IF;
130       IF (GET_BASE_CURR_DATA <> TRUE) THEN
131         RAISE INIT_FAILURE;
132       END IF;
133       IF (P_DEBUG_SWITCH = 'Y') THEN
134         /*SRW.MESSAGE('4'
135                    ,'After Get_Base_Curr_Data')*/NULL;
136       END IF;
137       IF (P_DEBUG_SWITCH = 'Y') THEN
138         /*SRW.BREAK*/NULL;
139       END IF;
140       RETURN (TRUE);
141     EXCEPTION
142       WHEN OTHERS THEN
143         /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
144     END;
145     RETURN (TRUE);
146   END BEFOREREPORT;
147 
148   FUNCTION AFTERREPORT RETURN BOOLEAN IS
149   BEGIN
150     BEGIN
151       /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
152       IF (P_DEBUG_SWITCH = 'Y') THEN
153         /*SRW.MESSAGE('20'
154                    ,'After SRWEXIT')*/NULL;
155       END IF;
156     EXCEPTION
157       WHEN OTHERS THEN
158         /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
159     END;
160     RETURN (TRUE);
161   END AFTERREPORT;
162 
163   FUNCTION FSELECTEDSUPPLIERS RETURN VARCHAR2 IS
164     RET_TEXT VARCHAR2(2000):='   ';
165   BEGIN
166     IF (P_SUPPLIER_ID IS NOT NULL) THEN
167       RET_TEXT := 'and    nvl(pv2.vendor_id,pv1.vendor_id)      =       :P_Supplier_Id';
168     ELSE
169       IF ((P_SUPPLIER_FROM IS NOT NULL) OR (P_SUPPLIER_TO IS NOT NULL)) THEN
170         RET_TEXT := 'and    nvl(pv2.vendor_name,pv1.vendor_name)    between nvl(:P_Supplier_From_1' ||
171 	'                                          ,nvl(pv2.vendor_name,pv1.vendor_name))' ||
172 	'                                   and nvl(:P_Supplier_To_1' ||
173 	'                                          ,nvl(pv2.vendor_name,pv1.vendor_name))';
174       END IF;
175       IF ((P_SUPP_NUM_FROM IS NOT NULL) OR (P_SUPP_NUM_TO IS NOT NULL)) THEN
176         DECLARE
177           SUP_NUM VARCHAR2(2000) := 'nvl(pv2.segment1,pv1.segment1)';
178           NUM_FROM VARCHAR2(2000) := 'nvl(:P_Supp_Num_From_1, nvl(pv2.segment1,pv1.segment1))';
179           NUM_TO VARCHAR2(2000) := 'nvl(:P_Supp_Num_To_1, nvl(pv2.segment1,pv1.segment1))';
180         BEGIN
181           RET_TEXT := 'and  ' || SUP_NUM || ' between ' || NUM_FROM || ' and ' || NUM_TO;
182         END;
183       END IF;
184     END IF;
185     RETURN (RET_TEXT);
186   END FSELECTEDSUPPLIERS;
187 
188   FUNCTION ACCEPT_PARAMETER(PARAMETER_NAME IN VARCHAR2) RETURN BOOLEAN IS
189   BEGIN
190     IF (PARAMETER_NAME = 'P_Supplier_Id') THEN
191       IF (P_SUPPLIER_ID IS NOT NULL) THEN
192         P_SUPPLIER_FROM := NULL;
193         P_SUPPLIER_TO := NULL;
194         P_SUPP_NUM_FROM := NULL;
195         P_SUPP_NUM_TO := NULL;
196       END IF;
197     END IF;
198     RETURN (TRUE);
199   END ACCEPT_PARAMETER;
200 
201   FUNCTION P_SUPPLIER_FROMVALIDTRIGGER RETURN BOOLEAN IS
202   BEGIN
203     RETURN (ACCEPT_PARAMETER('P_Supplier_From'));
204     RETURN (TRUE);
205   END P_SUPPLIER_FROMVALIDTRIGGER;
206 
207   FUNCTION P_SUPPLIER_IDVALIDTRIGGER0116 RETURN BOOLEAN IS
208   BEGIN
209     RETURN (ACCEPT_PARAMETER('P_Supplier_Id'));
210     RETURN (TRUE);
211   END P_SUPPLIER_IDVALIDTRIGGER0116;
212 
213   FUNCTION AFTERPFORM RETURN BOOLEAN IS
214   a boolean;
215   BEGIN
216   a:=P_SUPPLIER_IDVALIDTRIGGER0116;
217     P_SELECTED_SUPPLIERS := FSELECTEDSUPPLIERS;
218     P_SELECTED_DATES := FSELECTEDDATES;
219     IF P_REPORTING_LEVEL = '2000' THEN
220       LP_AP_INVOICE_DISTRIBUTIONS_WH := 'AND aid.legal_entity_id = ' || P_REPORTING_CONTEXT;
221       LP_AP_INVOICES_WH := 'AND inv1.legal_entity_id = ' || P_REPORTING_CONTEXT;
222     ELSE
223       FND_MO_REPORTING_API.INITIALIZE(P_REPORTING_LEVEL
224                                      ,P_REPORTING_CONTEXT
225                                      ,'AUTO');
226       LP_AP_INVOICE_DISTRIBUTIONS_WH := FND_MO_REPORTING_API.GET_PREDICATE('aid'
227                                                                           ,NULL
228                                                                           ,P_REPORTING_CONTEXT);
229       LP_AP_INVOICES_WH := FND_MO_REPORTING_API.GET_PREDICATE('INV1'
230                                                              ,NULL
231                                                              ,P_REPORTING_CONTEXT);
232     END IF;
233     IF P_AWT_TYPE IS NOT NULL THEN
234       P_AWT_TYPE_CODE := 'and jat.awt_type_code = :P_AWT_TYPE';
235     ELSE
236       P_AWT_TYPE_CODE := '  ';
237     END IF;
238     IF (P_DEBUG_SWITCH = 'Y') THEN
239       /*SRW.MESSAGE('1'
240                  ,'Making Condition Where in After Form Trigger')*/NULL;
241     END IF;
242     RETURN (TRUE);
243   END AFTERPFORM;
244 
245   FUNCTION CALCULATE_VAT_AMOUNT(P_TAX_NAME IN VARCHAR2
246                                ,P_VENDOR_ID IN NUMBER
247                                ,P_VENDOR_NUMBER IN VARCHAR2) RETURN NUMBER IS
248     V_VAT_AMOUNT NUMBER;
249     L_ORG_BOOLEAN BOOLEAN;
250   BEGIN
251     IF P_REPORTING_LEVEL in ('3000','2000') THEN
252       SELECT
253         ROUND(NVL(SUM((NVL(AID.BASE_AMOUNT
254                          ,AID.AMOUNT) * ATC2.TAX_RATE) / 100)
255                  ,0)
256              ,P_MIN_PRECISION) VAT_AMOUNT
257       INTO V_VAT_AMOUNT
258       FROM
259         AP_TAX_CODES_ALL ATC,
260         JL_ZZ_AP_SUP_AWT_CD_ALL JZSAC,
261         JL_ZZ_AP_INV_DIS_WH_ALL JZIDW,
262         AP_TAX_CODES_ALL ATC2,
263         AP_INVOICES_ALL AI,
264         AP_INVOICE_DISTRIBUTIONS_ALL AID
265       WHERE AI.LEGAL_ENTITY_ID = DECODE(P_REPORTING_LEVEL
266             ,'2000'
267             ,P_REPORTING_CONTEXT
268             ,AI.LEGAL_ENTITY_ID)
269         AND AI.ORG_ID = DECODE(P_REPORTING_LEVEL
270             ,'3000'
271             ,P_REPORTING_CONTEXT
272             ,AI.ORG_ID)
273         AND AID.ACCOUNTING_DATE >= NVL(TO_DATE(P_DATE_FROM
274                  ,'RRRR/MM/DD HH24:MI:SS')
275          ,AID.ACCOUNTING_DATE)
276         AND AID.ACCOUNTING_DATE < NVL(TO_DATE(P_DATE_TO
277                  ,'RRRR/MM/DD HH24:MI:SS') + 1
278          ,AID.ACCOUNTING_DATE + 1)
279         AND AID.MATCH_STATUS_FLAG = 'A'
280         AND AID.LINE_TYPE_LOOKUP_CODE <> 'AWT'
281         AND AID.LINE_TYPE_LOOKUP_CODE <> 'TAX'
282         AND JZIDW.INVOICE_ID = AID.INVOICE_ID
283         AND JZSAC.SUPP_AWT_CODE_ID = JZIDW.SUPP_AWT_CODE_ID
284         AND ATC.TAX_ID = JZSAC.TAX_ID
285         AND ATC.GLOBAL_ATTRIBUTE19 is not null
286         AND ATC.NAME = P_TAX_NAME
287         AND AID.TAX_CODE_ID is not null
288         AND ATC2.TAX_ID = AID.TAX_CODE_ID
289         AND AI.CANCELLED_DATE is null
290         AND ( ( AID.GLOBAL_ATTRIBUTE2 is null
291         AND AID.INVOICE_ID = AI.INVOICE_ID
292         AND AI.VENDOR_ID = P_VENDOR_ID )
293       OR ( AID.GLOBAL_ATTRIBUTE2 = P_VENDOR_NUMBER
294         AND AID.INVOICE_ID = AI.INVOICE_ID ) );
295     ELSE
296       P_ORGS := SUBSTR(LP_AP_INVOICES_WH
297                       ,INSTR(LP_AP_INVOICES_WH
298                            ,'INSTR'
299                            ,1
300                            ,1)
301                       ,LENGTH(LP_AP_INVOICES_WH));
302       P_ORGS := SUBSTR(P_ORGS
303                       ,1
304                       ,LENGTH(P_ORGS) - 5);
305       SELECT
306         ROUND(SUM((NVL(AID.BASE_AMOUNT
307                      ,AID.AMOUNT) * ATC2.TAX_RATE) / 100)
308              ,P_MIN_PRECISION) VAT_AMOUNT
309       INTO V_VAT_AMOUNT
310       FROM
311         AP_TAX_CODES_ALL ATC,
312         JL_ZZ_AP_SUP_AWT_CD_ALL JZSAC,
313         JL_ZZ_AP_INV_DIS_WH_ALL JZIDW,
314         AP_TAX_CODES_ALL ATC2,
315         AP_INVOICES_ALL AI,
316         AP_INVOICE_DISTRIBUTIONS_ALL AID
317       WHERE '0' NOT IN (
318         SELECT
319           P_ORGS
320         FROM
321           AP_INVOICES_ALL INV
322         WHERE AI.INVOICE_ID = INV.INVOICE_ID )
323         AND AID.ACCOUNTING_DATE >= NVL(TO_DATE(P_DATE_FROM
324                  ,'RRRR/MM/DD HH24:MI:SS')
325          ,AID.ACCOUNTING_DATE)
326         AND AID.ACCOUNTING_DATE < NVL(TO_DATE(P_DATE_TO
327                  ,'RRRR/MM/DD HH24:MI:SS') + 1
328          ,AID.ACCOUNTING_DATE + 1)
329         AND AID.MATCH_STATUS_FLAG = 'A'
330         AND AID.LINE_TYPE_LOOKUP_CODE <> 'AWT'
331         AND AID.LINE_TYPE_LOOKUP_CODE <> 'TAX'
332         AND JZIDW.INVOICE_ID = AID.INVOICE_ID
333         AND JZSAC.SUPP_AWT_CODE_ID = JZIDW.SUPP_AWT_CODE_ID
334         AND ATC.TAX_ID = JZSAC.TAX_ID
335         AND ATC.GLOBAL_ATTRIBUTE19 is not null
336         AND ATC.NAME = P_TAX_NAME
337         AND AID.TAX_CODE_ID is not null
338         AND ATC2.TAX_ID = AID.TAX_CODE_ID
339         AND AI.CANCELLED_DATE is null
340         AND ( ( AID.GLOBAL_ATTRIBUTE2 is null
341         AND AID.INVOICE_ID = AI.INVOICE_ID
342         AND AI.VENDOR_ID = P_VENDOR_ID )
343       OR ( AID.GLOBAL_ATTRIBUTE2 = P_VENDOR_NUMBER
344         AND AID.INVOICE_ID = AI.INVOICE_ID ) );
345     END IF;
346     RETURN (V_VAT_AMOUNT);
347   END CALCULATE_VAT_AMOUNT;
348 
349   FUNCTION CF_VAT_AMOUNTFORMULA(CERTIFICATE_TYPE IN VARCHAR2
350                                ,TAX_NAME IN VARCHAR2
351                                ,VENDOR_ID IN NUMBER
352                                ,VENDOR_NUMBER IN VARCHAR2) RETURN NUMBER IS
353   BEGIN
354     IF CERTIFICATE_TYPE = 'VAT' THEN
355       RETURN (CALCULATE_VAT_AMOUNT(TAX_NAME
356                                  ,VENDOR_ID
357                                  ,VENDOR_NUMBER));
358     ELSE
359       RETURN (0);
360     END IF;
361     RETURN NULL;
362   END CF_VAT_AMOUNTFORMULA;
363 
364   FUNCTION CF_DATE_FROMFORMULA RETURN VARCHAR2 IS
365     L_DATE_FROM VARCHAR2(20);
366   BEGIN
367     SELECT
368       TO_CHAR(TO_DATE(P_DATE_FROM
369                      ,'YYYY/MM/DD HH24:MI:SS')
370              ,'DD-MON-YYYY')
371     INTO L_DATE_FROM
372     FROM
373       DUAL;
374     RETURN (L_DATE_FROM);
375   END CF_DATE_FROMFORMULA;
376 
377   FUNCTION CF_DATE_TOFORMULA RETURN VARCHAR2 IS
378     L_DATE_TO VARCHAR2(20);
379   BEGIN
380     SELECT
381       TO_CHAR(TO_DATE(P_DATE_TO
382                      ,'YYYY/MM/DD HH24:MI:SS')
383              ,'DD-MON-YYYY')
384     INTO L_DATE_TO
385     FROM
386       DUAL;
387     RETURN (L_DATE_TO);
388   END CF_DATE_TOFORMULA;
389 
390   FUNCTION FSELECTEDDATES RETURN VARCHAR2 IS
391     RET_TEXT VARCHAR2(1000) := NULL;
392 
393   BEGIN
394     IF P_DATE_FROM IS NOT NULL THEN
395       RET_TEXT := 'aid.accounting_date >= to_date(:P_Date_from,''RRRR/MM/DD HH24:MI:SS'')';
396     END IF;
397     IF P_DATE_TO IS NOT NULL THEN
398       RET_TEXT := RET_TEXT || ' and ' ||  ' aid.accounting_date < to_date(:P_Date_to,''RRRR/MM/DD HH24:MI:SS'')+1';
399     END IF;
400     IF RET_TEXT IS NOT NULL THEN
401       RET_TEXT := RET_TEXT || ' and ';
402     END IF;
403     RETURN RET_TEXT;
404   END FSELECTEDDATES;
405 
406   FUNCTION C_BASE_CURRENCY_CODE_P RETURN VARCHAR2 IS
407   BEGIN
408     RETURN C_BASE_CURRENCY_CODE;
409   END C_BASE_CURRENCY_CODE_P;
410 
411   FUNCTION C_BASE_PRECISION_P RETURN NUMBER IS
412   BEGIN
413     RETURN C_BASE_PRECISION;
414   END C_BASE_PRECISION_P;
415 
416   FUNCTION C_BASE_MIN_ACCT_UNIT_P RETURN NUMBER IS
417   BEGIN
418     RETURN C_BASE_MIN_ACCT_UNIT;
419   END C_BASE_MIN_ACCT_UNIT_P;
420 
421   FUNCTION C_BASE_DESCRIPTION_P RETURN VARCHAR2 IS
422   BEGIN
423     RETURN C_BASE_DESCRIPTION;
424   END C_BASE_DESCRIPTION_P;
425 
426   FUNCTION C_COMPANY_NAME_HEADER_P RETURN VARCHAR2 IS
427   BEGIN
428     RETURN C_COMPANY_NAME_HEADER;
429   END C_COMPANY_NAME_HEADER_P;
430 
431   FUNCTION C_REPORT_START_DATE_P RETURN DATE IS
432   BEGIN
433     RETURN C_REPORT_START_DATE;
434   END C_REPORT_START_DATE_P;
435 
436   FUNCTION C_NLS_YES_P RETURN VARCHAR2 IS
437   BEGIN
438     RETURN C_NLS_YES;
439   END C_NLS_YES_P;
440 
441   FUNCTION C_NLS_NO_P RETURN VARCHAR2 IS
442   BEGIN
443     RETURN C_NLS_NO;
444   END C_NLS_NO_P;
445 
446   FUNCTION C_NLS_ALL_P RETURN VARCHAR2 IS
447   BEGIN
448     RETURN C_NLS_ALL;
449   END C_NLS_ALL_P;
450 
451   FUNCTION C_NLS_NO_DATA_EXISTS_P RETURN VARCHAR2 IS
452   BEGIN
453     RETURN C_NLS_NO_DATA_EXISTS;
454   END C_NLS_NO_DATA_EXISTS_P;
455 
456   FUNCTION C_REPORT_RUN_TIME_P RETURN VARCHAR2 IS
457   BEGIN
458     RETURN C_REPORT_RUN_TIME;
459   END C_REPORT_RUN_TIME_P;
460 
461   FUNCTION C_CHART_OF_ACCOUNTS_ID_P RETURN NUMBER IS
462   BEGIN
463     RETURN C_CHART_OF_ACCOUNTS_ID;
464   END C_CHART_OF_ACCOUNTS_ID_P;
465 
466   FUNCTION C_LOCATION_ID_P RETURN NUMBER IS
467   BEGIN
468     RETURN C_LOCATION_ID;
469   END C_LOCATION_ID_P;
470 
471   FUNCTION C_NLS_END_OF_REPORT_P RETURN VARCHAR2 IS
472   BEGIN
473     RETURN C_NLS_END_OF_REPORT;
474   END C_NLS_END_OF_REPORT_P;
475 
476   FUNCTION C_PROFILE_COUNTRY_CODE_P RETURN VARCHAR2 IS
477   BEGIN
478     RETURN C_PROFILE_COUNTRY_CODE;
479   END C_PROFILE_COUNTRY_CODE_P;
480 
481 END JL_JLCOPCWT_XMLP_PKG;
482 
483 
484