DBA Data[Home] [Help]

PACKAGE BODY: APPS.JL_JLARPWFF_XMLP_PKG

Source


1 PACKAGE BODY JL_JLARPWFF_XMLP_PKG AS
2 /* $Header: JLARPWFFB.pls 120.1 2007/12/25 16:35:09 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     C_BASE_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 CUSTOM_INIT RETURN BOOLEAN IS
35   BEGIN
36     RETURN (TRUE);
37     RETURN NULL;
38   EXCEPTION
39     WHEN OTHERS THEN
40       RETURN (FALSE);
41   END CUSTOM_INIT;
42 
43   FUNCTION GET_COVER_PAGE_VALUES RETURN BOOLEAN IS
44   BEGIN
45     RETURN (TRUE);
46     RETURN NULL;
47   EXCEPTION
48     WHEN OTHERS THEN
49       RETURN (FALSE);
50   END GET_COVER_PAGE_VALUES;
51 
52   FUNCTION GET_NLS_STRINGS RETURN BOOLEAN IS
53     NLS_VOID AP_LOOKUP_CODES.DISPLAYED_FIELD%TYPE;
54     NLS_NA AP_LOOKUP_CODES.DISPLAYED_FIELD%TYPE;
55     NLS_ALL AP_LOOKUP_CODES.DISPLAYED_FIELD%TYPE;
56     NLS_YES FND_LOOKUPS.MEANING%TYPE;
57     NLS_NO FND_LOOKUPS.MEANING%TYPE;
58   BEGIN
59     SELECT
60       LY.MEANING,
61       LN.MEANING,
62       L1.DISPLAYED_FIELD,
63       L2.DISPLAYED_FIELD,
64       L3.DISPLAYED_FIELD
65     INTO NLS_YES,NLS_NO,NLS_ALL,NLS_VOID,NLS_NA
66     FROM
67       FND_LOOKUPS LY,
68       FND_LOOKUPS LN,
69       AP_LOOKUP_CODES L1,
70       AP_LOOKUP_CODES L2,
71       AP_LOOKUP_CODES L3
72     WHERE LY.LOOKUP_TYPE = 'YES_NO'
73       AND LY.LOOKUP_CODE = 'Y'
74       AND LN.LOOKUP_TYPE = 'YES_NO'
75       AND LN.LOOKUP_CODE = 'N'
76       AND L1.LOOKUP_TYPE = 'NLS REPORT PARAMETER'
77       AND L1.LOOKUP_CODE = 'ALL'
78       AND L2.LOOKUP_TYPE = 'NLS TRANSLATION'
79       AND L2.LOOKUP_CODE = 'VOID'
80       AND L3.LOOKUP_TYPE = 'NLS REPORT PARAMETER'
81       AND L3.LOOKUP_CODE = 'NA';
82     C_NLS_YES := NLS_YES;
83     C_NLS_NO := NLS_NO;
84     C_NLS_ALL := NLS_ALL;
85     C_NLS_VOID := NLS_VOID;
86     C_NLS_NA := NLS_NA;
87     FND_MESSAGE.SET_NAME('SQLAP'
88                         ,'AP_APPRVL_NO_DATA');
89     C_NLS_NO_DATA_EXISTS := FND_MESSAGE.GET;
90     FND_MESSAGE.SET_NAME('SQLAP'
91                         ,'AP_ALL_END_OF_REPORT');
92     C_NLS_END_OF_REPORT := FND_MESSAGE.GET;
93     C_NLS_NO_DATA_EXISTS := '*** ' || C_NLS_NO_DATA_EXISTS || ' ***';
94     C_NLS_END_OF_REPORT := '*** ' || C_NLS_END_OF_REPORT || ' ***';
95     RETURN (TRUE);
96     RETURN NULL;
97   EXCEPTION
98     WHEN OTHERS THEN
99       RETURN (FALSE);
100   END GET_NLS_STRINGS;
101 
102   FUNCTION BEFOREREPORT RETURN BOOLEAN IS
103   BEGIN
104     DECLARE
105       INIT_FAILURE EXCEPTION;
106     BEGIN
107       C_REPORT_START_DATE := SYSDATE;
108       P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
109       /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
110       IF (P_DEBUG_SWITCH in ('y','Y')) THEN
111         /*SRW.MESSAGE('1'
112                    ,'After SRWINIT')*/NULL;
113       END IF;
114       BEGIN
115         P_LOCATION_ID := JG_ZZ_COMPANY_INFO.GET_LOCATION_ID;
116         IF (P_DEBUG_SWITCH = 'Y') THEN
117           /*SRW.MESSAGE('1'
118                      ,'After retrieving LOCATION_ID: ' || TO_CHAR(P_LOCATION_ID))*/NULL;
119         END IF;
120       EXCEPTION
121         WHEN OTHERS THEN
122           /*SRW.MESSAGE(02
123                      ,'ERROR unknown Location ID')*/NULL;
124           RAISE;
125       END;
126       IF (GET_COMPANY_NAME <> TRUE) THEN
127         RAISE INIT_FAILURE;
128       END IF;
129       IF (P_DEBUG_SWITCH in ('y','Y')) THEN
130         /*SRW.MESSAGE('2'
131                    ,'After Get_Company_Name')*/NULL;
132       END IF;
133       IF (GET_BASE_CURR_DATA <> TRUE) THEN
134         RAISE INIT_FAILURE;
135       END IF;
136       IF (P_DEBUG_SWITCH in ('y','Y')) THEN
137         /*SRW.MESSAGE('4'
138                    ,'After Get_Base_Curr_Data')*/NULL;
139       END IF;
140       IF (P_DEBUG_SWITCH in ('y','Y')) THEN
141         /*SRW.BREAK*/NULL;
142       END IF;
143       RETURN (TRUE);
144     EXCEPTION
145       WHEN OTHERS THEN
146         /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
147     END;
148     RETURN (TRUE);
149   END BEFOREREPORT;
150 
151   FUNCTION AFTERREPORT RETURN BOOLEAN IS
152   BEGIN
153     BEGIN
154       /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
155       IF (P_DEBUG_SWITCH = 'Y') THEN
156         /*SRW.MESSAGE('20'
157                    ,'After SRWEXIT')*/NULL;
158       END IF;
159     EXCEPTION
160       WHEN OTHERS THEN
161         /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
162     END;
163     RETURN (TRUE);
164   END AFTERREPORT;
165 
166   FUNCTION GET_COMPANY_NAME RETURN BOOLEAN IS
167     L_NAME HR_LOCATIONS.GLOBAL_ATTRIBUTE8%TYPE;
168   BEGIN
169     SELECT
170       HR.GLOBAL_ATTRIBUTE8 COMPANY_NAME
171     INTO L_NAME
172     FROM
173       HR_LOCATIONS HR
174     WHERE HR.LOCATION_ID = P_LOCATION_ID;
175     C_COMPANY_NAME_HEADER := L_NAME;
176     RETURN (TRUE);
177     RETURN NULL;
178   EXCEPTION
179     WHEN OTHERS THEN
180       RETURN (FALSE);
181   END GET_COMPANY_NAME;
182 
183   FUNCTION CF_WHT_AGENT_NUMFORMULA(COMP_PRIMARY_ID_NUMBER IN VARCHAR2
184                                   ,COMP_TAX_AUTHORITY_ID IN NUMBER
185                                   ,COMP_TAX_AUTHORITY_TYPE IN VARCHAR2) RETURN VARCHAR2 IS
186     L_COMPANY_NUM_AGENT_RET VARCHAR2(50);
187   BEGIN
188     IF P_JURISDICTION_TYPE = 'PROVINCIAL' THEN
189       SELECT
190         LPAD(SUBSTR(JGEA_C.ID_NUMBER
191                    ,1
192                    ,13)
193             ,13
194             ,' ')
195       INTO L_COMPANY_NUM_AGENT_RET
196       FROM
197         JG_ZZ_ENTITY_ASSOC JGEA_C
198       WHERE JGEA_C.PRIMARY_ID_NUMBER = COMP_PRIMARY_ID_NUMBER
199         AND JGEA_C.ASSOCIATED_ENTITY_ID = COMP_TAX_AUTHORITY_ID
200         AND JGEA_C.ID_TYPE = COMP_TAX_AUTHORITY_TYPE;
201       RETURN (L_COMPANY_NUM_AGENT_RET);
202     ELSE
203       RETURN ('');
204     END IF;
205     RETURN NULL;
206     RETURN NULL;
207   EXCEPTION
208     WHEN OTHERS THEN
209       /*SRW.MESSAGE('7'
210                  ,'Company Withholding Agent number not found')*/NULL;
211       /*SRW.MESSAGE('7'
212                  ,'primary_id_number: ' || COMP_PRIMARY_ID_NUMBER)*/NULL;
213       /*SRW.MESSAGE('7'
214                  ,'associated_entity_id: ' || TO_CHAR(COMP_TAX_AUTHORITY_ID))*/NULL;
215       /*SRW.MESSAGE('7'
216                  ,'jgea_c.id_type: ' || COMP_TAX_AUTHORITY_TYPE)*/NULL;
217       RETURN NULL;
218   END CF_WHT_AGENT_NUMFORMULA;
219 
220   FUNCTION CF_SUPP_INSCRIPTIONFORMULA(SUPP_PRIMARY_ID_NUMBER IN VARCHAR2
221                                      ,SUPP_TAX_AUTHORITY_ID IN NUMBER
222                                      ,SUPP_TAX_AUTHORITY_TYPE IN VARCHAR2) RETURN VARCHAR2 IS
223     L_SUPPLIER_PROVINCE_NUMBER VARCHAR2(50);
224   BEGIN
225     IF P_JURISDICTION_TYPE = 'PROVINCIAL' THEN
226       SELECT
227         LPAD(SUBSTR(JGEA_S.ID_NUMBER
228                    ,1
229                    ,13)
230             ,13
231             ,' ') SUPPLIER_PROVINCE_NUMBER
232       INTO L_SUPPLIER_PROVINCE_NUMBER
233       FROM
234         JG_ZZ_ENTITY_ASSOC JGEA_S
235       WHERE JGEA_S.PRIMARY_ID_NUMBER = SUPP_PRIMARY_ID_NUMBER
236         AND JGEA_S.ASSOCIATED_ENTITY_ID = SUPP_TAX_AUTHORITY_ID
237         AND JGEA_S.ID_TYPE = SUPP_TAX_AUTHORITY_TYPE;
238       RETURN (L_SUPPLIER_PROVINCE_NUMBER);
239     ELSE
240       RETURN ('');
241     END IF;
242     RETURN NULL;
243   EXCEPTION
244     WHEN OTHERS THEN
245       /*SRW.MESSAGE('7'
246                  ,'Supplier Inscription Number not found')*/NULL;
247       /*SRW.MESSAGE('7'
248                  ,'primary_id_number: ' || SUPP_PRIMARY_ID_NUMBER)*/NULL;
249       /*SRW.MESSAGE('7'
250                  ,'associated_entity_id: ' || TO_CHAR(SUPP_TAX_AUTHORITY_ID))*/NULL;
251       /*SRW.MESSAGE('7'
252                  ,'jgea_c.id_type: ' || SUPP_TAX_AUTHORITY_TYPE)*/NULL;
253       RETURN NULL;
254   END CF_SUPP_INSCRIPTIONFORMULA;
255 
256   FUNCTION CF_AMT_IN_EXCESSFORMULA RETURN VARCHAR2 IS
257     L_EXCESS_AMT VARCHAR2(11);
258   BEGIN
259     SELECT
260       LPAD('0.00'
261           ,11
262           ,' ')
263     INTO L_EXCESS_AMT
264     FROM
265       DUAL;
266     RETURN (L_EXCESS_AMT);
267     RETURN NULL;
268   EXCEPTION
269     WHEN OTHERS THEN
270       /*SRW.MESSAGE('7'
271                  ,'Error getting Amount in Excess ')*/NULL;
272       RETURN NULL;
273   END CF_AMT_IN_EXCESSFORMULA;
274 
275   FUNCTION CF_DOCUMENT_AMTFORMULA(DOCUMENT_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
276     L_DOCUMENT_AMT VARCHAR2(16);
277   BEGIN
278     IF P_JURISDICTION_TYPE = 'PROVINCIAL' OR P_JURISDICTION_TYPE = 'FEDERAL' THEN
279       L_DOCUMENT_AMT := LPAD(LTRIM(TO_CHAR(ROUND(DOCUMENT_AMOUNT
280                                                 ,2)
281                                           ,'9999999999999.99'))
282                             ,16
283                             ,' ');
284       RETURN (L_DOCUMENT_AMT);
285     ELSE
286       /*SRW.MESSAGE('7'
287                  ,'Jurisdiction Type is ' || P_JURISDICTION_TYPE)*/NULL;
288       RETURN ('');
289     END IF;
290     RETURN NULL;
291   EXCEPTION
292     WHEN OTHERS THEN
293       /*SRW.MESSAGE('7'
294                  ,SQLERRM)*/NULL;
295       /*SRW.MESSAGE('7'
296                  ,'Error in Document Amount ' || P_JURISDICTION_TYPE)*/NULL;
297       RETURN NULL;
298   END CF_DOCUMENT_AMTFORMULA;
299 
300   FUNCTION CF_FEDERAL_RECFORMULA(DOCUMENT_DATE IN DATE
301                                 ,DOCUMENT_NUMBER IN VARCHAR2
302                                 ,CF_DOCUMENT_AMT IN VARCHAR2
303                                 ,DGI_TAX_TYPE_CODE IN VARCHAR2
304                                 ,DGI_TAX_REGIME_CODE IN VARCHAR2
305                                 ,WITHHOLDING_CODE IN VARCHAR2
306                                 ,CF_TAXABLE_AMT IN VARCHAR2
307                                 ,SUPPLIER_CONDITION_CODE IN VARCHAR2
308                                 ,CF_WH_AMT IN VARCHAR2
309                                 ,CF_EXEMPT_PERC IN VARCHAR2
310                                 ,BULLETIN_ISSUE_DATE IN VARCHAR2
311                                 ,SUPP_TAX_IDENTIFICATION_TYPE IN VARCHAR2
312                                 ,CUIT_NUMBER IN VARCHAR2
313                                 ,CF_CERT_NUM IN VARCHAR2) RETURN VARCHAR2 IS
314     L_FED_REC VARCHAR2(139);
315   BEGIN
316     L_FED_REC := P_DOCUMENT_CODE || TO_CHAR(DOCUMENT_DATE
317                         ,'DD/MM/RRRR') || DOCUMENT_NUMBER || CF_DOCUMENT_AMT || DGI_TAX_TYPE_CODE || DGI_TAX_REGIME_CODE || WITHHOLDING_CODE || CF_TAXABLE_AMT || TO_CHAR(DOCUMENT_DATE
318                         ,'DD/MM/RRRR') || SUPPLIER_CONDITION_CODE || CF_WH_AMT || CF_EXEMPT_PERC || BULLETIN_ISSUE_DATE || SUPP_TAX_IDENTIFICATION_TYPE || RPAD(CUIT_NUMBER
319                      ,20
320                      ,' ') || CF_CERT_NUM;
321     RETURN (L_FED_REC);
322     RETURN NULL;
323   EXCEPTION
324     WHEN OTHERS THEN
325       /*SRW.MESSAGE('7'
326                  ,SQLERRM)*/NULL;
327       /*SRW.MESSAGE('7'
328                  ,'Fed Rec length is ' || TO_CHAR(NVL(LENGTH(L_FED_REC)
329                             ,0)))*/NULL;
330       /*SRW.MESSAGE('8'
331                  ,'Document code length is ' || TO_CHAR(NVL(LENGTH(P_DOCUMENT_CODE)
332                             ,0)))*/NULL;
333       /*SRW.MESSAGE('7'
334                  ,'Doc. date length is ' || TO_CHAR(NVL(LENGTH(TO_CHAR(DOCUMENT_DATE
335                                            ,'DD/MM/RRRR'))
336                             ,0)))*/NULL;
337       /*SRW.MESSAGE('8'
338                  ,'Document number length is ' || TO_CHAR(NVL(LENGTH(DOCUMENT_NUMBER)
339                             ,0)))*/NULL;
340       /*SRW.MESSAGE('8'
341                  ,'Document amount length is ' || TO_CHAR(NVL(LENGTH(CF_DOCUMENT_AMT)
342                             ,0)))*/NULL;
343       /*SRW.MESSAGE('8'
344                  ,'DGI Type length is ' || TO_CHAR(NVL(LENGTH(DGI_TAX_TYPE_CODE)
345                             ,0)))*/NULL;
346       /*SRW.MESSAGE('8'
347                  ,'DGI Tax regime length is ' || TO_CHAR(NVL(LENGTH(DGI_TAX_REGIME_CODE)
348                             ,0)))*/NULL;
349       /*SRW.MESSAGE('8'
350                  ,'Withholding code length is ' || TO_CHAR(NVL(LENGTH(WITHHOLDING_CODE)
351                             ,0)))*/NULL;
352       /*SRW.MESSAGE('8'
353                  ,'Taxable Amount length is ' || TO_CHAR(NVL(LENGTH(CF_TAXABLE_AMT)
354                             ,0)))*/NULL;
355       /*SRW.MESSAGE('8'
356                  ,'WHT date length is ' || TO_CHAR(NVL(LENGTH(TO_CHAR(DOCUMENT_DATE
357                                            ,'DD/MM/RRRR'))
358                             ,0)))*/NULL;
359       /*SRW.MESSAGE('8'
360                  ,'Supp condn length is ' || TO_CHAR(NVL(LENGTH(SUPPLIER_CONDITION_CODE)
361                             ,0)))*/NULL;
362       /*SRW.MESSAGE('8'
363                  ,'Withholding amt length is ' || TO_CHAR(NVL(LENGTH(CF_WH_AMT)
364                             ,0)))*/NULL;
365       /*SRW.MESSAGE('8'
366                  ,'exemption perc length is ' || TO_CHAR(NVL(LENGTH(CF_EXEMPT_PERC)
367                             ,0)))*/NULL;
368       /*SRW.MESSAGE('8'
369                  ,'bulletin date length is ' || TO_CHAR(NVL(LENGTH(BULLETIN_ISSUE_DATE)
370                             ,0)))*/NULL;
371       /*SRW.MESSAGE('8'
372                  ,'Supp tax ident length is ' || TO_CHAR(NVL(LENGTH(SUPP_TAX_IDENTIFICATION_TYPE)
373                             ,0)))*/NULL;
374       /*SRW.MESSAGE('8'
375                  ,'cuit number length is ' || TO_CHAR(NVL(LENGTH(RPAD(CUIT_NUMBER
376                                         ,20
377                                         ,' '))
378                             ,0)))*/NULL;
379       /*SRW.MESSAGE('8'
380                  ,'Certificate num length is ' || TO_CHAR(NVL(LENGTH(CF_CERT_NUM)
381                             ,0)))*/NULL;
382       RETURN NULL;
383   END CF_FEDERAL_RECFORMULA;
384 
385   FUNCTION CF_PROV_RECFORMULA(DOCUMENT_DATE IN DATE
386                              ,DOCUMENT_NUMBER IN VARCHAR2
387                              ,CF_DOCUMENT_AMT IN VARCHAR2
388                              ,DGI_TAX_TYPE_CODE IN VARCHAR2
389                              ,DGI_TAX_REGIME_CODE IN VARCHAR2
390                              ,WITHHOLDING_CODE IN VARCHAR2
391                              ,CF_TAXABLE_AMT IN VARCHAR2
392                              ,SUPPLIER_CONDITION_CODE IN VARCHAR2
393                              ,CF_WH_AMT IN VARCHAR2
394                              ,CF_EXEMPT_PERC IN VARCHAR2
395                              ,BULLETIN_ISSUE_DATE IN VARCHAR2
396                              ,SUPP_TAX_IDENTIFICATION_TYPE IN VARCHAR2
397                              ,CUIT_NUMBER IN VARCHAR2
398                              ,CF_CERT_NUM IN VARCHAR2
399                              ,CF_WHT_AGENT_NUM IN VARCHAR2
400                              ,CF_SUPP_INSCRIPTION IN VARCHAR2) RETURN VARCHAR2 IS
401     L_PROV_REC VARCHAR2(170);
402   BEGIN
403     L_PROV_REC := P_DOCUMENT_CODE || TO_CHAR(DOCUMENT_DATE
404                          ,'DD/MM/RRRR') || DOCUMENT_NUMBER || CF_DOCUMENT_AMT || DGI_TAX_TYPE_CODE || DGI_TAX_REGIME_CODE || WITHHOLDING_CODE || CF_TAXABLE_AMT || TO_CHAR(DOCUMENT_DATE
405                          ,'DD/MM/RRRR') || SUPPLIER_CONDITION_CODE || CF_WH_AMT || CF_EXEMPT_PERC || BULLETIN_ISSUE_DATE || SUPP_TAX_IDENTIFICATION_TYPE || RPAD(CUIT_NUMBER
406                       ,20
407                       ,' ') || CF_CERT_NUM || CF_WHT_AGENT_NUM || CF_SUPP_INSCRIPTION;
408     RETURN (L_PROV_REC);
409     RETURN NULL;
410   EXCEPTION
411     WHEN OTHERS THEN
412       /*SRW.MESSAGE('7'
413                  ,SQLERRM)*/NULL;
414       RETURN NULL;
415   END CF_PROV_RECFORMULA;
416 
417   FUNCTION CF_ZONAL_RECFORMULA(DGI_TAX_REGIME_CODE IN VARCHAR2
418                               ,CUIT_NUMBER IN VARCHAR2
419                               ,CF_AMT_IN_EXCESS IN VARCHAR2
420                               ,DOCUMENT_DATE IN DATE
421                               ,CF_WH_AMT IN VARCHAR2
422                               ,CF_CERT_NUM IN VARCHAR2) RETURN VARCHAR2 IS
423     L_ZONAL_REC VARCHAR2(60);
424   BEGIN
425     L_ZONAL_REC := DGI_TAX_REGIME_CODE || RPAD(CUIT_NUMBER
426                        ,11
427                        ,' ') || CF_AMT_IN_EXCESS || TO_CHAR(DOCUMENT_DATE
428                           ,'DD/MM/RRRR') || CF_WH_AMT || CF_CERT_NUM;
429     RETURN (L_ZONAL_REC);
430     RETURN NULL;
431   EXCEPTION
432     WHEN OTHERS THEN
433       /*SRW.MESSAGE('7'
434                  ,SQLERRM)*/NULL;
435       RETURN NULL;
436   END CF_ZONAL_RECFORMULA;
437 
438   FUNCTION CF_TAXABLE_AMTFORMULA(DOCUMENT_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
439     L_TAXABLE_AMT VARCHAR2(14);
440   BEGIN
441     IF P_JURISDICTION_TYPE = 'PROVINCIAL' OR P_JURISDICTION_TYPE = 'FEDERAL' THEN
442       L_TAXABLE_AMT := LPAD(LTRIM(TO_CHAR(ROUND(DOCUMENT_AMOUNT
443                                                ,2)
444                                          ,'99999999999.99'))
445                            ,14
446                            ,' ');
447       RETURN (L_TAXABLE_AMT);
448     ELSE
449       /*SRW.MESSAGE('7'
450                  ,'Jurisdiction Type is ' || P_JURISDICTION_TYPE)*/NULL;
451       RETURN ('');
452     END IF;
453     RETURN NULL;
454   EXCEPTION
455     WHEN OTHERS THEN
456       /*SRW.MESSAGE('7'
457                  ,SQLERRM)*/NULL;
458       RETURN NULL;
459   END CF_TAXABLE_AMTFORMULA;
460 
461   FUNCTION CF_WH_AMTFORMULA(WITHHOLDING_AMOUNT IN NUMBER) RETURN VARCHAR2 IS
462     L_WH_AMT VARCHAR2(14);
463     L_DEC VARCHAR2(1);
464   BEGIN
465     IF P_JURISDICTION_TYPE = 'PROVINCIAL' OR P_JURISDICTION_TYPE = 'FEDERAL' THEN
466       L_WH_AMT := LPAD(LTRIM(TO_CHAR(ROUND(WITHHOLDING_AMOUNT
467                                           ,2)
468                                     ,'99999999999.99'))
469                       ,14
470                       ,' ');
471     ELSIF P_JURISDICTION_TYPE = 'ZONAL' THEN
472       L_WH_AMT := LPAD(LTRIM(TO_CHAR(ROUND(WITHHOLDING_AMOUNT
473                                           ,2)
474                                     ,'99999999.99'))
475                       ,11
476                       ,' ');
477     END IF;
478     RETURN (L_WH_AMT);
479     RETURN NULL;
480   EXCEPTION
481     WHEN OTHERS THEN
482       /*SRW.MESSAGE('7'
483                  ,SQLERRM)*/NULL;
484       RETURN NULL;
485   END CF_WH_AMTFORMULA;
486 
487   FUNCTION CF_SPACEFORMULA RETURN VARCHAR2 IS
488   BEGIN
489     RETURN (' ');
490   END CF_SPACEFORMULA;
491 
492   FUNCTION CF_CERT_NUMFORMULA(CERTIFICATE_NUMBER IN NUMBER) RETURN VARCHAR2 IS
493   BEGIN
494     RETURN (LPAD(TO_CHAR(CERTIFICATE_NUMBER)
495                ,14
496                ,'0'));
497   END CF_CERT_NUMFORMULA;
498 
499   FUNCTION CF_EXEMPT_PERCFORMULA(EXEMPTION_PERCENTAGE IN NUMBER) RETURN VARCHAR2 IS
500     L_EXEMPT_PERC VARCHAR2(6);
501   BEGIN
502     IF P_JURISDICTION_TYPE = 'PROVINCIAL' OR P_JURISDICTION_TYPE = 'FEDERAL' THEN
503       L_EXEMPT_PERC := LPAD(LTRIM(TO_CHAR(ROUND(EXEMPTION_PERCENTAGE
504                                                ,2)
505                                          ,'990.99'))
506                            ,6
507                            ,' ');
508       RETURN (L_EXEMPT_PERC);
509     ELSE
510       /*SRW.MESSAGE('7'
511                  ,'Jurisdiction Type is ' || P_JURISDICTION_TYPE)*/NULL;
512       RETURN ('');
513     END IF;
514     RETURN NULL;
515   EXCEPTION
516     WHEN OTHERS THEN
517       /*SRW.MESSAGE('7'
518                  ,SQLERRM)*/NULL;
519       /*SRW.MESSAGE('7'
520                  ,'Error in formatting Exemption Percentage' || P_JURISDICTION_TYPE)*/NULL;
521       RETURN NULL;
522   END CF_EXEMPT_PERCFORMULA;
523 
524   FUNCTION C_NLS_YES_P RETURN VARCHAR2 IS
525   BEGIN
526     RETURN C_NLS_YES;
527   END C_NLS_YES_P;
528 
529   FUNCTION C_NLS_NO_P RETURN VARCHAR2 IS
530   BEGIN
531     RETURN C_NLS_NO;
532   END C_NLS_NO_P;
533 
534   FUNCTION C_NLS_ALL_P RETURN VARCHAR2 IS
535   BEGIN
536     RETURN C_NLS_ALL;
537   END C_NLS_ALL_P;
538 
539   FUNCTION C_NLS_NO_DATA_EXISTS_P RETURN VARCHAR2 IS
540   BEGIN
541     RETURN C_NLS_NO_DATA_EXISTS;
542   END C_NLS_NO_DATA_EXISTS_P;
543 
544   FUNCTION C_NLS_VOID_P RETURN VARCHAR2 IS
545   BEGIN
546     RETURN C_NLS_VOID;
547   END C_NLS_VOID_P;
548 
549   FUNCTION C_NLS_NA_P RETURN VARCHAR2 IS
550   BEGIN
551     RETURN C_NLS_NA;
552   END C_NLS_NA_P;
553 
554   FUNCTION C_NLS_END_OF_REPORT_P RETURN VARCHAR2 IS
555   BEGIN
556     RETURN C_NLS_END_OF_REPORT;
557   END C_NLS_END_OF_REPORT_P;
558 
559   FUNCTION C_REPORT_START_DATE_P RETURN DATE IS
560   BEGIN
561     RETURN C_REPORT_START_DATE;
562   END C_REPORT_START_DATE_P;
563 
564   FUNCTION C_COMPANY_NAME_HEADER_P RETURN VARCHAR2 IS
565   BEGIN
566     RETURN C_COMPANY_NAME_HEADER;
567   END C_COMPANY_NAME_HEADER_P;
568 
569   FUNCTION C_BASE_CURRENCY_CODE_P RETURN VARCHAR2 IS
570   BEGIN
571     RETURN C_BASE_CURRENCY_CODE;
572   END C_BASE_CURRENCY_CODE_P;
573 
574   FUNCTION C_BASE_PRECISION_P RETURN NUMBER IS
575   BEGIN
576     RETURN C_BASE_PRECISION;
577   END C_BASE_PRECISION_P;
578 
579   FUNCTION C_BASE_MIN_ACCT_UNIT_P RETURN NUMBER IS
580   BEGIN
581     RETURN C_BASE_MIN_ACCT_UNIT;
582   END C_BASE_MIN_ACCT_UNIT_P;
583 
584   FUNCTION C_BASE_DESCRIPTION_P RETURN VARCHAR2 IS
585   BEGIN
586     RETURN C_BASE_DESCRIPTION;
587   END C_BASE_DESCRIPTION_P;
588 
589   FUNCTION C_CHART_OF_ACCOUNTS_ID_P RETURN NUMBER IS
590   BEGIN
591     RETURN C_CHART_OF_ACCOUNTS_ID;
592   END C_CHART_OF_ACCOUNTS_ID_P;
593 
594 END JL_JLARPWFF_XMLP_PKG;
595 
596