DBA Data[Home] [Help]

PACKAGE BODY: APPS.PAY_PAYJPWTM_XMLP_PKG

Source


1 PACKAGE BODY PAY_PAYJPWTM_XMLP_PKG AS
2 /* $Header: PAYJPWTMB.pls 120.3 2008/04/24 11:31:52 amakrish noship $ */
3 
4 G_MAGFILE VARCHAR2(255);
5 
6   G_MAGFILE_DIR VARCHAR2(255);
7 
8   G_MAGFILE_NAME VARCHAR2(255);
9 
10  -- G_FILE TEXT_IO.FILE_TYPE;
11 
12   FUNCTION AFTERPFORM RETURN BOOLEAN IS
13     L_CONCAT_ORGS VARCHAR2(2000);
14     ITAX_ORG_IV PAY_JP_PRE_TAX.ITAX_ORGANIZATION_ID%TYPE;
15     CURSOR CSR_USE_ARCHIVE_FLAG IS
16       SELECT
17         'Y'
18       FROM
19         DUAL
20       WHERE exists (
21         SELECT
22           null
23         FROM
24           PAY_PAYROLL_ACTIONS PPA
25         WHERE PPA.REPORT_TYPE = 'JPTW'
26           AND PPA.REPORT_QUALIFIER = 'JP'
27           AND PPA.REPORT_CATEGORY = 'ARCHIVE'
28           AND PPA.EFFECTIVE_DATE between P_START_DATE
29           AND P_END_DATE
30           AND PPA.BUSINESS_GROUP_ID + 0 = P_BUSINESS_GROUP_ID
31           AND PPA.ACTION_TYPE = 'X' );
32     FUNCTION CONCATENATE(P_TEXT IN VARCHAR2
33                         ,P_NUMBER IN NUMBER
34                         ,P_SEPARATOR IN VARCHAR2 := ',') RETURN VARCHAR2 IS
35       L_TEXT VARCHAR2(2000) := P_TEXT;
36     BEGIN
37       IF P_NUMBER IS NOT NULL THEN
38         IF P_TEXT IS NULL THEN
39           L_TEXT := TO_CHAR(P_NUMBER);
40         ELSE
41           L_TEXT := L_TEXT || P_SEPARATOR || TO_CHAR(P_NUMBER);
42         END IF;
43       END IF;
44       RETURN L_TEXT;
45     END CONCATENATE;
46   BEGIN
47 
48     P_START_DATE := TO_DATE(TO_CHAR(P_YEAR
49                                    ,'FM0999') || '0101'
50                            ,'YYYYMMDD');
51     P_END_DATE := ADD_MONTHS(P_START_DATE
52                             ,12) - 1;
53     ITAX_ORG_IV := HR_JP_ID_PKG.INPUT_VALUE_ID('COM_ITX_INFO'
54                                               ,'WITHHOLD_AGENT'
55                                               ,NULL
56                                               ,HR_JP_ID_PKG.LEGISLATION_CODE(P_BUSINESS_GROUP_ID));
57     L_CONCAT_ORGS := CONCATENATE(L_CONCAT_ORGS
58                                 ,P_ITAX_ORGANIZATION_ID1);
59     L_CONCAT_ORGS := CONCATENATE(L_CONCAT_ORGS
60                                 ,P_ITAX_ORGANIZATION_ID2);
61     L_CONCAT_ORGS := CONCATENATE(L_CONCAT_ORGS
62                                 ,P_ITAX_ORGANIZATION_ID3);
63     L_CONCAT_ORGS := CONCATENATE(L_CONCAT_ORGS
64                                 ,P_ITAX_ORGANIZATION_ID4);
65     L_CONCAT_ORGS := CONCATENATE(L_CONCAT_ORGS
66                                 ,P_ITAX_ORGANIZATION_ID5);
67     L_CONCAT_ORGS := CONCATENATE(L_CONCAT_ORGS
68                                 ,P_ITAX_ORGANIZATION_ID6);
69     L_CONCAT_ORGS := CONCATENATE(L_CONCAT_ORGS
70                                 ,P_ITAX_ORGANIZATION_ID7);
71     L_CONCAT_ORGS := CONCATENATE(L_CONCAT_ORGS
72                                 ,P_ITAX_ORGANIZATION_ID8);
73     L_CONCAT_ORGS := CONCATENATE(L_CONCAT_ORGS
74                                 ,P_ITAX_ORGANIZATION_ID9);
75     L_CONCAT_ORGS := CONCATENATE(L_CONCAT_ORGS
76                                 ,P_ITAX_ORGANIZATION_ID10);
77     IF L_CONCAT_ORGS IS NOT NULL THEN
78       P_ADDITIONAL_WHERE_CLAUSE := 'and	wic.itax_organization_id in (' || L_CONCAT_ORGS || ')';
79       P_ADDITIONAL_WHERE_CLAUSE2 := 'and	person.itax_organization_id in (' || L_CONCAT_ORGS || ')';
80     ELSE
81       P_ADDITIONAL_WHERE_CLAUSE := 'and	wic.itax_organization_id is not null';
82       P_ADDITIONAL_WHERE_CLAUSE2 := 'and	person.itax_organization_id is not null';
83     END IF;
84     IF P_USE_ARCHIVE_FLAG IS NULL THEN
85       OPEN CSR_USE_ARCHIVE_FLAG;
86       FETCH CSR_USE_ARCHIVE_FLAG
87        INTO P_USE_ARCHIVE_FLAG;
88       IF CSR_USE_ARCHIVE_FLAG%NOTFOUND THEN
89         P_USE_ARCHIVE_FLAG := 'N';
90       END IF;
91       CLOSE CSR_USE_ARCHIVE_FLAG;
92     END IF;
93     RETURN (TRUE);
94   END AFTERPFORM;
95 
96   FUNCTION BEFOREREPORT RETURN BOOLEAN IS
97     L_CHAR_YEAR VARCHAR2(10);
98   BEGIN
99     --HR_STANDARD.EVENT('BEFORE REPORT');
100     P_CONC_REQUEST_ID:= FND_GLOBAL.CONC_REQUEST_ID;
101     L_CHAR_YEAR := TO_JP_CHAR(P_END_DATE
102                              ,'EEYY');
103     CP_YEAR := TO_NUMBER(SUBSTR(L_CHAR_YEAR
104                                ,-2));
105     IF P_MEDIA_TYPE = 'MT' THEN
106       FND_MESSAGE.SET_NAME('PAY'
107                           ,'PAY_JP_MT_WIC_TITLE');
108     ELSE
109       FND_MESSAGE.SET_NAME('PAY'
110                           ,'PAY_JP_DISK_WIC_TITLE');
111     END IF;
112     FND_MESSAGE.SET_TOKEN('YEAR'
113                          ,L_CHAR_YEAR);
114     CP_REPORT_TITLE := FND_MESSAGE.GET;
115     IF P_MAGNETIC_FILE_NAME IS NULL THEN
116       CP_MAGNETIC_FILE_NAME := 'i' || LPAD(TO_CHAR(P_CONC_REQUEST_ID - TRUNC(P_CONC_REQUEST_ID
117                                                  ,-7))
118                                    ,7
119                                    ,'0') || '.mf';
120     ELSE
121       CP_MAGNETIC_FILE_NAME := P_MAGNETIC_FILE_NAME;
122     END IF;
123     IF P_KANJI_FLAG = 'Y' THEN
124       CP_KANJI_FLAG := '1';
125       CP_EARNINGS_TYPE := FND_MESSAGE.GET_STRING('PAY'
126                                                 ,'PAY_JP_WIC_EARNINGS_TYPE');
127     ELSE
128       CP_KANJI_FLAG := '0';
129       CP_EARNINGS_TYPE := FND_MESSAGE.GET_STRING('PAY'
130                                                 ,'PAY_JP_WIC_EARNINGS_TYPE_KANA');
131     END IF;
132     CP_BG_DPNT_REF_TYPE := PER_JP_CTR_UTILITY_PKG.BG_ITAX_DPNT_REF_TYPE(P_BUSINESS_GROUP_ID);
133     SELECT
134       RTRIM(RPAD(DECODE(P_KANJI_FLAG
135                        ,'Y'
136                        ,HR_JP_STANDARD_PKG.TO_ZENKAKU(HOI1.ORG_INFORMATION6 || HOI1.ORG_INFORMATION7 || HOI1.ORG_INFORMATION8)
137                        ,HR_JP_STANDARD_PKG.UPPER_KANA(HOI1.ORG_INFORMATION9 || HOI1.ORG_INFORMATION10 || HOI1.ORG_INFORMATION11))
138                 ,120)),
139       RTRIM(RPAD(DECODE(P_KANJI_FLAG
140                        ,'Y'
141                        ,HR_JP_STANDARD_PKG.TO_ZENKAKU(HOI1.ORG_INFORMATION1)
142                        ,HR_JP_STANDARD_PKG.UPPER_KANA(HOI1.ORG_INFORMATION2))
143                 ,60)),
144       LPAD(HOI2.ORG_INFORMATION4
145           ,10
146           ,'0'),
147       LPAD(HOI2.ORG_INFORMATION5
148           ,DECODE(P_MEDIA_TYPE
149                 ,'MT'
150                 ,12
151                 ,13)
152           ,'0')
153     INTO CP_HQ_EMPLOYER_ADDRESS,CP_HQ_EMPLOYER_NAME,CP_HQ_REFERENCE_NUMBER1,CP_HQ_REFERENCE_NUMBER2
154     FROM
155       HR_ORGANIZATION_INFORMATION HOI2,
156       HR_ORGANIZATION_INFORMATION HOI1,
157       HR_ALL_ORGANIZATION_UNITS HOU
158     WHERE HOU.ORGANIZATION_ID = P_ITAX_ORGANIZATION_ID
159       AND hoi1.organization_id (+) = HOU.ORGANIZATION_ID
160       AND hoi1.org_information_context (+) = 'JP_TAX_SWOT_INFO'
161       AND hoi2.organization_id (+) = HOU.ORGANIZATION_ID
162       AND hoi2.org_information_context (+) = 'JP_ITAX_WITHHELD_INFO';
163    -- OPEN_MAGFILE;
164     FND_FILE.PUT_LINE(1
165                      ,FND_MESSAGE.GET_STRING('PAY'
166                                            ,'PAY_JP_WIC_DESC_TRUNCATED'));
167     RETURN (TRUE);
168   END BEFOREREPORT;
169 
170   FUNCTION AFTERREPORT RETURN BOOLEAN IS
171   BEGIN
172     --CLOSE_MAGFILE;
173    -- HR_STANDARD.EVENT('AFTER REPORT');
174     RETURN (TRUE);
175   END AFTERREPORT;
176 
177   FUNCTION TO_JP_CHAR(P_DATE IN DATE
178                      ,P_DATE_FORMAT IN VARCHAR2) RETURN VARCHAR2 IS
179     L_DUMMY VARCHAR2(255);
180   BEGIN
181     IF P_DATE IS NOT NULL THEN
182       L_DUMMY := HR_JP_STANDARD_PKG.TO_JP_CHAR(P_DATE
183                                               ,P_DATE_FORMAT);
184     END IF;
185     RETURN L_DUMMY;
186   END TO_JP_CHAR;
187 
188   FUNCTION CF_ASSACTFORMULULA(ASSIGNMENT_ACTION_ID IN NUMBER
189                              ,ASSIGNMENT_ID IN NUMBER
190                              ,ACTION_SEQUENCE IN NUMBER
191                              ,EFFECTIVE_DATE IN DATE
192                              ,DATE_EARNED IN DATE
193                              ,ITAX_ORGANIZATION_ID IN NUMBER
194                              ,ITAX_CATEGORY IN VARCHAR2
195                              ,ITAX_YEA_CATEGORY IN VARCHAR2
196                              ,DPNT_REF_TYPE IN VARCHAR2
197                              ,DPNT_EFFECTIVE_DATE IN DATE
198                              ,PERSON_ID IN NUMBER
199                              ,SEX IN VARCHAR2
200                              ,DATE_OF_BIRTH IN DATE
201                              ,LEAVING_REASON IN VARCHAR2
202                              ,LAST_NAME_KANJI IN VARCHAR2
203                              ,LAST_NAME_KANA IN VARCHAR2
204                              ,EMPLOYMENT_CATEGORY IN VARCHAR2
205                              ,ARCHIVE_ASSIGNMENT_ACTION_ID IN NUMBER
206                              ,SUBMISSION_REQUIRED_FLAG IN VARCHAR2
207                              ,ADDRESS_ID IN NUMBER
208                              ,COUNTRY IN VARCHAR2
209                              ,JP_DATE_OF_BIRTH IN VARCHAR2
210                              ,JP_ACTUAL_TERMINATION_DATE IN VARCHAR2
211                              ,JP_DATE_START IN VARCHAR2) RETURN NUMBER IS
212     L_CERTIFICATE_INFO PAY_JP_WIC_PKG.T_CERTIFICATE_INFO;
213     L_DUMMY VARCHAR2(1);
214     L_PREV_JOB_INFO PAY_JP_WIC_PKG.T_PREV_JOB_INFO;
215     L_YES VARCHAR2(1);
216     L_SYSTEM_DESCRIPTION VARCHAR2(300);
217     L_USER_DESCRIPTION VARCHAR2(300);
218     FUNCTION DECODE_VALUE(P_CONDITION IN BOOLEAN
219                          ,P_VALUE1 IN VARCHAR2
220                          ,P_VALUE2 IN VARCHAR2) RETURN VARCHAR2 IS
221     BEGIN
222       IF P_CONDITION THEN
223         RETURN P_VALUE1;
224       ELSE
225         RETURN P_VALUE2;
226       END IF;
227     END DECODE_VALUE;
228     PROCEDURE JP_DATE(P_CHAR_DATE IN VARCHAR2
229                      ,P_ERA OUT NOCOPY VARCHAR2
230                      ,P_YEAR OUT NOCOPY NUMBER
231                      ,P_MONTH OUT NOCOPY NUMBER
232                      ,P_DAY OUT NOCOPY NUMBER) IS
233       L_ERA_CODE VARCHAR2(1);
234     BEGIN
235       IF P_CHAR_DATE IS NOT NULL THEN
236         L_ERA_CODE := SUBSTR(P_CHAR_DATE
237                             ,1
238                             ,1);
239         IF L_ERA_CODE = 'M' THEN
240           P_ERA := '3';
241         ELSIF L_ERA_CODE = 'T' THEN
242           P_ERA := '2';
243         ELSIF L_ERA_CODE = 'S' THEN
244           P_ERA := '1';
245         ELSIF L_ERA_CODE = 'H' THEN
246           P_ERA := '4';
247         END IF;
248         P_YEAR := TO_NUMBER(SUBSTR(P_CHAR_DATE
249                                   ,2
250                                   ,2));
251         P_MONTH := TO_NUMBER(SUBSTR(P_CHAR_DATE
252                                    ,4
253                                    ,2));
254         P_DAY := TO_NUMBER(SUBSTR(P_CHAR_DATE
255                                  ,6
256                                  ,2));
257       END IF;
258     END JP_DATE;
259   BEGIN
260     IF P_USE_ARCHIVE_FLAG = 'N' THEN
261       L_YES := 'Y';
262       PAY_JP_WIC_PKG.GET_CERTIFICATE_INFO(P_ASSIGNMENT_ACTION_ID => ASSIGNMENT_ACTION_ID
263                                          ,P_ASSIGNMENT_ID => ASSIGNMENT_ID
264                                          ,P_ACTION_SEQUENCE => ACTION_SEQUENCE
265                                          ,P_BUSINESS_GROUP_ID => P_BUSINESS_GROUP_ID
266                                          ,P_EFFECTIVE_DATE => EFFECTIVE_DATE
267                                          ,P_DATE_EARNED => DATE_EARNED
268                                          ,P_ITAX_ORGANIZATION_ID => ITAX_ORGANIZATION_ID
269                                          ,P_ITAX_CATEGORY => ITAX_CATEGORY
270                                          ,P_ITAX_YEA_CATEGORY => ITAX_YEA_CATEGORY
271                                          ,P_DPNT_REF_TYPE => DPNT_REF_TYPE
272                                          ,P_DPNT_EFFECTIVE_DATE => DPNT_EFFECTIVE_DATE
273                                          ,P_PERSON_ID => PERSON_ID
274                                          ,P_SEX => SEX
275                                          ,P_DATE_OF_BIRTH => DATE_OF_BIRTH
276                                          ,P_LEAVING_REASON => LEAVING_REASON
277                                          ,P_LAST_NAME_KANJI => LAST_NAME_KANJI
278                                          ,P_LAST_NAME_KANA => LAST_NAME_KANA
279                                          ,P_EMPLOYMENT_CATEGORY => EMPLOYMENT_CATEGORY
280                                          ,P_MAGNETIC_MEDIA_FLAG => 'Y'
281                                          ,P_CERTIFICATE_INFO => L_CERTIFICATE_INFO
282                                          ,P_SUBMISSION_REQUIRED_FLAG => CP_SUBMISSION_REQUIRED_FLAG
283                                          ,P_PREV_JOB_INFO => L_PREV_JOB_INFO);
284       CP_TAXABLE_INCOME := L_CERTIFICATE_INFO.TAX_INFO.TAXABLE_INCOME;
285       CP_NET_TAXABLE_INCOME := L_CERTIFICATE_INFO.NET_TAXABLE_INCOME;
286       CP_TOTAL_INCOME_EXEMPT := L_CERTIFICATE_INFO.TOTAL_INCOME_EXEMPT;
287       CP_WITHHOLDING_ITAX := L_CERTIFICATE_INFO.TAX_INFO.WITHHOLDING_ITAX;
288       CP_SPOUSE_SP_EXEMPT := L_CERTIFICATE_INFO.SPOUSE_SP_EXEMPT;
289       CP_SI_PREM := L_CERTIFICATE_INFO.TAX_INFO.SI_PREM;
290       CP_MUTUAL_AID_PREM := L_CERTIFICATE_INFO.TAX_INFO.MUTUAL_AID_PREM;
291       CP_LI_PREM_EXEMPT := L_CERTIFICATE_INFO.LI_PREM_EXEMPT;
292       CP_AI_PREM_EXEMPT := L_CERTIFICATE_INFO.AI_PREM_EXEMPT;
293       CP_HOUSING_TAX_REDUCTION := L_CERTIFICATE_INFO.HOUSING_TAX_REDUCTION;
294       CP_PP_PREM := L_CERTIFICATE_INFO.PP_PREM;
295       CP_SPOUSE_NET_TAXABLE_INCOME := L_CERTIFICATE_INFO.SPOUSE_NET_TAXABLE_INCOME;
296       CP_LONG_AI_PREM := L_CERTIFICATE_INFO.LONG_AI_PREM;
297       CP_DISASTER_TAX_REDUCTION := L_CERTIFICATE_INFO.TAX_INFO.DISASTER_TAX_REDUCTION;
298       CP_NUM_SPECIFIEDS_KOU := L_CERTIFICATE_INFO.NUM_SPECIFIEDS_KOU;
299       CP_NUM_SPECIFIEDS_OTSU := L_CERTIFICATE_INFO.NUM_SPECIFIEDS_OTSU;
300       CP_NUM_AGEDS_KOU := L_CERTIFICATE_INFO.NUM_AGEDS_KOU;
301       CP_NUM_AGED_PARENTS_LT := L_CERTIFICATE_INFO.NUM_AGED_PARENTS_LT;
302       CP_NUM_AGEDS_OTSU := L_CERTIFICATE_INFO.NUM_AGEDS_OTSU;
303       CP_NUM_DEPS_KOU := L_CERTIFICATE_INFO.NUM_DEPS_KOU;
304       CP_NUM_DEPS_OTSU := L_CERTIFICATE_INFO.NUM_DEPS_OTSU;
305       CP_NUM_SVR_DISABLEDS := L_CERTIFICATE_INFO.NUM_SVR_DISABLEDS;
306       CP_NUM_SVR_DISABLEDS_LT := L_CERTIFICATE_INFO.NUM_SVR_DISABLEDS_LT;
307       CP_NUM_DISABLEDS := L_CERTIFICATE_INFO.NUM_DISABLEDS;
308       IF L_PREV_JOB_INFO.TAXABLE_INCOME IS NULL THEN
309         CP_PREV_JOB_TAXABLE_INCOME := NULL;
310         CP_PREV_JOB_ITAX := NULL;
311         CP_PREV_JOB_SI_PREM := NULL;
312         CP_PREV_JOB_FOREIGN_ADDRESS := NULL;
313         CP_PREV_JOB_EMPLOYER_ADDRESS := NULL;
314         CP_PREV_JOB_EMPLOYER_NAME := NULL;
315         CP_PREV_JOB_TERMINATION_YEAR := NULL;
316         CP_PREV_JOB_TERMINATION_MONTH := NULL;
317         CP_PREV_JOB_TERMINATION_DAY := NULL;
318       ELSE
319         CP_PREV_JOB_TAXABLE_INCOME := L_PREV_JOB_INFO.TAXABLE_INCOME;
320         CP_PREV_JOB_ITAX := L_PREV_JOB_INFO.ITAX;
321         CP_PREV_JOB_SI_PREM := L_PREV_JOB_INFO.SI_PREM;
322         CP_PREV_JOB_FOREIGN_ADDRESS := DECODE_VALUE(L_PREV_JOB_INFO.FOREIGN_ADDRESS_FLAG = 'Y'
323                                                    ,'1'
324                                                    ,'0');
325         IF P_KANJI_FLAG = 'Y' THEN
326           CP_PREV_JOB_EMPLOYER_ADDRESS := L_PREV_JOB_INFO.SALARY_PAYER_ADDRESS_KANJI;
327           CP_PREV_JOB_EMPLOYER_NAME := L_PREV_JOB_INFO.SALARY_PAYER_NAME_KANJI;
328         ELSE
329           CP_PREV_JOB_EMPLOYER_ADDRESS := L_PREV_JOB_INFO.SALARY_PAYER_ADDRESS_KANA;
330           CP_PREV_JOB_EMPLOYER_NAME := L_PREV_JOB_INFO.SALARY_PAYER_NAME_KANA;
331         END IF;
332         JP_DATE(P_CHAR_DATE => TO_JP_CHAR(L_PREV_JOB_INFO.TERMINATION_DATE
333                           ,'EYYMMDD')
334                ,P_ERA => L_DUMMY
335                ,P_YEAR => CP_PREV_JOB_TERMINATION_YEAR
336                ,P_MONTH => CP_PREV_JOB_TERMINATION_MONTH
337                ,P_DAY => CP_PREV_JOB_TERMINATION_DAY);
338       END IF;
339       JP_DATE(P_CHAR_DATE => TO_JP_CHAR(L_CERTIFICATE_INFO.HOUSING_RESIDENCE_DATE
340                         ,'EYYMMDD')
341              ,P_ERA => L_DUMMY
342              ,P_YEAR => CP_HOUSING_RESIDENCE_YEAR
343              ,P_MONTH => CP_HOUSING_RESIDENCE_MONTH
344              ,P_DAY => CP_HOUSING_RESIDENCE_DAY);
345       CP_ORIGINAL_DESCRIPTION := NULL;
346       IF P_KANJI_FLAG = 'Y' THEN
347         IF L_CERTIFICATE_INFO.DESCRIPTION_KANJI IS NOT NULL THEN
348           CP_ORIGINAL_DESCRIPTION := HR_JP_STANDARD_PKG.TO_ZENKAKU(L_CERTIFICATE_INFO.DESCRIPTION_KANJI);
349         END IF;
350       ELSE
351         IF L_CERTIFICATE_INFO.DESCRIPTION_KANA IS NOT NULL THEN
352           CP_ORIGINAL_DESCRIPTION := HR_JP_STANDARD_PKG.UPPER_KANA(HR_JP_STANDARD_PKG.TO_HANKAKU(L_CERTIFICATE_INFO.DESCRIPTION_KANA));
353         END IF;
354       END IF;
355     ELSE
356       L_YES := '*';
357 
358       SELECT
359         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.TAXABLE_INCOME),
360         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.NET_TAXABLE_INCOME),
361         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.TOTAL_INCOME_EXEMPT),
362         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.WITHHOLDING_ITAX),
363         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.SPOUSE_SPECIAL_EXEMPT),
364         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.SOCIAL_INSURANCE_PREMIUM),
365         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.MUTUAL_AID_PREMIUM),
366         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.LIFE_INSURANCE_PREMIUM_EXEMPT),
367         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.DAMAGE_INSURANCE_PREMIUM_EXEM),
368         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.HOUSING_TAX_REDUCTION),
369         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.PRIVATE_PENSION_PREMIUM),
370         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.SPOUSE_NET_TAXABLE_INCOME),
371         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.LONG_DAMAGE_INSURANCE_PREMIUM),
372         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.DISASTER_TAX_REDUCTION),
373         OTHER.DEPENDENT_SPOUSE_EXISTS_KOU,
374         OTHER.DEPENDENT_SPOUSE_NO_EXIST_KOU,
375         OTHER.DEPENDENT_SPOUSE_EXISTS_OTSU,
376         OTHER.DEPENDENT_SPOUSE_NO_EXIST_OTSU,
377         OTHER.AGED_SPOUSE_EXISTS,
378         FND_NUMBER.CANONICAL_TO_NUMBER(OTHER.NUM_SPECIFIEDS_KOU),
379         FND_NUMBER.CANONICAL_TO_NUMBER(OTHER.NUM_SPECIFIEDS_OTSU),
380         FND_NUMBER.CANONICAL_TO_NUMBER(OTHER.NUM_AGED_PARENTS_PARTIAL),
381         FND_NUMBER.CANONICAL_TO_NUMBER(OTHER.NUM_AGEDS_KOU),
382         FND_NUMBER.CANONICAL_TO_NUMBER(OTHER.NUM_AGEDS_OTSU),
383         FND_NUMBER.CANONICAL_TO_NUMBER(OTHER.NUM_DEPENDENTS_KOU),
384         FND_NUMBER.CANONICAL_TO_NUMBER(OTHER.NUM_DEPENDENTS_OTSU),
385         FND_NUMBER.CANONICAL_TO_NUMBER(OTHER.NUM_SPECIAL_DISABLEDS_PARTIAL),
386         FND_NUMBER.CANONICAL_TO_NUMBER(OTHER.NUM_SPECIAL_DISABLEDS),
387         FND_NUMBER.CANONICAL_TO_NUMBER(OTHER.NUM_DISABLEDS),
388         OTHER.HUSBAND_EXISTS,
389         OTHER.MINOR,
390         OTHER.OTSU,
391         OTHER.SPECIAL_DISABLED,
392         OTHER.DISABLED,
393         OTHER.AGED,
394         OTHER.WIDOW,
395         OTHER.SPECIAL_WIDOW,
396         OTHER.WIDOWER,
397         OTHER.WORKING_STUDENT,
398         OTHER.DECEASED_TERMINATION,
399         OTHER.DISASTERED,
400         OTHER.FOREIGNER,
401         DECODE(P_KANJI_FLAG
402               ,'Y'
403               ,TAX.PREV_JOB_EMPLOYER_NAME_KANJI
404               ,TAX.PREV_JOB_EMPLOYER_NAME_KANA),
405         DECODE(P_KANJI_FLAG
406               ,'Y'
407               ,TAX.PREV_JOB_EMPLOYER_ADD_KANJI
408               ,TAX.PREV_JOB_EMPLOYER_ADD_KANA),
409         TAX.PREV_JOB_FOREIGN_ADDRESS,
410         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.PREV_JOB_TAXABLE_INCOME),
411         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.PREV_JOB_ITAX),
412         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.PREV_JOB_SI_PREM),
413         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.PREV_JOB_TERMINATION_YEAR),
414         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.PREV_JOB_TERMINATION_MONTH),
415         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.PREV_JOB_TERMINATION_DAY),
416         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.HOUSING_RESIDENCE_YEAR),
417         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.HOUSING_RESIDENCE_MONTH),
418         FND_NUMBER.CANONICAL_TO_NUMBER(TAX.HOUSING_RESIDENCE_DAY),
419         RTRIM(SUBSTRB(DECODE(P_KANJI_FLAG
420                             ,'Y'
421                             ,WTM_SYSTEM_DESC_KANJI
422                             ,WTM_SYSTEM_DESC_KANA)
423                      ,1
424                      ,300)) SYSTEM_DESCRIPTION,
425         RTRIM(SUBSTRB(DECODE(P_KANJI_FLAG
426                             ,'Y'
427                             ,WTM_USER_DESC_KANJI
428                             ,WTM_USER_DESC_KANA)
429                      ,1
430                      ,300)) USER_DESCRIPTION
431       INTO CP_TAXABLE_INCOME,CP_NET_TAXABLE_INCOME,CP_TOTAL_INCOME_EXEMPT,
432       CP_WITHHOLDING_ITAX,CP_SPOUSE_SP_EXEMPT,CP_SI_PREM,CP_MUTUAL_AID_PREM,
433       CP_LI_PREM_EXEMPT,CP_AI_PREM_EXEMPT,CP_HOUSING_TAX_REDUCTION,CP_PP_PREM,
434       CP_SPOUSE_NET_TAXABLE_INCOME,CP_LONG_AI_PREM,CP_DISASTER_TAX_REDUCTION,
435       L_CERTIFICATE_INFO.DEP_SPOUSE_EXISTS_KOU,L_CERTIFICATE_INFO.DEP_SPOUSE_NOT_EXIST_KOU,
436       L_CERTIFICATE_INFO.DEP_SPOUSE_EXISTS_OTSU,L_CERTIFICATE_INFO.DEP_SPOUSE_NOT_EXIST_OTSU,
437       L_CERTIFICATE_INFO.AGED_SPOUSE_EXISTS,CP_NUM_SPECIFIEDS_KOU,CP_NUM_SPECIFIEDS_OTSU,
438       CP_NUM_AGED_PARENTS_LT,CP_NUM_AGEDS_KOU,CP_NUM_AGEDS_OTSU,CP_NUM_DEPS_KOU,CP_NUM_DEPS_OTSU,
439       CP_NUM_SVR_DISABLEDS_LT,CP_NUM_SVR_DISABLEDS,CP_NUM_DISABLEDS,L_CERTIFICATE_INFO.HUSBAND_EXISTS,
440       L_CERTIFICATE_INFO.MINOR_FLAG,L_CERTIFICATE_INFO.OTSU_FLAG,L_CERTIFICATE_INFO.SVR_DISABLED_FLAG,
441       L_CERTIFICATE_INFO.DISABLED_FLAG,L_CERTIFICATE_INFO.AGED_FLAG,L_CERTIFICATE_INFO.WIDOW_FLAG,
442       L_CERTIFICATE_INFO.SP_WIDOW_FLAG,L_CERTIFICATE_INFO.WIDOWER_FLAG,L_CERTIFICATE_INFO.WORKING_STUDENT_FLAG,
443       L_CERTIFICATE_INFO.DECEASED_TERMINATION_FLAG,L_CERTIFICATE_INFO.DISASTERED_FLAG,
444       L_CERTIFICATE_INFO.FOREIGNER_FLAG,CP_PREV_JOB_EMPLOYER_NAME,
445       CP_PREV_JOB_EMPLOYER_ADDRESS,CP_PREV_JOB_FOREIGN_ADDRESS,
446       CP_PREV_JOB_TAXABLE_INCOME,CP_PREV_JOB_ITAX,CP_PREV_JOB_SI_PREM,CP_PREV_JOB_TERMINATION_YEAR,
447       CP_PREV_JOB_TERMINATION_MONTH,CP_PREV_JOB_TERMINATION_DAY,CP_HOUSING_RESIDENCE_YEAR,
448       CP_HOUSING_RESIDENCE_MONTH,CP_HOUSING_RESIDENCE_DAY,L_SYSTEM_DESCRIPTION,L_USER_DESCRIPTION
449       FROM
450         PAY_JP_ITAX_TAX_V TAX,
451         PAY_JP_ITAX_OTHER_V OTHER,
452         PAY_JP_ITAX_OTHER2_V2 OTHER2,
453         PAY_JP_ITAX_ARCH_V ARCH
454       WHERE TAX.ACTION_CONTEXT_ID = ARCHIVE_ASSIGNMENT_ACTION_ID
455         AND TAX.EFFECTIVE_DATE = CF_ASSACTFORMULULA.EFFECTIVE_DATE
456         AND OTHER.ACTION_CONTEXT_ID = TAX.ACTION_CONTEXT_ID
457         AND OTHER.EFFECTIVE_DATE = TAX.EFFECTIVE_DATE
458         AND OTHER2.ACTION_CONTEXT_ID = TAX.ACTION_CONTEXT_ID
459         AND OTHER2.EFFECTIVE_DATE = TAX.EFFECTIVE_DATE
460         AND ARCH.ACTION_CONTEXT_ID = TAX.ACTION_CONTEXT_ID
461         AND ARCH.EFFECTIVE_DATE = TAX.EFFECTIVE_DATE;
462       CP_SUBMISSION_REQUIRED_FLAG := SUBMISSION_REQUIRED_FLAG;
463       CP_ORIGINAL_DESCRIPTION := NULL;
464       IF L_USER_DESCRIPTION IS NULL THEN
465         CP_ORIGINAL_DESCRIPTION := L_SYSTEM_DESCRIPTION;
466       ELSIF L_SYSTEM_DESCRIPTION IS NULL THEN
467         CP_ORIGINAL_DESCRIPTION := L_USER_DESCRIPTION;
468       ELSE
469         CP_ORIGINAL_DESCRIPTION := L_SYSTEM_DESCRIPTION || ',' || L_USER_DESCRIPTION;
470       END IF;
471     END IF;
472     IF ADDRESS_ID IS NULL THEN
473       CP_FOREIGN_ADDRESS := NULL;
474     ELSE
475       CP_FOREIGN_ADDRESS := DECODE_VALUE(COUNTRY <> 'JP'
476                                         ,'1'
477                                         ,'0');
478     END IF;
479     JP_DATE(P_CHAR_DATE => JP_DATE_OF_BIRTH
480            ,P_ERA => CP_BIRTH_ERA
481            ,P_YEAR => CP_BIRTH_YEAR
482            ,P_MONTH => CP_BIRTH_MONTH
483            ,P_DAY => CP_BIRTH_DAY);
484     IF L_CERTIFICATE_INFO.DEP_SPOUSE_EXISTS_KOU = L_YES THEN
485       CP_DEP_SPOUSE := '1';
486     ELSIF L_CERTIFICATE_INFO.DEP_SPOUSE_NOT_EXIST_KOU = L_YES THEN
487       CP_DEP_SPOUSE := '2';
488     ELSIF L_CERTIFICATE_INFO.DEP_SPOUSE_EXISTS_OTSU = L_YES THEN
489       CP_DEP_SPOUSE := '3';
490     ELSIF L_CERTIFICATE_INFO.DEP_SPOUSE_NOT_EXIST_OTSU = L_YES THEN
491       CP_DEP_SPOUSE := '4';
492     ELSE
493       CP_DEP_SPOUSE := NULL;
494     END IF;
495     IF P_MEDIA_TYPE = 'MT' THEN
496       CP_AGED_SPOUSE := DECODE_VALUE(L_CERTIFICATE_INFO.AGED_SPOUSE_EXISTS = L_YES
497                                     ,'1'
498                                     ,NULL);
499     ELSE
500       CP_AGED_SPOUSE := DECODE_VALUE(L_CERTIFICATE_INFO.AGED_SPOUSE_EXISTS = L_YES
501                                     ,'1'
502                                     ,'0');
503     END IF;
504     IF P_MEDIA_TYPE = 'MT' THEN
505       CP_HUSBAND_EXISTS := '0';
506     ELSE
507       CP_HUSBAND_EXISTS := NULL;
508     END IF;
509     CP_AGED := '0';
510     IF TO_NUMBER(TO_CHAR(EFFECTIVE_DATE
511                      ,'YYYY')) < 2005 THEN
512       CP_HUSBAND_EXISTS := DECODE_VALUE(L_CERTIFICATE_INFO.HUSBAND_EXISTS = L_YES
513                                        ,'1'
514                                        ,'0');
515       CP_AGED := DECODE_VALUE(L_CERTIFICATE_INFO.AGED_FLAG = L_YES
516                              ,'1'
517                              ,'0');
518     END IF;
519     CP_MINOR := DECODE_VALUE(L_CERTIFICATE_INFO.MINOR_FLAG = L_YES
520                             ,'1'
521                             ,'0');
522     CP_OTSU := DECODE_VALUE(L_CERTIFICATE_INFO.OTSU_FLAG = L_YES
523                            ,'1'
524                            ,'0');
525     CP_SVR_DISABLED := DECODE_VALUE(L_CERTIFICATE_INFO.SVR_DISABLED_FLAG = L_YES
526                                    ,'1'
527                                    ,'0');
528     CP_DISABLED := DECODE_VALUE(L_CERTIFICATE_INFO.DISABLED_FLAG = L_YES
529                                ,'1'
530                                ,'0');
531     IF L_CERTIFICATE_INFO.WIDOW_FLAG = L_YES THEN
532       CP_WIDOW := '1';
533     ELSIF L_CERTIFICATE_INFO.SP_WIDOW_FLAG = L_YES THEN
534       CP_WIDOW := '2';
535     ELSE
536       CP_WIDOW := '0';
537     END IF;
538     CP_WIDOWER := DECODE_VALUE(L_CERTIFICATE_INFO.WIDOWER_FLAG = L_YES
539                               ,'1'
540                               ,'0');
541     CP_WORKING_STUDENT := DECODE_VALUE(L_CERTIFICATE_INFO.WORKING_STUDENT_FLAG = L_YES
542                                       ,'1'
543                                       ,'0');
544     CP_DECEASED_TERMINATION := DECODE_VALUE(L_CERTIFICATE_INFO.DECEASED_TERMINATION_FLAG = L_YES
545                                            ,'1'
546                                            ,'0');
547     CP_DISASTERED := DECODE_VALUE(L_CERTIFICATE_INFO.DISASTERED_FLAG = L_YES
548                                  ,'1'
549                                  ,'0');
550     CP_FOREIGNER := DECODE_VALUE(L_CERTIFICATE_INFO.FOREIGNER_FLAG = L_YES
551                                 ,'1'
552                                 ,'0');
553     IF JP_ACTUAL_TERMINATION_DATE IS NOT NULL THEN
554       CP_EMPLOYED := '2';
555       JP_DATE(P_CHAR_DATE => JP_ACTUAL_TERMINATION_DATE
556              ,P_ERA => L_DUMMY
557              ,P_YEAR => CP_EMPLOYMENT_YEAR
558              ,P_MONTH => CP_EMPLOYMENT_MONTH
559              ,P_DAY => CP_EMPLOYMENT_DAY);
560     ELSIF JP_DATE_START IS NOT NULL THEN
561       CP_EMPLOYED := '1';
562       JP_DATE(P_CHAR_DATE => JP_DATE_START
563              ,P_ERA => L_DUMMY
564              ,P_YEAR => CP_EMPLOYMENT_YEAR
565              ,P_MONTH => CP_EMPLOYMENT_MONTH
566              ,P_DAY => CP_EMPLOYMENT_DAY);
567     ELSE
568       CP_EMPLOYED := '0';
569       CP_EMPLOYMENT_YEAR := NULL;
570       CP_EMPLOYMENT_MONTH := NULL;
571       CP_EMPLOYMENT_DAY := NULL;
572     END IF;
573     CP_ORIGINAL_DESCRIPTION := RTRIM(RPAD(CP_ORIGINAL_DESCRIPTION
574                                          ,300));
575     CP_DESCRIPTION := RTRIM(RPAD(SUBSTR(CP_ORIGINAL_DESCRIPTION
576                                        ,1
577                                        ,100)
578                                 ,200));
579     IF CP_SUBMISSION_REQUIRED_FLAG = 'Y' THEN
580       CP_COUNT := 1;
581       CP_TAXABLE_INCOME_SUM := CP_TAXABLE_INCOME;
582       CP_ITAX_SUM := CP_WITHHOLDING_ITAX;
583     ELSE
584       CP_COUNT := NULL;
585       CP_TAXABLE_INCOME_SUM := NULL;
586       CP_ITAX_SUM := NULL;
587     END IF;
588     RETURN NULL;
589   END CF_ASSACTFORMULULA;
590 
591   PROCEDURE TRACE(P_TEXT IN VARCHAR2) IS
592   BEGIN
593     HR_UTILITY.TRACE_ON('F'
594                        ,'TTAGAWA');
595     HR_UTILITY.TRACE(P_TEXT);
596     HR_UTILITY.TRACE_OFF;
597   END TRACE;
598 
599   FUNCTION CF_ITAX_ORGFORMULA(CS_COUNT IN NUMBER
600                              ,ITAX_ORGANIZATION_ID IN NUMBER) RETURN NUMBER IS
601   BEGIN
602     IF CS_COUNT > 0 THEN
603       CP_ITAX_ORG_NUMBER := CP_ITAX_ORG_NUMBER + 1;
604     END IF;
605     SELECT
606       RTRIM(RPAD(DECODE(P_KANJI_FLAG
607                        ,'Y'
608                        ,HR_JP_STANDARD_PKG.TO_ZENKAKU(HOI.ORG_INFORMATION6 || HOI.ORG_INFORMATION7 || HOI.ORG_INFORMATION8)
609                        ,HR_JP_STANDARD_PKG.UPPER_KANA(HOI.ORG_INFORMATION9 || HOI.ORG_INFORMATION10 || HOI.ORG_INFORMATION11))
610                 ,120)),
611       RTRIM(RPAD(DECODE(P_KANJI_FLAG
612                        ,'Y'
613                        ,HR_JP_STANDARD_PKG.TO_ZENKAKU(HOI.ORG_INFORMATION1)
614                        ,HR_JP_STANDARD_PKG.UPPER_KANA(HOI.ORG_INFORMATION2))
615                 ,60)),
616       RTRIM(RPAD(TRANSLATE(HR_JP_STANDARD_PKG.TO_HANKAKU(HOI.ORG_INFORMATION12)
617                           ,',"'
618                           ,'  ')
619                 ,15))
620     INTO CP_EMPLOYER_ADDRESS,CP_EMPLOYER_NAME,CP_EMPLOYER_TELEPHONE_NUMBER
621     FROM
622       HR_ORGANIZATION_INFORMATION HOI,
623       HR_ALL_ORGANIZATION_UNITS HOU
624     WHERE HOU.ORGANIZATION_ID = ITAX_ORGANIZATION_ID
625       AND hoi.organization_id (+) = HOU.ORGANIZATION_ID
626       AND hoi.org_information_context (+) = 'JP_TAX_SWOT_INFO';
627     RETURN NULL;
628   END CF_ITAX_ORGFORMULA;
629 
630   FUNCTION CP_EMPLOYER_ADDRESS_P RETURN VARCHAR2 IS
631   BEGIN
632     RETURN CP_EMPLOYER_ADDRESS;
633   END CP_EMPLOYER_ADDRESS_P;
634 
635   FUNCTION CP_EMPLOYER_NAME_P RETURN VARCHAR2 IS
636   BEGIN
637     RETURN CP_EMPLOYER_NAME;
638   END CP_EMPLOYER_NAME_P;
639 
640   FUNCTION CP_EMPLOYER_TELEPHONE_NUMBER_P RETURN VARCHAR2 IS
641   BEGIN
642     RETURN CP_EMPLOYER_TELEPHONE_NUMBER;
643   END CP_EMPLOYER_TELEPHONE_NUMBER_P;
644 
645   FUNCTION CP_ITAX_ORG_NUMBER_P RETURN NUMBER IS
646   BEGIN
647     RETURN CP_ITAX_ORG_NUMBER;
648   END CP_ITAX_ORG_NUMBER_P;
649 
650   FUNCTION CP_TAXABLE_INCOME_P RETURN NUMBER IS
651   BEGIN
652     RETURN CP_TAXABLE_INCOME;
653   END CP_TAXABLE_INCOME_P;
654 
655   FUNCTION CP_NET_TAXABLE_INCOME_P RETURN NUMBER IS
656   BEGIN
657     RETURN CP_NET_TAXABLE_INCOME;
658   END CP_NET_TAXABLE_INCOME_P;
659 
660   FUNCTION CP_TOTAL_INCOME_EXEMPT_P RETURN NUMBER IS
661   BEGIN
662     RETURN CP_TOTAL_INCOME_EXEMPT;
663   END CP_TOTAL_INCOME_EXEMPT_P;
664 
665   FUNCTION CP_WITHHOLDING_ITAX_P RETURN NUMBER IS
666   BEGIN
667     RETURN CP_WITHHOLDING_ITAX;
668   END CP_WITHHOLDING_ITAX_P;
669 
670   FUNCTION CP_SPOUSE_SP_EXEMPT_P RETURN NUMBER IS
671   BEGIN
672     RETURN CP_SPOUSE_SP_EXEMPT;
673   END CP_SPOUSE_SP_EXEMPT_P;
674 
675   FUNCTION CP_SI_PREM_P RETURN NUMBER IS
676   BEGIN
677     RETURN CP_SI_PREM;
678   END CP_SI_PREM_P;
679 
680   FUNCTION CP_MUTUAL_AID_PREM_P RETURN NUMBER IS
681   BEGIN
682     RETURN CP_MUTUAL_AID_PREM;
683   END CP_MUTUAL_AID_PREM_P;
684 
685   FUNCTION CP_LI_PREM_EXEMPT_P RETURN NUMBER IS
686   BEGIN
687     RETURN CP_LI_PREM_EXEMPT;
688   END CP_LI_PREM_EXEMPT_P;
689 
690   FUNCTION CP_AI_PREM_EXEMPT_P RETURN NUMBER IS
691   BEGIN
692     RETURN CP_AI_PREM_EXEMPT;
693   END CP_AI_PREM_EXEMPT_P;
694 
695   FUNCTION CP_HOUSING_TAX_REDUCTION_P RETURN NUMBER IS
696   BEGIN
697     RETURN CP_HOUSING_TAX_REDUCTION;
698   END CP_HOUSING_TAX_REDUCTION_P;
699 
700   FUNCTION CP_PP_PREM_P RETURN NUMBER IS
701   BEGIN
702     RETURN CP_PP_PREM;
703   END CP_PP_PREM_P;
704 
705   FUNCTION CP_SPOUSE_NET_TAXABLE_INCOME_P RETURN NUMBER IS
706   BEGIN
707     RETURN CP_SPOUSE_NET_TAXABLE_INCOME;
708   END CP_SPOUSE_NET_TAXABLE_INCOME_P;
709 
710   FUNCTION CP_LONG_AI_PREM_P RETURN NUMBER IS
711   BEGIN
712     RETURN CP_LONG_AI_PREM;
713   END CP_LONG_AI_PREM_P;
714 
715   FUNCTION CP_DISASTER_TAX_REDUCTION_P RETURN NUMBER IS
716   BEGIN
717     RETURN CP_DISASTER_TAX_REDUCTION;
718   END CP_DISASTER_TAX_REDUCTION_P;
719 
720   FUNCTION CP_FOREIGN_ADDRESS_P RETURN VARCHAR2 IS
721   BEGIN
722     RETURN CP_FOREIGN_ADDRESS;
723   END CP_FOREIGN_ADDRESS_P;
724 
725   FUNCTION CP_DEP_SPOUSE_P RETURN VARCHAR2 IS
726   BEGIN
727     RETURN CP_DEP_SPOUSE;
728   END CP_DEP_SPOUSE_P;
729 
730   FUNCTION CP_AGED_SPOUSE_P RETURN VARCHAR2 IS
731   BEGIN
732     RETURN CP_AGED_SPOUSE;
733   END CP_AGED_SPOUSE_P;
734 
735   FUNCTION CP_NUM_SPECIFIEDS_KOU_P RETURN NUMBER IS
736   BEGIN
737     RETURN CP_NUM_SPECIFIEDS_KOU;
738   END CP_NUM_SPECIFIEDS_KOU_P;
739 
740   FUNCTION CP_NUM_SPECIFIEDS_OTSU_P RETURN NUMBER IS
741   BEGIN
742     RETURN CP_NUM_SPECIFIEDS_OTSU;
743   END CP_NUM_SPECIFIEDS_OTSU_P;
744 
745   FUNCTION CP_NUM_AGEDS_KOU_P RETURN NUMBER IS
746   BEGIN
747     RETURN CP_NUM_AGEDS_KOU;
748   END CP_NUM_AGEDS_KOU_P;
749 
750   FUNCTION CP_NUM_AGED_PARENTS_LT_P RETURN NUMBER IS
751   BEGIN
752     RETURN CP_NUM_AGED_PARENTS_LT;
753   END CP_NUM_AGED_PARENTS_LT_P;
754 
755   FUNCTION CP_NUM_AGEDS_OTSU_P RETURN NUMBER IS
756   BEGIN
757     RETURN CP_NUM_AGEDS_OTSU;
758   END CP_NUM_AGEDS_OTSU_P;
759 
760   FUNCTION CP_NUM_DEPS_KOU_P RETURN NUMBER IS
761   BEGIN
762     RETURN CP_NUM_DEPS_KOU;
763   END CP_NUM_DEPS_KOU_P;
764 
765   FUNCTION CP_NUM_DEPS_OTSU_P RETURN NUMBER IS
766   BEGIN
767     RETURN CP_NUM_DEPS_OTSU;
768   END CP_NUM_DEPS_OTSU_P;
769 
770   FUNCTION CP_NUM_SVR_DISABLEDS_P RETURN NUMBER IS
771   BEGIN
772     RETURN CP_NUM_SVR_DISABLEDS;
773   END CP_NUM_SVR_DISABLEDS_P;
774 
775   FUNCTION CP_NUM_SVR_DISABLEDS_LT_P RETURN NUMBER IS
776   BEGIN
777     RETURN CP_NUM_SVR_DISABLEDS_LT;
778   END CP_NUM_SVR_DISABLEDS_LT_P;
779 
780   FUNCTION CP_NUM_DISABLEDS_P RETURN NUMBER IS
781   BEGIN
782     RETURN CP_NUM_DISABLEDS;
783   END CP_NUM_DISABLEDS_P;
784 
785   FUNCTION CP_BIRTH_ERA_P RETURN VARCHAR2 IS
786   BEGIN
787     RETURN CP_BIRTH_ERA;
788   END CP_BIRTH_ERA_P;
789 
790   FUNCTION CP_BIRTH_YEAR_P RETURN NUMBER IS
791   BEGIN
792     RETURN CP_BIRTH_YEAR;
793   END CP_BIRTH_YEAR_P;
794 
795   FUNCTION CP_BIRTH_MONTH_P RETURN NUMBER IS
796   BEGIN
797     RETURN CP_BIRTH_MONTH;
798   END CP_BIRTH_MONTH_P;
799 
800   FUNCTION CP_BIRTH_DAY_P RETURN NUMBER IS
801   BEGIN
802     RETURN CP_BIRTH_DAY;
803   END CP_BIRTH_DAY_P;
804 
805   FUNCTION CP_HUSBAND_EXISTS_P RETURN VARCHAR2 IS
806   BEGIN
807     RETURN CP_HUSBAND_EXISTS;
808   END CP_HUSBAND_EXISTS_P;
809 
810   FUNCTION CP_MINOR_P RETURN VARCHAR2 IS
811   BEGIN
812     RETURN CP_MINOR;
813   END CP_MINOR_P;
814 
815   FUNCTION CP_OTSU_P RETURN VARCHAR2 IS
816   BEGIN
817     RETURN CP_OTSU;
818   END CP_OTSU_P;
819 
820   FUNCTION CP_SVR_DISABLED_P RETURN VARCHAR2 IS
821   BEGIN
822     RETURN CP_SVR_DISABLED;
823   END CP_SVR_DISABLED_P;
824 
825   FUNCTION CP_DISABLED_P RETURN VARCHAR2 IS
826   BEGIN
827     RETURN CP_DISABLED;
828   END CP_DISABLED_P;
829 
830   FUNCTION CP_AGED_P RETURN VARCHAR2 IS
831   BEGIN
832     RETURN CP_AGED;
833   END CP_AGED_P;
834 
835   FUNCTION CP_WIDOW_P RETURN VARCHAR2 IS
836   BEGIN
837     RETURN CP_WIDOW;
838   END CP_WIDOW_P;
839 
840   FUNCTION CP_WIDOWER_P RETURN VARCHAR2 IS
841   BEGIN
842     RETURN CP_WIDOWER;
843   END CP_WIDOWER_P;
844 
845   FUNCTION CP_WORKING_STUDENT_P RETURN VARCHAR2 IS
846   BEGIN
847     RETURN CP_WORKING_STUDENT;
848   END CP_WORKING_STUDENT_P;
849 
850   FUNCTION CP_DECEASED_TERMINATION_P RETURN VARCHAR2 IS
851   BEGIN
852     RETURN CP_DECEASED_TERMINATION;
853   END CP_DECEASED_TERMINATION_P;
854 
855   FUNCTION CP_DISASTERED_P RETURN VARCHAR2 IS
856   BEGIN
857     RETURN CP_DISASTERED;
858   END CP_DISASTERED_P;
859 
860   FUNCTION CP_FOREIGNER_P RETURN VARCHAR2 IS
861   BEGIN
862     RETURN CP_FOREIGNER;
863   END CP_FOREIGNER_P;
864 
865   FUNCTION CP_EMPLOYED_P RETURN VARCHAR2 IS
866   BEGIN
867     RETURN CP_EMPLOYED;
868   END CP_EMPLOYED_P;
869 
870   FUNCTION CP_EMPLOYMENT_YEAR_P RETURN NUMBER IS
871   BEGIN
872     RETURN CP_EMPLOYMENT_YEAR;
873   END CP_EMPLOYMENT_YEAR_P;
874 
875   FUNCTION CP_EMPLOYMENT_MONTH_P RETURN NUMBER IS
876   BEGIN
877     RETURN CP_EMPLOYMENT_MONTH;
878   END CP_EMPLOYMENT_MONTH_P;
879 
880   FUNCTION CP_EMPLOYMENT_DAY_P RETURN NUMBER IS
881   BEGIN
882     RETURN CP_EMPLOYMENT_DAY;
883   END CP_EMPLOYMENT_DAY_P;
884 
885   FUNCTION CP_HOUSING_RESIDENCE_YEAR_P RETURN NUMBER IS
886   BEGIN
887     RETURN CP_HOUSING_RESIDENCE_YEAR;
888   END CP_HOUSING_RESIDENCE_YEAR_P;
889 
890   FUNCTION CP_HOUSING_RESIDENCE_MONTH_P RETURN NUMBER IS
891   BEGIN
892     RETURN CP_HOUSING_RESIDENCE_MONTH;
893   END CP_HOUSING_RESIDENCE_MONTH_P;
894 
895   FUNCTION CP_HOUSING_RESIDENCE_DAY_P RETURN NUMBER IS
896   BEGIN
897     RETURN CP_HOUSING_RESIDENCE_DAY;
898   END CP_HOUSING_RESIDENCE_DAY_P;
899 
900   FUNCTION CP_PREV_JOB_TERMINATION_YEAR_P RETURN NUMBER IS
901   BEGIN
902     RETURN CP_PREV_JOB_TERMINATION_YEAR;
903   END CP_PREV_JOB_TERMINATION_YEAR_P;
904 
905   FUNCTION CP_PREV_JOB_TERMINATION_MON_p RETURN NUMBER IS
906   BEGIN
907     RETURN CP_PREV_JOB_TERMINATION_MONTH;
908   END CP_PREV_JOB_TERMINATION_MON_p;
909 
910   FUNCTION CP_PREV_JOB_TERMINATION_DAY_P RETURN NUMBER IS
911   BEGIN
912     RETURN CP_PREV_JOB_TERMINATION_DAY;
913   END CP_PREV_JOB_TERMINATION_DAY_P;
914 
915   FUNCTION CP_PREV_JOB_EMPLOYER_NAME_P RETURN VARCHAR2 IS
916   BEGIN
917     RETURN CP_PREV_JOB_EMPLOYER_NAME;
918   END CP_PREV_JOB_EMPLOYER_NAME_P;
919 
920   FUNCTION CP_PREV_JOB_FOREIGN_ADDRESS_P RETURN VARCHAR2 IS
921   BEGIN
922     RETURN CP_PREV_JOB_FOREIGN_ADDRESS;
923   END CP_PREV_JOB_FOREIGN_ADDRESS_P;
924 
925   FUNCTION CP_PREV_JOB_EMPLOYER_ADDRESS_P RETURN VARCHAR2 IS
926   BEGIN
927     RETURN CP_PREV_JOB_EMPLOYER_ADDRESS;
928   END CP_PREV_JOB_EMPLOYER_ADDRESS_P;
929 
930   FUNCTION CP_PREV_JOB_TAXABLE_INCOME_P RETURN NUMBER IS
931   BEGIN
932     RETURN CP_PREV_JOB_TAXABLE_INCOME;
933   END CP_PREV_JOB_TAXABLE_INCOME_P;
934 
935   FUNCTION CP_PREV_JOB_ITAX_P RETURN NUMBER IS
936   BEGIN
937     RETURN CP_PREV_JOB_ITAX;
938   END CP_PREV_JOB_ITAX_P;
939 
940   FUNCTION CP_PREV_JOB_SI_PREM_P RETURN NUMBER IS
941   BEGIN
942     RETURN CP_PREV_JOB_SI_PREM;
943   END CP_PREV_JOB_SI_PREM_P;
944 
945   FUNCTION CP_ORIGINAL_DESCRIPTION_P RETURN VARCHAR2 IS
946   BEGIN
947     RETURN CP_ORIGINAL_DESCRIPTION;
948   END CP_ORIGINAL_DESCRIPTION_P;
949 
950   FUNCTION CP_DESCRIPTION_P RETURN VARCHAR2 IS
951   BEGIN
952     RETURN CP_DESCRIPTION;
953   END CP_DESCRIPTION_P;
954 
955   FUNCTION CP_SUBMISSION_REQUIRED_FLAG_P RETURN VARCHAR2 IS
956   BEGIN
957     RETURN CP_SUBMISSION_REQUIRED_FLAG;
958   END CP_SUBMISSION_REQUIRED_FLAG_P;
959 
960   FUNCTION CP_COUNT_P RETURN NUMBER IS
961   BEGIN
962     RETURN CP_COUNT;
963   END CP_COUNT_P;
964 
965   FUNCTION CP_TAXABLE_INCOME_SUM_P RETURN NUMBER IS
966   BEGIN
967     RETURN CP_TAXABLE_INCOME_SUM;
968   END CP_TAXABLE_INCOME_SUM_P;
969 
970   FUNCTION CP_ITAX_SUM_P RETURN NUMBER IS
971   BEGIN
972     RETURN CP_ITAX_SUM;
973   END CP_ITAX_SUM_P;
974 
975   FUNCTION CP_EARNINGS_TYPE_P RETURN VARCHAR2 IS
976   BEGIN
977     RETURN CP_EARNINGS_TYPE;
978   END CP_EARNINGS_TYPE_P;
979 
980   FUNCTION CP_MAGNETIC_FILE_NAME_P RETURN VARCHAR2 IS
981   BEGIN
982     RETURN CP_MAGNETIC_FILE_NAME;
983   END CP_MAGNETIC_FILE_NAME_P;
984 
985   FUNCTION CP_REPORT_TITLE_P RETURN VARCHAR2 IS
986   BEGIN
987     RETURN CP_REPORT_TITLE;
988   END CP_REPORT_TITLE_P;
989 
990   FUNCTION CP_KANJI_FLAG_P RETURN VARCHAR2 IS
991   BEGIN
992     RETURN CP_KANJI_FLAG;
993   END CP_KANJI_FLAG_P;
994 
995   FUNCTION CP_HQ_REFERENCE_NUMBER1_P RETURN VARCHAR2 IS
996   BEGIN
997     RETURN CP_HQ_REFERENCE_NUMBER1;
998   END CP_HQ_REFERENCE_NUMBER1_P;
999 
1000   FUNCTION CP_HQ_REFERENCE_NUMBER2_P RETURN VARCHAR2 IS
1001   BEGIN
1002     RETURN CP_HQ_REFERENCE_NUMBER2;
1003   END CP_HQ_REFERENCE_NUMBER2_P;
1004 
1005   FUNCTION CP_HQ_EMPLOYER_ADDRESS_P RETURN VARCHAR2 IS
1006   BEGIN
1007     RETURN CP_HQ_EMPLOYER_ADDRESS;
1008   END CP_HQ_EMPLOYER_ADDRESS_P;
1009 
1010   FUNCTION CP_HQ_EMPLOYER_NAME_P RETURN VARCHAR2 IS
1011   BEGIN
1012     RETURN CP_HQ_EMPLOYER_NAME;
1013   END CP_HQ_EMPLOYER_NAME_P;
1014 
1015   FUNCTION CP_BG_DPNT_REF_TYPE_P RETURN VARCHAR2 IS
1016   BEGIN
1017     RETURN CP_BG_DPNT_REF_TYPE;
1018   END CP_BG_DPNT_REF_TYPE_P;
1019 
1020   FUNCTION CP_YEAR_P RETURN NUMBER IS
1021   BEGIN
1022     RETURN CP_YEAR;
1023   END CP_YEAR_P;
1024 
1025  /* PROCEDURE OPEN_MAGFILE IS
1026     C_DIR_SEPARATOR CONSTANT VARCHAR2(255) DEFAULT '/';
1027     L_APPLCSF VARCHAR2(255);
1028     L_PAY_TOP VARCHAR2(255);
1029     L_APPLOUT VARCHAR2(255);
1030   BEGIN
1031 
1032     TOOL_ENV.GETVAR('APPLCSF'
1033                    ,L_APPLCSF);
1034     TOOL_ENV.GETVAR('PAY_TOP'
1035                    ,L_PAY_TOP);
1036     TOOL_ENV.GETVAR('APPLOUT'
1037                    ,L_APPLOUT);
1038     IF P_MAGNETIC_FILE_NAME IS NULL THEN
1039       G_MAGFILE_NAME := 'i' || LPAD(TO_CHAR(P_CONC_REQUEST_ID - TRUNC(P_CONC_REQUEST_ID
1040                                           ,-7))
1041                             ,7
1042                             ,'0') || '.mf';
1043     ELSE
1044       G_MAGFILE_NAME := P_MAGNETIC_FILE_NAME;
1045     END IF;
1046     IF P_CONC_REQUEST_ID = 0 THEN
1047       G_MAGFILE_DIR := NULL;
1048       G_MAGFILE := G_MAGFILE_NAME;
1049     ELSE
1050       G_MAGFILE_DIR := NVL(L_APPLCSF
1051                           ,L_PAY_TOP) || C_DIR_SEPARATOR || L_APPLOUT;
1052       G_MAGFILE := G_MAGFILE_DIR || C_DIR_SEPARATOR || G_MAGFILE_NAME;
1053     END IF;
1054     G_FILE := TEXT_IO.FOPEN(G_MAGFILE
1055                            ,'w');
1056 
1057   END OPEN_MAGFILE;*/
1058 
1059   /* PROCEDURE CLOSE_MAGFILE IS
1060   BEGIN
1061  IF TEXT_IO.IS_OPEN(G_FILE) THEN
1062       TEXT_IO.FCLOSE(G_FILE);
1063     END IF;
1064   END CLOSE_MAGFILE;*/
1065 
1066  /* PROCEDURE PUT(P_TEXT IN VARCHAR2) IS
1067     L_TEXT VARCHAR2(32767);
1068   BEGIN
1069     IF P_CHARACTER_SET = 'JA16JIS8' THEN
1070       TEXT_IO.PUT(G_FILE
1071                  ,HR_JP_STANDARD_PKG.TO_JIS8(P_TEXT));
1072     ELSE
1073       TEXT_IO.PUT(G_FILE
1074                  ,PAY_JP_REPORT_PKG.CONVERT2(P_TEXT
1075                                            ,P_CHARACTER_SET));
1076     END IF;
1077   END PUT;*/
1078 
1079   /*PROCEDURE PUT(P_TEXT IN VARCHAR2
1080                ,P_LENGTH IN NUMBER
1081                ,P_PADDING_CHARACTER IN VARCHAR2 := G_SPACE) IS
1082   BEGIN
1083     PUT(RPAD(NVL(P_TEXT
1084                 ,P_PADDING_CHARACTER)
1085             ,P_LENGTH
1086             ,P_PADDING_CHARACTER));
1087   END PUT;*/
1088 
1089   /*PROCEDURE PUT(P_NUMBER IN NUMBER
1090                ,P_LENGTH IN NUMBER) IS
1091   BEGIN
1092  PUT(LPAD(NVL(P_NUMBER
1093                 ,0)
1094             ,P_LENGTH
1095             ,'0'));
1096   END PUT;*/
1097 
1098   /*PROCEDURE CSV(P_TEXT IN VARCHAR2
1099                ,P_EOR IN BOOLEAN := FALSE) IS
1100     L_SEPARATOR VARCHAR2(1);
1101   BEGIN
1102     IF P_EOR THEN
1103       L_SEPARATOR := CHR(10);
1104     ELSE
1105       L_SEPARATOR := ',';
1106     END IF;
1107     IF P_TEXT IS NOT NULL THEN
1108       PUT(P_TEXT || L_SEPARATOR);
1109     ELSE
1110       PUT(L_SEPARATOR);
1111     END IF;
1112   END CSV;*/
1113 
1114  /* PROCEDURE CSV(P_NUMBER IN NUMBER
1115                ,P_EOR IN BOOLEAN := FALSE) IS
1116   BEGIN
1117     CSV(TO_CHAR(P_NUMBER)
1118        ,P_EOR);
1119   END CSV;
1120 
1121   PROCEDURE CSV(P_NUMBER IN NUMBER
1122                ,P_LENGTH IN NUMBER
1123                ,P_EOR IN BOOLEAN := FALSE) IS
1124   BEGIN
1125     CSV(LPAD(TO_CHAR(P_NUMBER)
1126             ,P_LENGTH
1127             ,'0')
1128        ,P_EOR);
1129   END CSV;*/
1130 
1131 BEGIN
1132   IF P_KANJI_FLAG = 'Y' THEN
1133     G_SPACE := HR_JP_STANDARD_PKG.TO_ZENKAKU(G_SPACE);
1134   END IF;
1135 END PAY_PAYJPWTM_XMLP_PKG ;