DBA Data[Home] [Help]

PACKAGE BODY: APPS.PAY_JP_ITWB_ARCHIVE_PKG

Source


1 package body pay_jp_itwb_archive_pkg as
2 /* $Header: pyjpiwbc.pkb 120.2.12020000.2 2013/01/24 14:02:15 dduvvuri ship $ */
3 --
4 c_package  constant varchar2(30) := 'pay_jp_itwb_archive_pkg.';
5 g_debug    boolean := hr_utility.debug_enabled;
6 --
7 c_arch_yes varchar2(1) := '*';
8 c_ass_yes varchar2(1) := 'Y';
9 --
10 g_wng_tbl_cnt number := 0;
11 g_wng_assignment_action_id number;
12 --
13 g_proc_type varchar2(30);
14 g_proc_type_assact_id number;
15 --
16 c_sal_ele_set      varchar2(80) := 'SAL';
17 c_bon_ele_set      varchar2(80) := 'BON';
18 c_spb_ele_set      varchar2(80) := 'SPB';
19 c_yea_ele_set      varchar2(80) := 'YEA';
20 c_rey_ele_set      varchar2(80) := 'REY';
21 c_sal_cust_ele_set varchar2(80);
22 c_bon_cust_ele_set varchar2(80);
23 c_spb_cust_ele_set varchar2(80);
24 c_yea_cust_ele_set varchar2(80);
25 c_rey_cust_ele_set varchar2(80);
26 --
27 c_yea_itx_elm constant varchar2(80) := 'YEA_ITX';
28 c_rey_itx_elm constant varchar2(80) := 'REY_ITX';
29 --
30 c_com_itx_info_elm constant varchar2(80) := 'COM_ITX_INFO';
31 c_itx_type_iv      constant varchar2(80) := 'ITX_TYPE';
32 c_itx_org_iv       constant varchar2(80) := 'WITHHOLD_AGENT';
33 c_nres_flag_iv     constant varchar2(80) := 'NRES_FLAG';
34 --
35 c_com_si_info_elm constant varchar2(80) := 'COM_SI_INFO';
36 c_hi_org_iv       constant varchar2(80) := 'HI_LOCATION';
37 c_hi_number_iv    constant varchar2(80) := 'HI_CARD_NUM';
38 c_wp_org_iv       constant varchar2(80) := 'WP_LOCATION';
39 c_wp_number_iv    constant varchar2(80) := 'BASIC_PENSION_NUM';
40 c_wpf_org_iv      constant varchar2(80) := 'WPF_LOCATION';
41 c_wpf_number_iv   constant varchar2(80) := 'WPF_MEMBERS_NUM';
42 --
43 c_com_li_info_elm constant varchar2(80) := 'COM_LI_INFO';
44 c_ei_org_iv       constant varchar2(80) := 'EI_LOCATION';
45 c_ei_number_iv    constant varchar2(80) := 'EI_NUM';
46 --
47 c_sal_itx_elm               constant varchar2(80) := 'SAL_ITX';
48 c_bon_itx_elm               constant varchar2(80) := 'BON_ITX';
49 c_spb_itx_elm               constant varchar2(80) := 'SPB_ITX';
50 c_yea_dep_exm_type_rslt_elm constant varchar2(80) := 'YEA_DEP_EXM_TYPE_RSLT';
51 --c_itx_type_iv             constant varchar2(80) := 'ITX_TYPE';
52 c_disable_type_iv           constant varchar2(80) := 'DISABLE_TYPE';
53 c_widow_type_iv             constant varchar2(80) := 'WIDOW_TYPE';
54 c_working_student_type_iv   constant varchar2(80) := 'WORKING_STUDENT_TYPE';
55 c_spouse_type_iv            constant varchar2(80) := 'SPOUSE_TYPE';
56 c_spouse_disable_type_iv    constant varchar2(80) := 'SPOUSE_DISABLE_TYPE';
57 c_num_of_dep_iv             constant varchar2(80) := 'NUM_OF_DEP';
58 c_num_of_gen_disabled_iv    constant varchar2(80) := 'NUM_OF_GEN_DISABLED';
59 c_num_of_sev_disabled_iv    constant varchar2(80) := 'NUM_OF_SEV_DISABLED';
60 c_num_of_sev_disabled_lt_iv constant varchar2(80) := 'NUM_OF_SEV_DISABLED_LT';
61 c_itx_rate_iv               constant varchar2(80) := 'ITX_RATE';
62 --
63 c_sal_ci_prem_ee_elm       constant varchar2(80) := 'SAL_CI_PREM_EE';
64 c_pay_value_iv             constant varchar2(80) := 'Pay Value';
65 c_sal_ci_prem_ee_trm_elm   constant varchar2(80) := 'SAL_CI_PREM_EE_TRM';
66 c_sal_ci_prem_ee_nres_elm  constant varchar2(80) := 'SAL_CI_PREM_EE_NRES';
67 c_sal_ci_prem_ee_n_trm_elm constant varchar2(80) := 'SAL_CI_PREM_EE_NRES_TRM';
68 --
69 c_bon_ci_prem_ee_elm          constant varchar2(80) := 'BON_CI_PREM_EE';
70 --c_pay_value_iv              constant varchar2(80) := 'Pay Value';
71 c_bon_ci_prem_ee_nres_elm     constant varchar2(80) := 'BON_CI_PREM_EE_NRES';
72 --
73 c_yea_amt_aft_emp_dct_rslt_elm      constant varchar2(80) := 'YEA_AMT_AFTER_EMP_INCOME_DCT_RSLT';
74 --c_pay_value_iv                    constant varchar2(80) := 'Pay Value';
75 c_inc_flag_iv                       constant varchar2(80) := 'INCLUDE_FLAG';
76 --c_itx_type_iv                     constant varchar2(80) := 'ITX_TYPE';
77 c_pay_amt_iv                        constant varchar2(80) := 'PAY_AMT';
78 --c_prev_emp_income_iv              constant varchar2(80) := 'PREV_EMP_INCOME';
79 c_prev_emp_si_prem_iv               constant varchar2(80) := 'PREV_EMP_SI_PREM';
80 --c_prev_small_comp_mut_aid_prem_iv constant varchar2(80) := 'PREV_EMP_SMALL_COMPANY_MUTUAL_AID_PREM';
81 c_prev_emp_itx_iv                   constant varchar2(80) := 'PREV_EMP_ITX';
82 --c_grace_itx_iv                    constant varchar2(80) := 'GRACE_ITX';
83 --c_adj_emp_income_iv               constant varchar2(80) := 'ADJ_EMP_INCOME';
84 c_adj_si_prem_iv                    constant varchar2(80) := 'ADJ_SI_PREM';
85 --c_adj_small_comp_mut_aid_prem_iv  constant varchar2(80) := 'ADJ_SMALL_COMPANY_MUTUAL_AID_PREM';
86 c_adj_itx_iv                        constant varchar2(80) := 'ADJ_ITX';
87 --
88 c_yea_ins_sp_exm_rslt_elm    constant varchar2(80) := 'YEA_INS_PREM_SPOUSE_SP_EXM_RSLT';
89 c_dec_si_prem_iv             constant varchar2(80) := 'DECLARE_SI_PREM';
90 c_small_comp_mut_aid_prem_iv constant varchar2(80) := 'SMALL_COMPANY_MUTUAL_AID_PREM';
91 c_dec_sc_mut_aid_prem_iv     constant varchar2(80) := 'DECLARE_SMALL_COMPANY_MUTUAL_AID_PREM';
92 c_life_ins_prem_exm_iv       constant varchar2(80) := 'LIFE_INS_PREM_EXM';
93 --c_gen_life_ins_prem_iv     constant varchar2(80) := 'GEN_LIFE_INS_PREM';
94 c_individual_pension_prem_iv constant varchar2(80) := 'INDIVIDUAL_PENSION_PREM';
95 --c_nonlife_ins_prem_exm_iv  constant varchar2(80) := 'NONLIFE_INS_PREM_EXM';
96 c_lt_nonlife_ins_prem_iv     constant varchar2(80) := 'LONG_TERM_NONLIFE_INS_PREM';
97 c_earthquake_ins_prem_exm_iv constant varchar2(80) := 'NONLIFE_INS_PREM_EXM';
98 c_spouse_sp_exm_iv           constant varchar2(80) := 'SPOUSE_SP_EXM';
99 c_spouse_income_iv           constant varchar2(80) := 'SPOUSE_INCOME';
100 --
101 c_yea_ins_sp_exm_info_elm  constant varchar2(80) := 'YEA_INS_PREM_SPOUSE_SP_EXM_INFO';
102 c_national_pension_prem_iv constant varchar2(80) := 'NATIONAL_PENSION_PREM';
103 --
104 c_yea_dep_exm_elm           constant varchar2(80) := 'YEA_DEP_EXM_PROC';
105 c_num_of_specific_dep_iv    constant varchar2(80) := 'NUM_OF_SPECIFIC_DEP';
106 c_num_of_elder_parent_lt_iv constant varchar2(80) := 'NUM_OF_ELDER_PARENT_LT';
107 c_num_of_elder_dep_iv       constant varchar2(80) := 'NUM_OF_ELDER_DEP';
108 --
109 c_yea_dep_exm_rslt_elm   constant varchar2(80) := 'YEA_DEP_EXM_RSLT';
110 c_basic_exm_iv           constant varchar2(80) := 'BASIC_EXM';
111 c_gen_spouse_exm_iv      constant varchar2(80) := 'GEN_SPOUSE_EXM';
112 c_elder_spouse_exm_iv    constant varchar2(80) := 'ELDER_SPOUSE_EXM';
113 c_gen_dep_exm_iv         constant varchar2(80) := 'GEN_DEP_EXM';
114 c_specific_dep_exm_iv    constant varchar2(80) := 'SPECIFIC_DEP_EXM';
115 c_junior_dep_exm_iv      constant varchar2(80) := 'JUNIOR_DEP_EXM';
116 c_elder_dep_exm_iv       constant varchar2(80) := 'ELDER_DEP_EXM';
117 c_elder_parent_lt_exm_iv constant varchar2(80) := 'ELDER_PARENT_LT_EXM';
118 c_gen_disabled_exm_iv    constant varchar2(80) := 'GEN_DISABLED_EXM';
119 c_sev_disabled_exm_iv    constant varchar2(80) := 'SEV_DISABLED_EXM';
120 c_sev_disabled_lt_exm_iv constant varchar2(80) := 'SEV_DISABLED_LT_EXM';
121 c_elder_exm_iv           constant varchar2(80) := 'ELDER_EXM';
122 c_widow_exm_iv           constant varchar2(80) := 'WIDOW_EXM';
123 c_sp_widow_exm_iv        constant varchar2(80) := 'SP_WIDOW_EXM';
124 c_working_student_exm_iv constant varchar2(80) := 'WORKING_STUDENT_EXM';
125 --
126 c_yea_net_annual_tax_elm     constant varchar2(80) := 'YEA_NET_ANNUAL_TAX';
127 --c_pay_value_iv               constant varchar2(80) := 'Pay Value';
128 c_housing_loan_tax_credit_iv constant varchar2(80) := 'HOUSING_LOAN_TAX_CREDIT';
129 c_act_housing_loan_iv        constant varchar2(80) := 'ACTUAL_HOUSING_LOAN_TAX_CREDIT';
130 c_yea_annual_tax_iv          constant varchar2(80) := 'YEA_ANNUAL_TAX';
131 c_yea_income_tax_iv          constant varchar2(80) := 'YEA_INCOME_TAX';
132 --
133 c_com_nres_info_elm     constant varchar2(80) := 'COM_NRES_INFO';
134 c_nres_start_date_iv    constant varchar2(80) := 'NRES_START_DATE';
135 c_projected_res_date_iv constant varchar2(80) := 'PROJECTED_RES_DATE';
136 --
137 c_com_trm_info_elm   constant varchar2(80) := 'COM_TRM_INFO';
138 c_lump_sum_method_iv constant varchar2(80) := 'LUMP_SUM_WITHHOLD_METHOD';
139 --
140 c_asg_run_dim constant varchar2(80) := '_ASG_RUN';
141 c_asg_ytd_dim constant varchar2(80) := '_ASG_YTD                      EFFECTIVE_DATE 01-01 RESET 01';
142 --
143 c_b_com_ltx_lump_sum_bal      constant varchar2(80) := 'B_COM_LTX_LUMP_SUM_WITHHOLD';
144 --
145 c_b_sal_txbl_ern_mon_bal      constant varchar2(80) := 'B_SAL_TXBL_ERN_MONEY';
146 c_b_sal_txbl_ern_k_bal        constant varchar2(80) := 'B_SAL_TXBL_ERN_KIND';
147 c_b_sal_txbl_ern_mon_nres_bal constant varchar2(80) := 'B_SAL_TXBL_ERN_MONEY_NRES';
148 c_b_sal_txbl_ern_k_nres_bal   constant varchar2(80) := 'B_SAL_TXBL_ERN_KIND_NRES';
149 c_b_sal_ern_bal               constant varchar2(80) := 'B_SAL_ERN';
150 c_b_sal_hi_prem_bal           constant varchar2(80) := 'B_SAL_HI_PREM';
151 c_b_sal_wp_prem_bal           constant varchar2(80) := 'B_SAL_WP_PREM';
152 c_b_sal_wpf_prem_bal          constant varchar2(80) := 'B_SAL_WPF_PREM';
153 c_b_sal_ei_prem_bal           constant varchar2(80) := 'B_SAL_EI_PREM';
154 c_b_sal_si_prem_bal           constant varchar2(80) := 'B_SAL_SI_PREM';
155 c_b_sal_amt_aft_si_prem_bal   constant varchar2(80) := 'B_SAL_AMT_AFTER_SI_PREM_DCT';
156 c_b_sal_itx_bal               constant varchar2(80) := 'B_SAL_ITX';
157 c_b_sal_ltx_bal               constant varchar2(80) := 'B_SAL_LTX';
158 c_b_sal_dct_bal               constant varchar2(80) := 'B_SAL_DCT';
159 c_b_sal_net_pay_bal           constant varchar2(80) := 'B_SAL_NET_PAY';
160 --
161 c_b_bon_txbl_ern_mon_bal      constant varchar2(80) := 'B_BON_TXBL_ERN_MONEY';
162 c_b_bon_txbl_ern_k_bal        constant varchar2(80) := 'B_BON_TXBL_ERN_KIND';
163 c_b_bon_txbl_ern_mon_nres_bal constant varchar2(80) := 'B_BON_TXBL_ERN_MONEY_NRES';
164 c_b_bon_txbl_ern_k_nres_bal   constant varchar2(80) := 'B_BON_TXBL_ERN_KIND_NRES';
165 c_b_bon_ern_bal               constant varchar2(80) := 'B_BON_ERN';
166 c_b_bon_hi_prem_bal           constant varchar2(80) := 'B_BON_HI_PREM';
167 --c_b_bon_hi_prem_bal_o         constant varchar2(80) := 'B_BON_HI_PREM';
168 c_b_bon_wp_prem_bal           constant varchar2(80) := 'B_BON_WP_PREM';
169 --c_b_bon_wp_prem_bal_o         constant varchar2(80) := 'B_BON_WP_PREM';
170 c_b_bon_wpf_prem_bal          constant varchar2(80) := 'B_BON_WPF_PREM';
171 c_b_bon_ei_prem_bal           constant varchar2(80) := 'B_BON_EI_PREM';
172 c_b_bon_si_prem_bal           constant varchar2(80) := 'B_BON_SI_PREM';
173 c_b_bon_amt_aft_si_prem_bal   constant varchar2(80) := 'B_BON_AMT_AFTER_SI_PREM_DCT';
174 c_b_bon_itx_bal               constant varchar2(80) := 'B_BON_ITX';
175 c_b_bon_dct_bal               constant varchar2(80) := 'B_BON_DCT';
176 c_b_bon_net_pay_bal           constant varchar2(80) := 'B_BON_NET_PAY';
177 --
178 c_b_spb_txbl_ern_mon_bal      constant varchar2(80) := 'B_SPB_TXBL_ERN_MONEY';
179 c_b_spb_txbl_ern_k_bal        constant varchar2(80) := 'B_SPB_TXBL_ERN_KIND';
180 c_b_spb_txbl_ern_mon_nres_bal constant varchar2(80) := 'B_SPB_TXBL_ERN_MONEY_NRES';
181 c_b_spb_txbl_ern_k_nres_bal   constant varchar2(80) := 'B_SPB_TXBL_ERN_KIND_NRES';
182 c_b_spb_ern_bal               constant varchar2(80) := 'B_SPB_ERN';
183 c_b_spb_ei_prem_bal           constant varchar2(80) := 'B_SPB_EI_PREM';
184 c_b_spb_amt_aft_si_prem_bal   constant varchar2(80) := 'B_SPB_AMT_AFTER_SI_PREM_DCT';
185 c_b_spb_itx_bal               constant varchar2(80) := 'B_SPB_ITX';
186 c_b_spb_dct_bal               constant varchar2(80) := 'B_SPB_DCT';
187 c_b_spb_net_pay_bal           constant varchar2(80) := 'B_SPB_NET_PAY';
188 --
189 c_b_yea_amt_aft_emp_dct_bal constant varchar2(80) := 'B_YEA_AMT_AFTER_EMP_INCOME_DCT';
190 c_b_yea_sal_dct_si_prem_bal constant varchar2(80) := 'B_YEA_SAL_DCT_SI_PREM';
191 c_b_yea_income_exm_bal      constant varchar2(80) := 'B_YEA_INCOME_EXM';
192 c_b_yea_net_txbl_income_bal constant varchar2(80) := 'B_YEA_NET_TXBL_INCOME';
193 c_b_yea_annual_tax_bal      constant varchar2(80) := 'B_YEA_ANNUAL_TAX';
194 c_b_yea_withhold_itx_bal    constant varchar2(80) := 'B_YEA_WITHHOLD_ITX';
195 c_b_yea_tax_pay_bal         constant varchar2(80) := 'B_YEA_TAX_PAY';
196 --
197 c_fuzzy_ele_class_sal constant varchar2(80) := 'SAL';
198 c_fuzzy_ele_class_bon constant varchar2(80) := 'BON';
199 c_fuzzy_ele_class_spb constant varchar2(80) := 'SPB';
200 c_fuzzy_ele_class_yea constant varchar2(80) := 'YEA';
201 --
202 c_bon_itx_info_rate constant varchar2(2000) := fffunc.gfm('PAY','PAY_JP_BON_ITX_INFO_RATE');
203 c_persentage constant varchar2(30) := ltrim(substrb(c_bon_itx_info_rate,instrb(c_bon_itx_info_rate,'RATE')+4));
204 --
205 c_sal_ele_set_id constant number := hr_jp_id_pkg.element_set_id(c_sal_ele_set,null,'JP');
206 c_bon_ele_set_id constant number := hr_jp_id_pkg.element_set_id(c_bon_ele_set,null,'JP');
207 c_spb_ele_set_id constant number := hr_jp_id_pkg.element_set_id(c_spb_ele_set,null,'JP');
208 c_yea_ele_set_id constant number := hr_jp_id_pkg.element_set_id(c_yea_ele_set,null,'JP');
209 c_rey_ele_set_id constant number := hr_jp_id_pkg.element_set_id(c_rey_ele_set,null,'JP');
210 c_sal_cust_ele_set_id number;
211 c_bon_cust_ele_set_id number;
212 c_spb_cust_ele_set_id number;
213 c_yea_cust_ele_set_id number;
214 c_rey_cust_ele_set_id number;
215 --
216 c_yea_itx_elm_id constant number := hr_jp_id_pkg.element_type_id(c_yea_itx_elm,null,'JP');
217 c_rey_itx_elm_id constant number := hr_jp_id_pkg.element_type_id(c_rey_itx_elm,null,'JP');
218 --
219 c_com_itx_info_elm_id constant number := hr_jp_id_pkg.element_type_id(c_com_itx_info_elm,null,'JP');
220 c_itx_type_iv_id      constant number := hr_jp_id_pkg.input_value_id(c_com_itx_info_elm_id,c_itx_type_iv);
221 c_itx_org_iv_id       constant number := hr_jp_id_pkg.input_value_id(c_com_itx_info_elm_id,c_itx_org_iv);
222 c_nres_flag_iv_id     constant number := hr_jp_id_pkg.input_value_id(c_com_itx_info_elm_id,c_nres_flag_iv);
223 --
224 c_com_si_info_elm_id constant number := hr_jp_id_pkg.element_type_id(c_com_si_info_elm,null,'JP');
225 c_hi_org_iv_id       constant number := hr_jp_id_pkg.input_value_id(c_com_si_info_elm_id,c_hi_org_iv);
226 c_hi_number_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_com_si_info_elm_id,c_hi_number_iv);
227 c_wp_org_iv_id       constant number := hr_jp_id_pkg.input_value_id(c_com_si_info_elm_id,c_wp_org_iv);
228 c_wp_number_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_com_si_info_elm_id,c_wp_number_iv);
229 c_wpf_org_iv_id      constant number := hr_jp_id_pkg.input_value_id(c_com_si_info_elm_id,c_wpf_org_iv);
230 c_wpf_number_iv_id   constant number := hr_jp_id_pkg.input_value_id(c_com_si_info_elm_id,c_wpf_number_iv);
231 --
232 c_com_li_info_elm_id constant number := hr_jp_id_pkg.element_type_id(c_com_li_info_elm,null,'JP');
233 c_ei_org_iv_id       constant number := hr_jp_id_pkg.input_value_id(c_com_li_info_elm_id,c_ei_org_iv);
234 c_ei_number_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_com_li_info_elm_id,c_ei_number_iv);
235 --
236 c_sal_ci_prem_ee_elm_id       constant number := hr_jp_id_pkg.element_type_id(c_sal_ci_prem_ee_elm,null,'JP');
237 c_sal_ci_prem_ee_iv_id        constant number := hr_jp_id_pkg.input_value_id(c_sal_ci_prem_ee_elm_id,c_pay_value_iv);
238 c_sal_ci_prem_ee_trm_elm_id   constant number := hr_jp_id_pkg.element_type_id(c_sal_ci_prem_ee_trm_elm,null,'JP');
239 c_sal_ci_prem_ee_trm_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_sal_ci_prem_ee_trm_elm_id,c_pay_value_iv);
240 c_sal_ci_prem_ee_nres_elm_id  constant number := hr_jp_id_pkg.element_type_id(c_sal_ci_prem_ee_nres_elm,null,'JP');
241 c_sal_ci_prem_ee_nres_iv_id   constant number := hr_jp_id_pkg.input_value_id(c_sal_ci_prem_ee_nres_elm_id,c_pay_value_iv);
242 c_sal_ci_prem_ee_n_trm_elm_id constant number := hr_jp_id_pkg.element_type_id(c_sal_ci_prem_ee_n_trm_elm,null,'JP');
243 c_sal_ci_prem_ee_n_trm_iv_id  constant number := hr_jp_id_pkg.input_value_id(c_sal_ci_prem_ee_n_trm_elm_id,c_pay_value_iv);
244 --
245 c_sal_itx_elm_id               constant number := hr_jp_id_pkg.element_type_id(c_sal_itx_elm,null,'JP');
246 c_sal_itx_type_iv_id           constant number := hr_jp_id_pkg.input_value_id(c_sal_itx_elm_id,c_itx_type_iv);
247 c_sal_disable_type_iv_id       constant number := hr_jp_id_pkg.input_value_id(c_sal_itx_elm_id,c_disable_type_iv);
248 c_sal_widow_type_iv_id         constant number := hr_jp_id_pkg.input_value_id(c_sal_itx_elm_id,c_widow_type_iv);
249 c_sal_wrk_student_type_iv_id   constant number := hr_jp_id_pkg.input_value_id(c_sal_itx_elm_id,c_working_student_type_iv);
250 c_sal_spouse_type_iv_id        constant number := hr_jp_id_pkg.input_value_id(c_sal_itx_elm_id,c_spouse_type_iv);
251 c_sal_spouse_disb_type_iv_id   constant number := hr_jp_id_pkg.input_value_id(c_sal_itx_elm_id,c_spouse_disable_type_iv);
252 c_sal_num_of_dep_iv_id         constant number := hr_jp_id_pkg.input_value_id(c_sal_itx_elm_id,c_num_of_dep_iv);
253 c_sal_num_of_gen_disb_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_sal_itx_elm_id,c_num_of_gen_disabled_iv);
254 c_sal_num_of_sev_disb_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_sal_itx_elm_id,c_num_of_sev_disabled_iv);
255 c_sal_num_of_sev_disb_lt_iv_id constant number := hr_jp_id_pkg.input_value_id(c_sal_itx_elm_id,c_num_of_sev_disabled_lt_iv);
256 --
257 c_bon_itx_elm_id               constant number := hr_jp_id_pkg.element_type_id(c_bon_itx_elm,null,'JP');
258 c_bon_itx_type_iv_id           constant number := hr_jp_id_pkg.input_value_id(c_bon_itx_elm_id,c_itx_type_iv);
259 c_bon_disable_type_iv_id       constant number := hr_jp_id_pkg.input_value_id(c_bon_itx_elm_id,c_disable_type_iv);
260 c_bon_widow_type_iv_id         constant number := hr_jp_id_pkg.input_value_id(c_bon_itx_elm_id,c_widow_type_iv);
261 c_bon_wrk_student_type_iv_id   constant number := hr_jp_id_pkg.input_value_id(c_bon_itx_elm_id,c_working_student_type_iv);
262 c_bon_spouse_type_iv_id        constant number := hr_jp_id_pkg.input_value_id(c_bon_itx_elm_id,c_spouse_type_iv);
263 c_bon_spouse_disb_type_iv_id   constant number := hr_jp_id_pkg.input_value_id(c_bon_itx_elm_id,c_spouse_disable_type_iv);
264 c_bon_num_of_dep_iv_id         constant number := hr_jp_id_pkg.input_value_id(c_bon_itx_elm_id,c_num_of_dep_iv);
265 c_bon_num_of_gen_disb_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_bon_itx_elm_id,c_num_of_gen_disabled_iv);
266 c_bon_num_of_sev_disb_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_bon_itx_elm_id,c_num_of_sev_disabled_iv);
267 c_bon_num_of_sev_disb_lt_iv_id constant number := hr_jp_id_pkg.input_value_id(c_bon_itx_elm_id,c_num_of_sev_disabled_lt_iv);
268 c_bon_itx_rate_iv_id           constant number := hr_jp_id_pkg.input_value_id(c_bon_itx_elm_id,c_itx_rate_iv);
269 --
270 c_bon_ci_prem_ee_elm_id          constant number := hr_jp_id_pkg.element_type_id(c_bon_ci_prem_ee_elm,null,'JP');
271 c_bon_ci_prem_ee_iv_id           constant number := hr_jp_id_pkg.input_value_id(c_bon_ci_prem_ee_elm_id,c_pay_value_iv);
272 c_bon_ci_prem_ee_nres_elm_id     constant number := hr_jp_id_pkg.element_type_id(c_bon_ci_prem_ee_nres_elm,null,'JP');
273 c_bon_ci_prem_ee_nres_iv_id      constant number := hr_jp_id_pkg.input_value_id(c_bon_ci_prem_ee_nres_elm_id,c_pay_value_iv);
274 --
275 c_spb_itx_elm_id               constant number := hr_jp_id_pkg.element_type_id(c_spb_itx_elm,null,'JP');
276 c_spb_itx_type_iv_id           constant number := hr_jp_id_pkg.input_value_id(c_spb_itx_elm_id,c_itx_type_iv);
277 c_spb_disable_type_iv_id       constant number := hr_jp_id_pkg.input_value_id(c_spb_itx_elm_id,c_disable_type_iv);
278 c_spb_widow_type_iv_id         constant number := hr_jp_id_pkg.input_value_id(c_spb_itx_elm_id,c_widow_type_iv);
279 c_spb_wrk_student_type_iv_id   constant number := hr_jp_id_pkg.input_value_id(c_spb_itx_elm_id,c_working_student_type_iv);
280 c_spb_spouse_type_iv_id        constant number := hr_jp_id_pkg.input_value_id(c_spb_itx_elm_id,c_spouse_type_iv);
281 c_spb_spouse_disb_type_iv_id   constant number := hr_jp_id_pkg.input_value_id(c_spb_itx_elm_id,c_spouse_disable_type_iv);
282 c_spb_num_of_dep_iv_id         constant number := hr_jp_id_pkg.input_value_id(c_spb_itx_elm_id,c_num_of_dep_iv);
283 c_spb_num_of_gen_disb_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_spb_itx_elm_id,c_num_of_gen_disabled_iv);
284 c_spb_num_of_sev_disb_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_spb_itx_elm_id,c_num_of_sev_disabled_iv);
285 c_spb_num_of_sev_disb_lt_iv_id constant number := hr_jp_id_pkg.input_value_id(c_spb_itx_elm_id,c_num_of_sev_disabled_lt_iv);
286 c_spb_itx_rate_iv_id           constant number := hr_jp_id_pkg.input_value_id(c_spb_itx_elm_id,c_itx_rate_iv);
287 --
288 c_yea_amt_aft_emp_dct_r_elm_id    constant number := hr_jp_id_pkg.element_type_id(c_yea_amt_aft_emp_dct_rslt_elm,null,'JP');
289 --c_yea_amt_aft_emp_inc_dct_iv_id constant number := hr_jp_id_pkg.input_value_id(c_yea_amt_aft_emp_dct_r_elm_id,c_pay_value_iv);
290 c_inc_flag_iv_id                  constant number := hr_jp_id_pkg.input_value_id(c_yea_amt_aft_emp_dct_r_elm_id,c_inc_flag_iv);
291 --c_yea_itx_type_iv_id            constant number := hr_jp_id_pkg.input_value_id(c_yea_amt_aft_emp_dct_r_elm_id,c_itx_type_iv);
292 c_pay_amt_iv_id                   constant number := hr_jp_id_pkg.input_value_id(c_yea_amt_aft_emp_dct_r_elm_id,c_pay_amt_iv);
293 c_prev_emp_si_prem_iv_id          constant number := hr_jp_id_pkg.input_value_id(c_yea_amt_aft_emp_dct_r_elm_id,c_prev_emp_si_prem_iv);
294 c_prev_emp_itx_iv_id              constant number := hr_jp_id_pkg.input_value_id(c_yea_amt_aft_emp_dct_r_elm_id,c_prev_emp_itx_iv);
295 c_adj_si_prem_iv_id               constant number := hr_jp_id_pkg.input_value_id(c_yea_amt_aft_emp_dct_r_elm_id,c_adj_si_prem_iv);
296 c_adj_itx_iv_id                   constant number := hr_jp_id_pkg.input_value_id(c_yea_amt_aft_emp_dct_r_elm_id,c_adj_itx_iv);
297 --
298 c_yea_ins_sp_exm_rslt_elm_id constant number := hr_jp_id_pkg.element_type_id(c_yea_ins_sp_exm_rslt_elm,null,'JP');
299 c_dec_si_prem_iv_id          constant number := hr_jp_id_pkg.input_value_id(c_yea_ins_sp_exm_rslt_elm_id,c_dec_si_prem_iv);
300 c_sc_mut_aid_prem_iv_id      constant number := hr_jp_id_pkg.input_value_id(c_yea_ins_sp_exm_rslt_elm_id,c_small_comp_mut_aid_prem_iv);
301 c_dec_sc_mut_aid_prem_iv_id  constant number := hr_jp_id_pkg.input_value_id(c_yea_ins_sp_exm_rslt_elm_id,c_dec_sc_mut_aid_prem_iv);
302 c_life_ins_prem_exm_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_yea_ins_sp_exm_rslt_elm_id,c_life_ins_prem_exm_iv);
303 c_ind_pension_prem_iv_id     constant number := hr_jp_id_pkg.input_value_id(c_yea_ins_sp_exm_rslt_elm_id,c_individual_pension_prem_iv);
304 c_lt_nonlife_ins_prem_iv_id  constant number := hr_jp_id_pkg.input_value_id(c_yea_ins_sp_exm_rslt_elm_id,c_lt_nonlife_ins_prem_iv);
305 c_spouse_income_iv_id        constant number := hr_jp_id_pkg.input_value_id(c_yea_ins_sp_exm_rslt_elm_id,c_spouse_income_iv);
306 c_eq_ins_prem_exm_iv_id      constant number := hr_jp_id_pkg.input_value_id(c_yea_ins_sp_exm_rslt_elm_id,c_earthquake_ins_prem_exm_iv);
307 c_spouse_sp_exm_iv_id        constant number := hr_jp_id_pkg.input_value_id(c_yea_ins_sp_exm_rslt_elm_id,c_spouse_sp_exm_iv);
308 --
309 c_yea_ins_sp_exm_info_elm_id constant number := hr_jp_id_pkg.element_type_id(c_yea_ins_sp_exm_info_elm,null,'JP');
310 c_national_pens_prem_iv_id   constant number := hr_jp_id_pkg.input_value_id(c_yea_ins_sp_exm_info_elm_id,c_national_pension_prem_iv);
311 --
312 c_yea_dep_exm_elm_id           constant number := hr_jp_id_pkg.element_type_id(c_yea_dep_exm_elm,null,'JP');
313 c_num_of_specific_dep_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_elm_id,c_num_of_specific_dep_iv);
314 c_num_of_elder_parent_lt_iv_id constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_elm_id,c_num_of_elder_parent_lt_iv);
315 c_num_of_elder_dep_iv_id       constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_elm_id,c_num_of_elder_dep_iv);
316 --
317 c_yea_dep_exm_rslt_elm_id   constant number := hr_jp_id_pkg.element_type_id(c_yea_dep_exm_rslt_elm,null,'JP');
318 c_basic_exm_iv_id           constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_basic_exm_iv);
319 c_gen_spouse_exm_iv_id      constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_gen_spouse_exm_iv);
320 c_elder_spouse_exm_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_elder_spouse_exm_iv);
321 c_gen_dep_exm_iv_id         constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_gen_dep_exm_iv);
322 c_specific_dep_exm_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_specific_dep_exm_iv);
323 c_junior_dep_exm_iv_id      constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_junior_dep_exm_iv);
324 c_elder_dep_exm_iv_id       constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_elder_dep_exm_iv);
325 c_elder_parent_lt_exm_iv_id constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_elder_parent_lt_exm_iv);
326 c_gen_disabled_exm_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_gen_disabled_exm_iv);
327 c_sev_disabled_exm_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_sev_disabled_exm_iv);
328 c_sev_disabled_lt_exm_iv_id constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_sev_disabled_lt_exm_iv);
329 c_elder_exm_iv_id           constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_elder_exm_iv);
330 c_widow_exm_iv_id           constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_widow_exm_iv);
331 c_sp_widow_exm_iv_id        constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_sp_widow_exm_iv);
332 c_working_student_exm_iv_id constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_rslt_elm_id,c_working_student_exm_iv);
333 --
334 c_yea_net_annual_tax_elm_id constant number := hr_jp_id_pkg.element_type_id(c_yea_net_annual_tax_elm,null,'JP');
335 c_net_annual_tax_iv_id      constant number := hr_jp_id_pkg.input_value_id(c_yea_net_annual_tax_elm_id,c_pay_value_iv);
336 c_housing_loan_iv_id        constant number := hr_jp_id_pkg.input_value_id(c_yea_net_annual_tax_elm_id,c_housing_loan_tax_credit_iv);
337 c_act_housing_loan_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_yea_net_annual_tax_elm_id,c_act_housing_loan_iv);
338 c_yea_annual_tax_iv_id      constant number := hr_jp_id_pkg.input_value_id(c_yea_net_annual_tax_elm_id,c_yea_annual_tax_iv);
339 c_yea_income_tax_iv_id      constant number := hr_jp_id_pkg.input_value_id(c_yea_net_annual_tax_elm_id,c_yea_income_tax_iv);
340 --
341 c_yea_dep_exm_type_rslt_elm_id constant number := hr_jp_id_pkg.element_type_id(c_yea_dep_exm_type_rslt_elm,null,'JP');
342 c_yea_disable_type_iv_id       constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_type_rslt_elm_id,c_disable_type_iv);
343 c_yea_widow_type_iv_id         constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_type_rslt_elm_id,c_widow_type_iv);
344 c_yea_wrk_student_type_iv_id   constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_type_rslt_elm_id,c_working_student_type_iv);
345 c_yea_spouse_type_iv_id        constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_type_rslt_elm_id,c_spouse_type_iv);
346 c_yea_spouse_disb_type_iv_id   constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_type_rslt_elm_id,c_spouse_disable_type_iv);
347 c_yea_num_of_dep_iv_id         constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_type_rslt_elm_id,c_num_of_dep_iv);
348 c_yea_num_of_gen_disb_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_type_rslt_elm_id,c_num_of_gen_disabled_iv);
349 c_yea_num_of_sev_disb_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_type_rslt_elm_id,c_num_of_sev_disabled_iv);
350 c_yea_num_of_sev_disb_lt_iv_id constant number := hr_jp_id_pkg.input_value_id(c_yea_dep_exm_type_rslt_elm_id,c_num_of_sev_disabled_lt_iv);
351 --
352 c_com_nres_info_elm_id     constant number := hr_jp_id_pkg.element_type_id(c_com_nres_info_elm,null,'JP');
353 c_nres_start_date_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_com_nres_info_elm_id,c_nres_start_date_iv);
354 c_projected_res_date_iv_id constant number := hr_jp_id_pkg.input_value_id(c_com_nres_info_elm_id,c_projected_res_date_iv);
355 --
356 c_com_trm_info_elm_id     constant number := hr_jp_id_pkg.element_type_id(c_com_trm_info_elm,null,'JP');
357 c_lump_sum_method_iv_id    constant number := hr_jp_id_pkg.input_value_id(c_com_trm_info_elm_id,c_lump_sum_method_iv);
358 --
359 c_b_com_ltx_lump_sum_run_db_id constant number := hr_jp_id_pkg.defined_balance_id(c_b_com_ltx_lump_sum_bal,c_asg_run_dim,null,'JP');
360 --
361 c_b_sal_txbl_ern_mon_run_db_id constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_txbl_ern_mon_bal,c_asg_run_dim,null,'JP');
362 c_b_sal_txbl_ern_k_run_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_txbl_ern_k_bal,c_asg_run_dim,null,'JP');
363 c_b_sal_txbl_ern_m_n_run_db_id constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_txbl_ern_mon_nres_bal,c_asg_run_dim,null,'JP');
364 c_b_sal_txbl_ern_k_n_run_db_id constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_txbl_ern_k_nres_bal,c_asg_run_dim,null,'JP');
365 c_b_sal_ern_run_db_id          constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_ern_bal,c_asg_run_dim,null,'JP');
366 c_b_sal_hi_prem_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_hi_prem_bal,c_asg_run_dim,null,'JP');
367 c_b_sal_wp_prem_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_wp_prem_bal,c_asg_run_dim,null,'JP');
368 c_b_sal_wpf_prem_run_db_id     constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_wpf_prem_bal,c_asg_run_dim,null,'JP');
369 c_b_sal_ei_prem_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_ei_prem_bal,c_asg_run_dim,null,'JP');
370 c_b_sal_si_prem_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_si_prem_bal,c_asg_run_dim,null,'JP');
371 c_b_sal_amt_aft_si_run_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_amt_aft_si_prem_bal,c_asg_run_dim,null,'JP');
372 c_b_sal_itx_run_db_id          constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_itx_bal,c_asg_run_dim,null,'JP');
373 c_b_sal_ltx_run_db_id          constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_ltx_bal,c_asg_run_dim,null,'JP');
374 c_b_sal_dct_run_db_id          constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_dct_bal,c_asg_run_dim,null,'JP');
375 c_b_sal_net_pay_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_net_pay_bal,c_asg_run_dim,null,'JP');
376 --
377 c_b_bon_txbl_ern_mon_run_db_id constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_txbl_ern_mon_bal,c_asg_run_dim,null,'JP');
378 c_b_bon_txbl_ern_k_run_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_txbl_ern_k_bal,c_asg_run_dim,null,'JP');
379 c_b_bon_txbl_ern_m_n_run_db_id constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_txbl_ern_mon_nres_bal,c_asg_run_dim,null,'JP');
380 c_b_bon_txbl_ern_k_n_run_db_id constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_txbl_ern_k_nres_bal,c_asg_run_dim,null,'JP');
381 c_b_bon_ern_run_db_id          constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_ern_bal,c_asg_run_dim,null,'JP');
382 --c_b_bon_hi_prem_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_hi_prem_bal,c_asg_run_dim,null,'JP');
383 --c_b_bon_wp_prem_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_wp_prem_bal,c_asg_run_dim,null,'JP');
384 c_b_bon_hi_prem_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_hi_prem_bal,c_asg_run_dim,null,'JP');
385 c_b_bon_wp_prem_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_wp_prem_bal,c_asg_run_dim,null,'JP');
386 c_b_bon_wpf_prem_run_db_id     constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_wpf_prem_bal,c_asg_run_dim,null,'JP');
387 c_b_bon_ei_prem_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_ei_prem_bal,c_asg_run_dim,null,'JP');
388 c_b_bon_si_prem_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_si_prem_bal,c_asg_run_dim,null,'JP');
389 c_b_bon_amt_aft_si_run_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_amt_aft_si_prem_bal,c_asg_run_dim,null,'JP');
390 c_b_bon_itx_run_db_id          constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_itx_bal,c_asg_run_dim,null,'JP');
391 c_b_bon_dct_run_db_id          constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_dct_bal,c_asg_run_dim,null,'JP');
392 c_b_bon_net_pay_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_net_pay_bal,c_asg_run_dim,null,'JP');
393 --
394 c_b_spb_txbl_ern_mon_run_db_id constant number := hr_jp_id_pkg.defined_balance_id(c_b_spb_txbl_ern_mon_bal,c_asg_run_dim,null,'JP');
395 c_b_spb_txbl_ern_k_run_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_spb_txbl_ern_k_bal,c_asg_run_dim,null,'JP');
396 c_b_spb_txbl_ern_m_n_run_db_id constant number := hr_jp_id_pkg.defined_balance_id(c_b_spb_txbl_ern_mon_nres_bal,c_asg_run_dim,null,'JP');
397 c_b_spb_txbl_ern_k_n_run_db_id constant number := hr_jp_id_pkg.defined_balance_id(c_b_spb_txbl_ern_k_nres_bal,c_asg_run_dim,null,'JP');
398 c_b_spb_ern_run_db_id          constant number := hr_jp_id_pkg.defined_balance_id(c_b_spb_ern_bal,c_asg_run_dim,null,'JP');
399 c_b_spb_ei_prem_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_spb_ei_prem_bal,c_asg_run_dim,null,'JP');
400 c_b_spb_amt_aft_si_run_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_spb_amt_aft_si_prem_bal,c_asg_run_dim,null,'JP');
401 c_b_spb_itx_run_db_id          constant number := hr_jp_id_pkg.defined_balance_id(c_b_spb_itx_bal,c_asg_run_dim,null,'JP');
402 c_b_spb_dct_run_db_id          constant number := hr_jp_id_pkg.defined_balance_id(c_b_spb_dct_bal,c_asg_run_dim,null,'JP');
403 c_b_spb_net_pay_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_spb_net_pay_bal,c_asg_run_dim,null,'JP');
404 --
405 c_b_sal_txbl_ern_m_ytd_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_txbl_ern_mon_bal,c_asg_ytd_dim,null,'JP');
406 c_b_sal_txbl_ern_k_ytd_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_txbl_ern_k_bal,c_asg_ytd_dim,null,'JP');
407 c_b_bon_txbl_ern_m_ytd_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_txbl_ern_mon_bal,c_asg_ytd_dim,null,'JP');
408 c_b_bon_txbl_ern_k_ytd_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_txbl_ern_k_bal,c_asg_ytd_dim,null,'JP');
409 c_b_spb_txbl_ern_m_ytd_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_spb_txbl_ern_mon_bal,c_asg_ytd_dim,null,'JP');
410 c_b_spb_txbl_ern_k_ytd_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_spb_txbl_ern_k_bal,c_asg_ytd_dim,null,'JP');
411 c_b_sal_itx_ytd_db_id          constant number := hr_jp_id_pkg.defined_balance_id(c_b_sal_itx_bal,c_asg_ytd_dim,null,'JP');
412 c_b_bon_itx_ytd_db_id          constant number := hr_jp_id_pkg.defined_balance_id(c_b_bon_itx_bal,c_asg_ytd_dim,null,'JP');
413 c_b_spb_itx_ytd_db_id          constant number := hr_jp_id_pkg.defined_balance_id(c_b_spb_itx_bal,c_asg_ytd_dim,null,'JP');
414 c_b_yea_withhold_itx_ytd_db_id constant number := hr_jp_id_pkg.defined_balance_id(c_b_yea_withhold_itx_bal,c_asg_ytd_dim,null,'JP');
415 c_b_yea_emp_inc_dct_run_db_id  constant number := hr_jp_id_pkg.defined_balance_id(c_b_yea_amt_aft_emp_dct_bal,c_asg_run_dim,null,'JP');
416 c_b_yea_sal_dct_si_ytd_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_yea_sal_dct_si_prem_bal,c_asg_ytd_dim,null,'JP');
417 c_b_yea_income_exm_run_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_yea_income_exm_bal,c_asg_run_dim,null,'JP');
418 c_b_yea_net_txbl_bal_run_db_id constant number := hr_jp_id_pkg.defined_balance_id(c_b_yea_net_txbl_income_bal,c_asg_run_dim,null,'JP');
419 c_b_yea_annual_tax_run_db_id   constant number := hr_jp_id_pkg.defined_balance_id(c_b_yea_annual_tax_bal,c_asg_run_dim,null,'JP');
420 c_b_yea_tax_pay_run_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_yea_tax_pay_bal,c_asg_run_dim,null,'JP');
421 --c_b_yea_tax_pay_ytd_db_id      constant number := hr_jp_id_pkg.defined_balance_id(c_b_yea_tax_pay_bal,c_asg_ytd_dim,null,'JP');
422 --
423 type t_wng_rec is record(
424   assignment_id   number,
425   employee_number varchar2(30),
426   message_text    varchar2(2000));
427 type t_wng_tbl is table of t_wng_rec index by binary_integer;
428 g_wng_tbl t_wng_tbl;
429 --
430 type t_data_item_ass_rec is record(
431   col_val      varchar2(60),
432   col_val_null varchar2(1));
433 --
434 type t_data_item_ass_tbl is table of t_data_item_ass_rec index by binary_integer;
435 --
436 g_data_item_act_sal_ern_tbl t_data_item_ass_tbl;
437 g_data_item_act_sal_dct_tbl t_data_item_ass_tbl;
438 g_data_item_act_bon_ern_tbl t_data_item_ass_tbl;
439 g_data_item_act_bon_dct_tbl t_data_item_ass_tbl;
440 g_data_item_act_wrk_tbl t_data_item_ass_tbl;
441 --
442 type t_data_sal_rec is record(
443   sal_act_efd                    date,
444   sal_act_erd                    date,
445   sal_act_pay                    number,
446   sal_pay_txbl_mon               number,
447   sal_pay_txbl_kind              number,
448   sal_pay_txbl_mon_nres          number,
449   sal_pay_txbl_kind_nres         number,
450   sal_pay_txbl                   number,
451   sal_pay_pay                    number,
452   sal_pay_ntxbl                  number,
453   sal_pay_hi                     number,
454   sal_pay_wp                     number,
455   sal_pay_wpf                    number,
456   sal_pay_ei                     number,
457   sal_pay_si                     number,
458   sal_pay_ci                     number,
459   sal_pay_dct_earn               number,
460   sal_pay_itx_type               varchar2(60),
461   sal_pay_disable_type           varchar2(60),
462   sal_pay_widow_type             varchar2(60),
463   sal_pay_working_student_type   varchar2(60),
464   sal_pay_spouse_type            varchar2(60),
465   sal_pay_spouse_disable_type    varchar2(60),
466   sal_pay_num_of_dep             number,
467   sal_pay_num_of_gen_disabled    number,
468   sal_pay_num_of_sev_disabled    number,
469   sal_pay_num_of_sev_disabled_lt number,
470   sal_pay_num_of_spouse          number,
471   sal_pay_num_of_dpt             number,
472   sal_pay_dpts                   number,
473   sal_pay_itx                    number,
474   sal_pay_ltx                    number,
475   sal_pay_ltx_lump               number,
476   sal_pay_dct                    number,
477   sal_pay_net_pay                number,
478   sal_pay_yea_itx                number,
479   sal_pay_net_itx                number,
480   sal_pay_calc_dct               number,
481   sal_pay_calc_net_pay           number,
482   null_dummy                     number);
483 --
484 type t_data_sal_tbl is table of t_data_sal_rec index by binary_integer;
485 --
486 g_data_sal_tbl t_data_sal_tbl;
487 --
488 type t_data_bon_rec is record(
489   bon_act_efd                    date,
490   bon_act_erd                    date,
491   bon_act_pay                    number,
492   bon_act_type                   varchar2(60),
493   bon_pay_txbl_mon               number,
494   bon_pay_txbl_kind              number,
495   bon_pay_txbl_mon_nres          number,
496   bon_pay_txbl_kind_nres         number,
497   bon_pay_txbl                   number,
498   bon_pay_pay                    number,
499   bon_pay_ntxbl                  number,
500   bon_pay_hi                     number,
501   bon_pay_wp                     number,
502   bon_pay_wpf                    number,
503   bon_pay_ei                     number,
504   bon_pay_si                     number,
505   bon_pay_ci                     number,
506   bon_pay_dct_earn               number,
507   bon_pay_itx_type               varchar2(60),
508   bon_pay_disable_type           varchar2(60),
509   bon_pay_widow_type             varchar2(60),
510   bon_pay_working_student_type   varchar2(60),
511   bon_pay_spouse_type            varchar2(60),
512   bon_pay_spouse_disable_type    varchar2(60),
513   bon_pay_num_of_dep             number,
514   bon_pay_num_of_gen_disabled    number,
515   bon_pay_num_of_sev_disabled    number,
516   bon_pay_num_of_sev_disabled_lt number,
517   bon_pay_itx_rate               varchar2(60),
518   bon_pay_num_of_spouse          number,
519   bon_pay_num_of_dpt             number,
520   bon_pay_dpts                   number,
521   bon_pay_itx                    number,
522   bon_pay_ltx_lump               number,
523   bon_pay_dct                    number,
524   bon_pay_net_pay                number,
525   bon_pay_yea_itx                number,
526   bon_pay_net_itx                number,
527   bon_pay_calc_dct               number,
528   bon_pay_calc_net_pay           number,
529   null_dummy                     number);
530 --
531 type t_data_bon_tbl is table of t_data_bon_rec index by binary_integer;
532 --
533 g_data_bon_tbl t_data_bon_tbl;
534 --
535 type t_yea_wic_rec is record(
536   wic_type                       varchar2(5),
537   assignment_id                  number,
538   action_sequence                number,
539   effective_date                 date,
540   date_earned                    date,
541   itx_org_id                     number,
542   itx_type                       varchar2(60),
543   itx_inc_flag                   varchar2(60),
544   dependent_spouse_exists_kou    varchar2(60),
545   dependent_spouse_no_exist_kou  varchar2(60),
546   dependent_spouse_exists_otsu   varchar2(60),
547   dependent_spouse_no_exist_otsu varchar2(60),
548   aged_spouse_exists             varchar2(60),
549   num_dependents_kou             number,
550   num_dependents_otsu            number,
551   num_specifieds_kou             number,
552   num_specifieds_otsu            number,
553   num_ageds_kou                  number,
554   num_ageds_otsu                 number,
555   num_aged_parents_partial       number,
556   num_disableds                  number,
557   num_special_disableds          number,
558   num_special_disableds_partial  number,
559   taxable_income                 number,
560   --withholding_itax               number,
561   net_taxable_income             number,
562   social_insurance_premium       number,
563   life_insurance_premium_exempt  number,
564   damage_insurance_premium_exem  number,
565   spouse_special_exempt          number,
566   total_income_exempt            number,
567   housing_tax_reduction          number,
568   yea_tax_pay                    number,
569   spouse_net_taxable_income      number,
570   private_pension_premium        number,
571   long_damage_insurance_premium  number,
572   mutual_aid_premium             number,
573   national_pens_premium          number,
574   disabled                       varchar2(60),
575   special_disabled               varchar2(60),
576   widow                          varchar2(60),
577   special_widow                  varchar2(60),
578   widower                        varchar2(60),
579   working_student                varchar2(60),
580   prev_jobs                      pay_jp_wic_pkg.t_prev_jobs,
581   null_dummy                     number);
582 --
583 type t_yea_wic_tbl is table of t_yea_wic_rec index by binary_integer;
584 --
585 g_yea_wic_tbl t_yea_wic_tbl;
586 --
587 type t_data_yea_rec is record(
588   yea_act_id                    number,
589   yea_act_efd                   date,
590   yea_act_erd                   date,
591   yea_act_pay                   number,
592   yea_act_type                  varchar2(60),
593   yea_act_include_flag          varchar2(60),
594   yea_pay_sal_txbl_mon          number,
595   yea_pay_sal_txbl_kind         number,
596   yea_pay_sal_txbl              number,
597   yea_pay_bon_txbl_mon          number,
598   yea_pay_bon_txbl_kind         number,
599   yea_pay_bon_txbl              number,
600   yea_pay_spb_txbl_mon          number,
601   yea_pay_spb_txbl_kind         number,
602   yea_pay_spb_txbl              number,
603   yea_pay_bon_txbl_calc         number,
604   yea_pay_txbl                  number,
605   yea_pay_sal_itx               number,
606   yea_pay_bon_itx               number,
607   yea_pay_spb_itx               number,
608   yea_pay_bon_itx_calc          number,
609   yea_pay_prev_emp_itx          number,
610   yea_pay_adj_itx               number,
611   yea_pay_withhold_itx          number,
612   yea_pay_withhold_itx_calc     number,
613   yea_tax_amt_aft_emp_inc_dct   number,
614   yea_dct_dec_si_prem           number,
615   yea_dct_dec_sc_mut_prem       number,
616   yea_dct_sal_dct_si_prem_calc  number,
617   yea_dct_life_ins_prem_exm     number,
618   yea_dct_eq_ins_prem_exm       number,
619   yea_dct_spouse_sp_exm         number,
620   yea_dct_basic_exm             number,
621   yea_dct_gen_spouse_exm        number,
622   yea_dct_elder_spouse_exm      number,
623   yea_dct_gen_dep_exm           number,
624   yea_dct_specific_dep_exm      number,
625   yea_dct_junior_dep_exm        number,
626   yea_dct_elder_dep_exm         number,
627   yea_dct_elder_parent_lt_exm   number,
628   yea_dct_gen_disabled_exm      number,
629   yea_dct_sev_disabled_exm      number,
630   yea_dct_sev_disabled_lt_exm   number,
631   yea_dct_elder_exm             number,
632   yea_dct_widow_exm             number,
633   yea_dct_sp_widow_exm          number,
634   yea_dct_working_student_exm   number,
635   yea_dct_dep_exm_calc          number,
636   yea_dct_spouse_income         number,
637   yea_dct_ind_pension_prem      number,
638   yea_dct_lt_nonlife_ins_prem   number,
639   yea_dct_sc_mut_prem           number,
640   yea_dct_sc_mut_prem_calc      number,
641   yea_dct_national_pension_prem number,
642   yea_dct_income_exm            number,
643   yea_tax_net_txbl_income       number,
644   yea_tax_annual_tax            number,
645   yea_tax_act_housing_loan      number,
646   yea_tax_yea_annual_tax        number,
647   yea_tax_yea_income_tax        number,
648   yea_tax_yea_tax_pay           number,
649   null_dummy                    number);
650 --
651 type t_data_yea_tbl is table of t_data_yea_rec index by binary_integer;
652 --
653 g_data_yea_tbl t_data_yea_tbl;
654 --
655 type t_data_pjob_rec is record(
656   employer_name         varchar2(240),
657   employer_name_kana    varchar2(240),
658   employer_address      varchar2(500),
659   employer_address_kana varchar2(500),
660   txbl_inc              number,
661   si_prem               number,
662   mutual_aid_prem       number,
663   itax                  number,
664   term_date             date);
665 --
666 type t_data_pjob_tbl is table of t_data_pjob_rec index by binary_integer;
667 --
668 g_data_pjob_tbl t_data_pjob_tbl;
669 --
670 type t_data_pjob_ind_rec is record(
671   rec_ind1  number,
672   rec_ind2  number,
673   rec_ind3  number,
674   rec_ind4  number,
675   rec_ind5  number,
676   rec_ind6  number,
677   rec_ind7  number,
678   rec_ind8  number,
679   rec_ind9  number,
680   rec_ind10 number,
681   rec_ind11 number,
682   rec_ind12 number,
683   rec_ind13 number,
684   rec_ind14 number,
685   rec_ind15 number);
686 --
687 type t_data_pjob_ind_tbl is table of t_data_pjob_ind_rec index by binary_integer;
688 --
689 g_data_pjob_ind_tbl t_data_pjob_ind_tbl;
690 --
691 type t_data_dpnt_rec is record(
692   dpnt_spouse_type            varchar2(60),
693   dpnt_itx_type               varchar2(60),
694   dpnt_declare_flag           varchar2(60),
695   dpnt_spouse_flag            varchar2(60),
696   dpnt_gen_spouse_flag        varchar2(60),
697   dpnt_elder_spouse_flag      varchar2(60),
698   dpnt_num_of_dep             number,
699   dpnt_num_of_specific_dep    number,
700   dpnt_num_of_elder_parent_lt number,
701   dpnt_num_of_elder_dep       number,
702   dpnt_num_of_gen_disabled    number,
703   dpnt_num_of_sev_disabled    number,
704   dpnt_num_of_sev_disabled_lt number,
705   dpnt_disable_type           varchar2(60),
706   dpnt_widow_type             varchar2(60),
707   dpnt_working_student_type   varchar2(60),
708   dpnt_num_of_otsu_dep        number,
709   dpnt_nres_flag              varchar2(60));
710 --
711 type t_data_dpnt_tbl is table of t_data_dpnt_rec index by binary_integer;
712 --
713 g_data_dpnt_tbl t_data_dpnt_tbl;
714 --
715 type t_data_ass_pay_rec is record(
716   payroll_id number,
717   ord_num number);
718 --
719 type t_data_ass_pay_tbl is table of t_data_ass_pay_rec index by binary_integer;
720 --
721 type t_number_tbl is table of number index by binary_integer;
722 --
723 g_data_sal_ass_pay_tbl t_data_ass_pay_tbl;
724 g_data_bon_ass_pay_tbl t_data_ass_pay_tbl;
725 g_arch_sal_ass_pay_tbl t_data_ass_pay_tbl;
726 g_arch_bon_ass_pay_tbl t_data_ass_pay_tbl;
727 g_data_sal_ass_pay_ind_tbl t_number_tbl;
728 g_data_bon_ass_pay_ind_tbl t_number_tbl;
729 g_arch_sal_ass_pay_ind_tbl t_number_tbl;
730 g_arch_bon_ass_pay_ind_tbl t_number_tbl;
731 --
732 type t_item_info_ind_rec is record(
733   sal_ern_start number,
734   sal_ern_end   number,
735   sal_dct_start number,
736   sal_dct_end   number,
737   bon_ern_start number,
738   bon_ern_end   number,
739   bon_dct_start number,
740   bon_dct_end   number,
741   wrk_start     number,
742   wrk_end       number,
743   null_dummy    number);
744 --
745 type t_item_info_ind_tbl is table of t_item_info_ind_rec index by binary_integer;
746 --
747 g_item_info_ind_tbl t_item_info_ind_tbl;
748 --
749 type t_item_info_rec is record(
750   item_pk         number,
751   item_cat        varchar2(150),
752   item_type       varchar2(150),
753   item_id         number,
754   item_rep_name   varchar2(150),
755   item_rep_seq    number,
756   item_null_valid varchar2(1));
757 --
758 type t_item_info_tbl is table of t_item_info_rec index by binary_integer;
759 --
760 g_item_info_sal_ern_tbl t_item_info_tbl;
761 g_item_info_sal_dct_tbl t_item_info_tbl;
762 g_item_info_bon_ern_tbl t_item_info_tbl;
763 g_item_info_bon_dct_tbl t_item_info_tbl;
764 g_item_info_wrk_tbl     t_item_info_tbl;
765 --
766 type t_data_pay_rec is record(
767   sal_pay_tbl t_data_ass_pay_tbl,
768   bon_pay_tbl t_data_ass_pay_tbl);
769 --
770 type t_data_pay_tbl is table of t_data_pay_rec index by binary_integer;
771 --
772 g_data_pay_tbl t_data_pay_tbl;
773 --
774 type t_data_item_rec is record(
775   sal_ern_tbl t_data_item_ass_tbl,
776   sal_dct_tbl t_data_item_ass_tbl,
777   bon_ern_tbl t_data_item_ass_tbl,
778   bon_dct_tbl t_data_item_ass_tbl,
779   wrk_tbl     t_data_item_ass_tbl,
780   null_dummy  number);
781 --
782 type t_data_item_tbl is table of t_data_item_rec index by binary_integer;
783 g_data_item_tbl t_data_item_tbl;
784 --
785 type t_data_cust_rec is record(
786   txt_information1   varchar2(240),
787   txt_information2   varchar2(240),
788   txt_information3   varchar2(240),
789   txt_information4   varchar2(240),
790   txt_information5   varchar2(240),
791   txt_information6   varchar2(240),
792   txt_information7   varchar2(240),
793   txt_information8   varchar2(240),
794   txt_information9   varchar2(240),
795   txt_information10  varchar2(240),
796   txt_information11  varchar2(240),
797   txt_information12  varchar2(240),
798   txt_information13  varchar2(240),
799   txt_information14  varchar2(240),
800   txt_information15  varchar2(240),
801   txt_information16  varchar2(240),
802   txt_information17  varchar2(240),
803   txt_information18  varchar2(240),
804   txt_information19  varchar2(240),
805   txt_information20  varchar2(240),
806   txt_information21  varchar2(240),
807   txt_information22  varchar2(240),
808   txt_information23  varchar2(240),
809   txt_information24  varchar2(240),
810   txt_information25  varchar2(240),
811   date_information1  date,
812   date_information2  date,
813   date_information3  date,
814   date_information4  date,
815   date_information5  date,
816   date_information6  date,
817   date_information7  date,
818   date_information8  date,
819   date_information9  date,
820   date_information10 date,
821   date_information11 date,
822   date_information12 date,
823   date_information13 date,
824   date_information14 date,
825   date_information15 date,
826   date_information16 date,
827   date_information17 date,
828   date_information18 date,
829   date_information19 date,
830   date_information20 date,
831   date_information21 date,
832   date_information22 date,
833   date_information23 date,
834   date_information24 date,
835   date_information25 date,
836   num_information1   number,
837   num_information2   number,
838   num_information3   number,
839   num_information4   number,
840   num_information5   number,
841   num_information6   number,
842   num_information7   number,
843   num_information8   number,
844   num_information9   number,
845   num_information10  number,
846   num_information11  number,
847   num_information12  number,
848   num_information13  number,
849   num_information14  number,
850   num_information15  number,
851   num_information16  number,
852   num_information17  number,
853   num_information18  number,
854   num_information19  number,
855   num_information20  number,
856   num_information21  number,
857   num_information22  number,
858   num_information23  number,
859   num_information24  number,
860   num_information25  number);
861 --
862 type t_data_cust_tbl is table of t_data_cust_rec index by binary_integer;
863 --
864 g_data_cust_tbl t_data_cust_tbl;
865 --
866 type t_per_rec is record(
867   person_id            number,
868   assignment_id        number,
869   assignment_action_id number,
870   ass_cnt              number);
871 type t_per_tbl is table of t_per_rec index by binary_integer;
872 g_per_ind_tbl t_per_tbl;
873 --
874 type t_ass_rec is record(
875   person_id            number,
876   assignment_id        number,
877   assignment_action_id number,
878   effective_date       date,
879   include_or_exclude   hr_assignment_set_amendments.include_or_exclude%type);
880 type t_ass_tbl is table of t_ass_rec index by binary_integer;
881 g_ass_tbl t_ass_tbl;
882 g_ass_ind_tbl t_ass_tbl;
883 --
884 type t_data_rec is record(
885 arch_assignment_action_id   number,
886 assact_assignment_id        number,
887 assact_proc_ass_action_id   number,
888 assact_action_sequence      number,
889 assact_effective_date       date,
890 assact_date_earned          date,
891 assact_proc_type            varchar2(5),
892 assact_dpnt_ref_type        varchar2(150),
893 assact_arch_ass_action_id_o number,
894 assact_proc_ass_action_date_o date,
895 assact_organization_id      number,
896 assact_job_id               number,
897 assact_payroll_id           number,
898 assact_location_id          number,
899 assact_termination_date     date,
900 assact_leaving_reason       per_periods_of_service.leaving_reason%type,
901 emp_person_id               number,
902 emp_employee_number         per_all_people_f.employee_number%type,
903 emp_last_name               per_all_people_f.per_information18%type,
904 emp_first_name              per_all_people_f.per_information19%type,
905 emp_last_name_kana          per_all_people_f.last_name%type,
906 emp_first_name_kana         per_all_people_f.first_name%type,
907 emp_sex                     per_all_people_f.sex%type,
908 emp_birth_date              date,
909 emp_add_address_id          number,
910 emp_add_address_jp          varchar2(1),
911 emp_add_postal_code         per_addresses.postal_code%type,
912 emp_add_district_code       per_addresses.town_or_city%type,
913 emp_add_address             varchar2(800),
914 emp_add_address_kana        varchar2(800),
915 emp_add_phone1              per_addresses.telephone_number_1%type,
916 emp_add_phone2              per_addresses.telephone_number_2%type,
917 emp_ass_hire_date           date,
918 emp_ass_organization_name   hr_all_organization_units.name%type,
919 emp_ass_job_name            per_jobs.name%type,
920 emp_ass_payroll_name        pay_all_payrolls_f.payroll_name%type,
921 emp_ass_location_name       hr_locations.location_code%type,
922 emp_si_itax_org_id          number,
923 emp_si_itax_type            varchar2(60),
924 emp_si_hi_org_id            number,
925 emp_si_hi_number            varchar2(60),
926 emp_si_wp_org_id            number,
927 emp_si_wp_number            varchar2(60),
928 emp_si_wpf_org_id           number,
929 emp_si_wpf_number           varchar2(60),
930 emp_si_ei_org_id            number,
931 emp_si_ei_number            varchar2(60),
932 emp_si_nres_flag            varchar2(60),
933 emp_si_nres_start_date      date,
934 emp_si_projected_res_date   date,
935 sal_act_act_mth1            number,
936 sal_act_act_mth2            number,
937 sal_act_act_mth3            number,
938 sal_act_act_mth4            number,
939 sal_act_act_mth5            number,
940 sal_act_act_mth6            number,
941 sal_act_act_mth7            number,
942 sal_act_act_mth8            number,
943 sal_act_act_mth9            number,
944 sal_act_act_mth10           number,
945 sal_act_act_mth11           number,
946 sal_act_act_mth12           number,
947 bon_act_act_cnt1            number,
948 bon_act_act_cnt2            number,
949 bon_act_act_cnt3            number,
950 bon_act_act_cnt4            number,
951 bon_act_act_cnt5            number,
952 bon_act_act_cnt6            number,
953 bon_act_act_cnt7            number,
954 bon_act_act_cnt8            number,
955 bon_act_act_cnt9            number,
956 bon_act_act_cnt10           number,
957 bon_act_act_cnt11           number,
958 bon_act_act_cnt12           number,
959 bon_act_act_cnt13           number,
960 bon_act_act_cnt14           number,
961 bon_act_act_cnt15           number,
962 yea_act                     number,
963 sal_act                     number,
964 sal_erd                     date,
965 bon_act                     number,
966 pjob_cnt                    number,
967 act_mth1_tbl                t_number_tbl,
968 act_mth2_tbl                t_number_tbl,
969 act_mth3_tbl                t_number_tbl,
970 act_mth4_tbl                t_number_tbl,
971 act_mth5_tbl                t_number_tbl,
972 act_mth6_tbl                t_number_tbl,
973 act_mth7_tbl                t_number_tbl,
974 act_mth8_tbl                t_number_tbl,
975 act_mth9_tbl                t_number_tbl,
976 act_mth10_tbl               t_number_tbl,
977 act_mth11_tbl               t_number_tbl,
978 act_mth12_tbl               t_number_tbl);
979 --
980 type t_data_tbl is table of t_data_rec index by binary_integer;
981 --
982 g_body_tbl t_data_tbl;
983 --
984 g_assact_tbl t_number_tbl;
985 --
986 -- -------------------------------------------------------------------------
987 -- set_detail_debug
988 -- -------------------------------------------------------------------------
989 procedure set_detail_debug(
990   p_yn in varchar2)
991 is
992 --
993   -- hidden option for tracking
994   cursor csr_hidden_debug
995   is
996   select parameter_value
997   from   pay_action_parameters
998   where  parameter_name = 'JP_DEBUG_PAYJPITWB';
999 --
1000   l_hidden_debug pay_action_parameters.parameter_value%type;
1001 --
1002 begin
1003 --
1004   if p_yn is not null then
1005   --
1006     pay_jp_itwb_archive_pkg.g_detail_debug := p_yn;
1007   --
1008   else
1009   --
1010     open csr_hidden_debug;
1011     fetch csr_hidden_debug into l_hidden_debug;
1012     close csr_hidden_debug;
1013   --
1014     if l_hidden_debug = 'Y' then
1015     --
1016       pay_jp_itwb_archive_pkg.g_detail_debug := l_hidden_debug;
1017     --
1018     end if;
1019   --
1020   end if;
1021 --
1022   if g_debug then
1023   --
1024     hr_utility.trace('l_hidden_debug : '||l_hidden_debug);
1025     hr_utility.trace('g_detail_debug : '||g_detail_debug);
1026   --
1027   end if;
1028 --
1029 end set_detail_debug;
1030 --
1031 -- -------------------------------------------------------------------------
1032 -- cnv_zero_null
1033 -- -------------------------------------------------------------------------
1034 function cnv_zero_null(
1035   p_val in number)
1036 return number
1037 is
1038 --
1039   o_val number;
1040 --
1041 begin
1042 --
1043   if nvl(p_val,0) > 0 then
1044   --
1045     o_val := p_val;
1046   --
1047   end if;
1048 --
1049 return o_val;
1050 end cnv_zero_null;
1051 --
1052 -- -------------------------------------------------------------------------
1053 -- calc_num_of_dpts
1054 -- -------------------------------------------------------------------------
1055 procedure calc_num_of_dpts(
1056   p_itx_type               in varchar2,
1057   p_disable_type           in varchar2,
1058   p_widow_type             in varchar2,
1059   p_working_student_type   in varchar2,
1060   p_spouse_type            in varchar2,
1061   p_spouse_disable_type    in varchar2,
1062   p_num_of_dep             in number,
1063   p_num_of_gen_disabled    in number,
1064   p_num_of_sev_disabled    in number,
1065   p_num_of_sev_disabled_lt in number,
1066   p_num_of_spouse          out nocopy number,
1067   p_num_of_dpt             out nocopy number,
1068   p_num_of_dpts            out nocopy number)
1069 is
1070 --
1071   l_proc varchar2(80) := c_package||'calc_num_of_dpts';
1072 --
1073   l_num_of_spouse number;
1074   l_num_of_dpt    number;
1075   l_num_of_dpts   number;
1076 --
1077 begin
1078 --
1079   if g_debug
1080   and g_detail_debug = 'Y' then
1081     hr_utility.set_location(l_proc,0);
1082   end if;
1083 --
1084   if p_itx_type <> 'D_HEI' then
1085   --
1086     if p_itx_type = 'M_KOU'
1087     or p_itx_type = 'D_KOU' then
1088     --
1089       l_num_of_spouse := 0;
1090       if p_spouse_type = '2'
1091       or p_spouse_type = '3' then
1092       --
1093         l_num_of_spouse := 1;
1094       --
1095       end if;
1096     --
1097       l_num_of_dpt :=
1098         nvl(p_num_of_dep,0)
1099         + nvl(p_num_of_gen_disabled,0)
1100         + nvl(p_num_of_sev_disabled,0)
1101         + nvl(p_num_of_sev_disabled_lt,0) * 2;
1102     --
1103       if nvl(p_disable_type,'0') <> '0' then
1104       --
1105         l_num_of_dpt := l_num_of_dpt + 1;
1106       --
1107       end if;
1108     --
1109       if nvl(p_widow_type,'0') <> '0' then
1110       --
1111         l_num_of_dpt := l_num_of_dpt + 1;
1112       --
1113       end if;
1114     --
1115       if nvl(p_working_student_type,'0') <> '0' then
1116       --
1117         l_num_of_dpt := l_num_of_dpt + 1;
1118       --
1119       end if;
1120     --
1121       if nvl(p_spouse_disable_type,'0') <> '0' then
1122       --
1123         l_num_of_dpt := l_num_of_dpt + 1;
1124       --
1125         if p_spouse_disable_type = '3' then
1126         --
1127           l_num_of_dpt := l_num_of_dpt + 1;
1128         --
1129         end if;
1130       --
1131       end if;
1132     --
1133     else
1134     --
1135       l_num_of_spouse := 0;
1136       if p_spouse_type = '2'
1137       or p_spouse_type = '3' then
1138       --
1139         l_num_of_spouse := 1;
1140       --
1141       end if;
1142     --
1143       l_num_of_dpt := p_num_of_dep;
1144     --
1145     end if;
1146   --
1147     l_num_of_dpts := nvl(l_num_of_dpt,0) + nvl(l_num_of_spouse,0);
1148   --
1149   end if;
1150 --
1151   p_num_of_spouse := cnv_zero_null(l_num_of_spouse);
1152   p_num_of_dpt    := cnv_zero_null(l_num_of_dpt);
1153   p_num_of_dpts   := cnv_zero_null(l_num_of_dpts);
1154 --
1155   if g_debug
1156   and g_detail_debug = 'Y' then
1157     hr_utility.set_location(l_proc,1000);
1158   end if;
1159 --
1160 end calc_num_of_dpts;
1161 --
1162 -- -------------------------------------------------------------------------
1163 -- get_fuzzy_proc_type
1164 -- -------------------------------------------------------------------------
1165 function get_fuzzy_proc_type(
1166   p_assignment_action_id in number,
1167   p_action_type          in varchar2)
1168 return varchar2
1169 is
1170 --
1171   l_proc_type varchar2(30);
1172 --
1173   l_classification_name pay_element_classifications.classification_name%type;
1174 --
1175   cursor csr_classification
1176   is
1177   select /*+ ORDERED */
1178          pec.classification_name
1179   from   pay_assignment_actions paa,
1180          pay_payroll_actions ppa,
1181          pay_run_results prr,
1182          pay_element_types_f pet,
1183          pay_element_classifications pec
1184   where  paa.assignment_action_id = p_assignment_action_id
1185   and    ppa.payroll_action_id = paa.payroll_action_id
1186   and    prr.assignment_action_id = paa.assignment_action_id
1187   and    pet.element_type_id = prr.element_type_id
1188   and    ppa.effective_date
1189          between pet.effective_start_date and pet.effective_end_date
1190   and    pec.classification_id = pet.classification_id
1191   and    (pec.classification_name like '%'||c_fuzzy_ele_class_sal||'%'
1192          or pec.classification_name like '%'||c_fuzzy_ele_class_bon||'%'
1193          or pec.classification_name like '%'||c_fuzzy_ele_class_spb||'%'
1194          or pec.classification_name like '%'||c_fuzzy_ele_class_yea||'%');
1195 --
1196 begin
1197 --
1198   if p_action_type <> 'R' then
1199   --
1200     l_proc_type := g_proc_type;
1201   --
1202     if g_proc_type_assact_id is null
1203     or g_proc_type_assact_id <> p_assignment_action_id then
1204     --
1205       -- recognize from classification of first record
1206       open csr_classification;
1207       fetch csr_classification into l_classification_name;
1208       close csr_classification;
1209     --
1210       l_proc_type := null;
1211     --
1212       if l_classification_name like '%'||c_fuzzy_ele_class_sal||'%' then
1213       --
1214         l_proc_type := 'SAL';
1215       --
1216       elsif l_classification_name like '%'||c_fuzzy_ele_class_bon||'%' then
1217       --
1218         l_proc_type := 'BON';
1219       --
1220       elsif l_classification_name like '%'||c_fuzzy_ele_class_spb||'%' then
1221       --
1222         l_proc_type := 'SPB';
1223       --
1224       elsif l_classification_name like '%'||c_fuzzy_ele_class_yea||'%' then
1225       --
1226         l_proc_type := 'YEA';
1227       --
1228       end if;
1229     --
1230       g_proc_type_assact_id := p_assignment_action_id;
1231       g_proc_type := l_proc_type;
1232     --
1233     end if;
1234   --
1235   end if;
1236 --
1237 return l_proc_type;
1238 end get_fuzzy_proc_type;
1239 --
1240 -- -------------------------------------------------------------------------
1241 -- set_data_sal_tbl
1242 -- -------------------------------------------------------------------------
1243 procedure set_data_sal_tbl(
1244   p_assignment_action_id    in number,
1245   p_assignment_id           in number,
1246   p_data_ass_effective_date in date,
1247   p_data_ass_date_earned    in date,
1248   p_data_ass_payroll_id     in number)
1249 is
1250 --
1251   l_proc varchar2(80) := c_package||'set_data_sal_tbl';
1252 --
1253   o_num_of_spouse number;
1254   o_num_of_dpt    number;
1255   o_num_of_dpts   number;
1256 --
1257   l_yea_assignment_action_id number;
1258 --
1259   l_lump_sum_method_eev varchar2(60);
1260 --
1261   cursor csr_pay_yea_data
1262   is
1263   select /*+ ORDERED */
1264          paa_yea.assignment_action_id
1265   from   pay_assignment_actions paa_sal,
1266          pay_payroll_actions ppa_sal,
1267          pay_action_interlocks pai_sal,
1268          pay_pre_payments ppp_pp,
1269          pay_assignment_actions paa_pp,
1270          pay_payroll_actions ppa_pp,
1271          pay_action_interlocks pai_yea,
1272          pay_assignment_actions paa_yea,
1273          pay_payroll_actions ppa_yea
1274   where paa_sal.assignment_action_id = p_assignment_action_id
1275   and   ppa_sal.payroll_action_id = paa_sal.payroll_action_id
1276   and   pai_sal.locked_action_id = paa_sal.assignment_action_id
1277   and   ppp_pp.assignment_action_id = pai_sal.locking_action_id
1278   and   paa_pp.assignment_action_id = ppp_pp.assignment_action_id
1279   and   paa_pp.action_status = 'C'
1280   and   ppa_pp.payroll_action_id = paa_pp.payroll_action_id
1281   and   ppa_pp.action_type in ('P','U')
1282   and   ppa_pp.effective_date
1283         between trunc(ppa_sal.effective_date,'MM') and last_day(ppa_sal.effective_date)
1284   and   pai_yea.locking_action_id = paa_pp.assignment_action_id
1285   and   paa_yea.assignment_action_id = pai_yea.locked_action_id
1286   and   paa_yea.action_status = 'C'
1287   and   ppa_yea.payroll_action_id = paa_yea.payroll_action_id
1288   and   ppa_yea.action_type in ('R','Q','B')
1289   and   nvl(ppa_yea.element_type_id,c_yea_itx_elm_id) in (c_yea_itx_elm_id, c_rey_itx_elm_id)
1290   and   decode(nvl(ppa_yea.element_type_id,-1),-1,nvl(ppa_yea.element_set_id,-1),c_yea_ele_set_id) in (
1291           c_yea_ele_set_id,
1292           c_rey_ele_set_id,
1293           c_yea_cust_ele_set_id,
1294           c_rey_cust_ele_set_id,
1295           -1)
1296   and   decode(nvl(ppa_yea.element_type_id,-1),-1,decode(nvl(ppa_yea.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa_yea.assignment_action_id,ppa_yea.action_type),'X'),'YEA'),'YEA') = 'YEA'
1297   and not exists(
1298     select /*+ ORDERED */
1299            null
1300     from   pay_action_interlocks pai_v,
1301            pay_assignment_actions paa_v,
1302            pay_payroll_actions ppa_v
1303     where  pai_v.locked_action_id = paa_yea.assignment_action_id
1304     and    paa_v.assignment_action_id = pai_v.locking_action_id
1305     and    ppa_v.payroll_action_id = paa_v.payroll_action_id
1306     and    ppa_v.action_type = 'V')
1307   order by
1308     paa_yea.action_sequence desc;
1309     -- balance adjustment is not sequenced process but no comparison key so used as fuzzy sequence
1310 --
1311 begin
1312 --
1313   if g_debug
1314   and g_detail_debug = 'Y' then
1315     hr_utility.set_location(l_proc,0);
1316   end if;
1317 --
1318   g_data_sal_tbl(p_assignment_action_id).sal_act_efd := p_data_ass_effective_date;
1319   g_data_sal_tbl(p_assignment_action_id).sal_act_erd := p_data_ass_date_earned;
1320   g_data_sal_tbl(p_assignment_action_id).sal_act_pay := p_data_ass_payroll_id;
1321   --
1322   g_data_sal_tbl(p_assignment_action_id).sal_pay_txbl_mon       := pay_jp_balance_pkg.get_balance_value(c_b_sal_txbl_ern_mon_run_db_id,p_assignment_action_id);
1323   g_data_sal_tbl(p_assignment_action_id).sal_pay_txbl_kind      := pay_jp_balance_pkg.get_balance_value(c_b_sal_txbl_ern_k_run_db_id,p_assignment_action_id);
1324   g_data_sal_tbl(p_assignment_action_id).sal_pay_txbl_mon_nres  := pay_jp_balance_pkg.get_balance_value(c_b_sal_txbl_ern_m_n_run_db_id,p_assignment_action_id);
1325   g_data_sal_tbl(p_assignment_action_id).sal_pay_txbl_kind_nres := pay_jp_balance_pkg.get_balance_value(c_b_sal_txbl_ern_k_n_run_db_id,p_assignment_action_id);
1326   g_data_sal_tbl(p_assignment_action_id).sal_pay_txbl           := g_data_sal_tbl(p_assignment_action_id).sal_pay_txbl_mon
1327                                                                    + g_data_sal_tbl(p_assignment_action_id).sal_pay_txbl_kind
1328                                                                    + g_data_sal_tbl(p_assignment_action_id).sal_pay_txbl_mon_nres
1329                                                                    + g_data_sal_tbl(p_assignment_action_id).sal_pay_txbl_kind_nres;
1330   -- include retro pay
1331   g_data_sal_tbl(p_assignment_action_id).sal_pay_pay            := pay_jp_balance_pkg.get_balance_value(c_b_sal_ern_run_db_id,p_assignment_action_id);
1332   g_data_sal_tbl(p_assignment_action_id).sal_pay_ntxbl          := g_data_sal_tbl(p_assignment_action_id).sal_pay_pay - g_data_sal_tbl(p_assignment_action_id).sal_pay_txbl;
1333   g_data_sal_tbl(p_assignment_action_id).sal_pay_hi             := pay_jp_balance_pkg.get_balance_value(c_b_sal_hi_prem_run_db_id,p_assignment_action_id);
1334   g_data_sal_tbl(p_assignment_action_id).sal_pay_wp             := pay_jp_balance_pkg.get_balance_value(c_b_sal_wp_prem_run_db_id,p_assignment_action_id);
1335   g_data_sal_tbl(p_assignment_action_id).sal_pay_wpf            := pay_jp_balance_pkg.get_balance_value(c_b_sal_wpf_prem_run_db_id,p_assignment_action_id);
1336   g_data_sal_tbl(p_assignment_action_id).sal_pay_ei             := pay_jp_balance_pkg.get_balance_value(c_b_sal_ei_prem_run_db_id,p_assignment_action_id);
1337   g_data_sal_tbl(p_assignment_action_id).sal_pay_si             := pay_jp_balance_pkg.get_balance_value(c_b_sal_si_prem_run_db_id,p_assignment_action_id);
1338   g_data_sal_tbl(p_assignment_action_id).sal_pay_ci             := nvl(pay_jp_balance_pkg.get_result_value_number(c_sal_ci_prem_ee_elm_id,c_sal_ci_prem_ee_iv_id,p_assignment_action_id),0)
1339                                                                  + nvl(pay_jp_balance_pkg.get_result_value_number(c_sal_ci_prem_ee_trm_elm_id,c_sal_ci_prem_ee_trm_iv_id,p_assignment_action_id),0)
1340                                                                  + nvl(pay_jp_balance_pkg.get_result_value_number(c_sal_ci_prem_ee_nres_elm_id,c_sal_ci_prem_ee_nres_iv_id,p_assignment_action_id),0)
1341                                                                  + nvl(pay_jp_balance_pkg.get_result_value_number(c_sal_ci_prem_ee_n_trm_elm_id,c_sal_ci_prem_ee_n_trm_iv_id,p_assignment_action_id),0);
1342   g_data_sal_tbl(p_assignment_action_id).sal_pay_dct_earn       := pay_jp_balance_pkg.get_balance_value(c_b_sal_amt_aft_si_run_db_id,p_assignment_action_id);
1343   --
1344   -- dependent
1345   --
1346   g_data_sal_tbl(p_assignment_action_id).sal_pay_itx_type               := pay_jp_balance_pkg.get_result_value_char(c_sal_itx_elm_id,c_sal_itx_type_iv_id,p_assignment_action_id);
1347   g_data_sal_tbl(p_assignment_action_id).sal_pay_disable_type           := pay_jp_balance_pkg.get_result_value_char(c_sal_itx_elm_id,c_sal_disable_type_iv_id,p_assignment_action_id);
1348   g_data_sal_tbl(p_assignment_action_id).sal_pay_widow_type             := pay_jp_balance_pkg.get_result_value_char(c_sal_itx_elm_id,c_sal_widow_type_iv_id,p_assignment_action_id);
1349   g_data_sal_tbl(p_assignment_action_id).sal_pay_working_student_type   := pay_jp_balance_pkg.get_result_value_char(c_sal_itx_elm_id,c_sal_wrk_student_type_iv_id,p_assignment_action_id);
1350   g_data_sal_tbl(p_assignment_action_id).sal_pay_spouse_type            := pay_jp_balance_pkg.get_result_value_char(c_sal_itx_elm_id,c_sal_spouse_type_iv_id,p_assignment_action_id);
1351   g_data_sal_tbl(p_assignment_action_id).sal_pay_spouse_disable_type    := pay_jp_balance_pkg.get_result_value_char(c_sal_itx_elm_id,c_sal_spouse_disb_type_iv_id,p_assignment_action_id);
1352   g_data_sal_tbl(p_assignment_action_id).sal_pay_num_of_dep             := pay_jp_balance_pkg.get_result_value_char(c_sal_itx_elm_id,c_sal_num_of_dep_iv_id,p_assignment_action_id);
1353   g_data_sal_tbl(p_assignment_action_id).sal_pay_num_of_gen_disabled    := pay_jp_balance_pkg.get_result_value_char(c_sal_itx_elm_id,c_sal_num_of_gen_disb_iv_id,p_assignment_action_id);
1354   g_data_sal_tbl(p_assignment_action_id).sal_pay_num_of_sev_disabled    := pay_jp_balance_pkg.get_result_value_char(c_sal_itx_elm_id,c_sal_num_of_sev_disb_iv_id,p_assignment_action_id);
1355   g_data_sal_tbl(p_assignment_action_id).sal_pay_num_of_sev_disabled_lt := pay_jp_balance_pkg.get_result_value_char(c_sal_itx_elm_id,c_sal_num_of_sev_disb_lt_iv_id,p_assignment_action_id);
1356   --
1357   calc_num_of_dpts(
1358     p_itx_type               => g_data_sal_tbl(p_assignment_action_id).sal_pay_itx_type,
1359     p_disable_type           => g_data_sal_tbl(p_assignment_action_id).sal_pay_disable_type,
1360     p_widow_type             => g_data_sal_tbl(p_assignment_action_id).sal_pay_widow_type,
1361     p_working_student_type   => g_data_sal_tbl(p_assignment_action_id).sal_pay_working_student_type,
1362     p_spouse_type            => g_data_sal_tbl(p_assignment_action_id).sal_pay_spouse_type,
1363     p_spouse_disable_type    => g_data_sal_tbl(p_assignment_action_id).sal_pay_spouse_disable_type,
1364     p_num_of_dep             => g_data_sal_tbl(p_assignment_action_id).sal_pay_num_of_dep,
1365     p_num_of_gen_disabled    => g_data_sal_tbl(p_assignment_action_id).sal_pay_num_of_gen_disabled,
1366     p_num_of_sev_disabled    => g_data_sal_tbl(p_assignment_action_id).sal_pay_num_of_sev_disabled,
1367     p_num_of_sev_disabled_lt => g_data_sal_tbl(p_assignment_action_id).sal_pay_num_of_sev_disabled_lt,
1368     p_num_of_spouse          => o_num_of_spouse,
1369     p_num_of_dpt             => o_num_of_dpt,
1370     p_num_of_dpts            => o_num_of_dpts);
1371   --
1372   g_data_sal_tbl(p_assignment_action_id).sal_pay_num_of_spouse := o_num_of_spouse;
1373   g_data_sal_tbl(p_assignment_action_id).sal_pay_num_of_dpt    := o_num_of_dpt;
1374   g_data_sal_tbl(p_assignment_action_id).sal_pay_dpts          := o_num_of_dpts;
1375   g_data_sal_tbl(p_assignment_action_id).sal_pay_itx           := pay_jp_balance_pkg.get_balance_value(c_b_sal_itx_run_db_id,p_assignment_action_id);
1376   g_data_sal_tbl(p_assignment_action_id).sal_pay_ltx           := pay_jp_balance_pkg.get_balance_value(c_b_sal_ltx_run_db_id,p_assignment_action_id);
1377   --
1378   l_lump_sum_method_eev := pay_jp_balance_pkg.get_entry_value_char(c_lump_sum_method_iv_id,p_assignment_id,p_data_ass_date_earned);
1379   if nvl(l_lump_sum_method_eev,'N') = 'SALARY' then
1380     g_data_sal_tbl(p_assignment_action_id).sal_pay_ltx_lump    := pay_jp_balance_pkg.get_balance_value(c_b_com_ltx_lump_sum_run_db_id,p_assignment_action_id);
1381   end if;
1382   g_data_sal_tbl(p_assignment_action_id).sal_pay_dct           := pay_jp_balance_pkg.get_balance_value(c_b_sal_dct_run_db_id,p_assignment_action_id);
1383   g_data_sal_tbl(p_assignment_action_id).sal_pay_net_pay       := pay_jp_balance_pkg.get_balance_value(c_b_sal_net_pay_run_db_id,p_assignment_action_id);
1384 --
1385   open csr_pay_yea_data;
1386   loop
1387   --
1388     fetch csr_pay_yea_data into l_yea_assignment_action_id;
1389     exit when csr_pay_yea_data%notfound;
1390   --
1391     g_data_sal_tbl(p_assignment_action_id).sal_pay_yea_itx := nvl(g_data_sal_tbl(p_assignment_action_id).sal_pay_yea_itx,0) + pay_jp_balance_pkg.get_balance_value(c_b_yea_tax_pay_run_db_id,l_yea_assignment_action_id);
1392   --
1393     if g_debug
1394     and g_detail_debug = 'Y' then
1395       hr_utility.trace('l_yea_assignment_action_id : '||to_char(l_yea_assignment_action_id));
1396     end if;
1397   --
1398   end loop;
1399   close csr_pay_yea_data;
1400   --
1401   --if l_yea_assignment_action_id is not null then
1402   ----
1403   --  g_data_sal_tbl(p_assignment_action_id).sal_pay_yea_itx := pay_jp_balance_pkg.get_balance_value(c_b_yea_tax_pay_ytd_db_id,l_yea_assignment_action_id);
1404   ----
1405   --end if;
1406   --
1407   g_data_sal_tbl(p_assignment_action_id).sal_pay_net_itx      := g_data_sal_tbl(p_assignment_action_id).sal_pay_itx + nvl(g_data_sal_tbl(p_assignment_action_id).sal_pay_yea_itx,0);
1408   g_data_sal_tbl(p_assignment_action_id).sal_pay_calc_dct     := g_data_sal_tbl(p_assignment_action_id).sal_pay_dct + nvl(g_data_sal_tbl(p_assignment_action_id).sal_pay_yea_itx,0);
1409   g_data_sal_tbl(p_assignment_action_id).sal_pay_calc_net_pay := g_data_sal_tbl(p_assignment_action_id).sal_pay_net_pay - nvl(g_data_sal_tbl(p_assignment_action_id).sal_pay_yea_itx,0);
1410 --
1411   if g_debug
1412   and g_detail_debug = 'Y' then
1413     hr_utility.trace('p_assignment_action_id     : '||to_char(p_assignment_action_id));
1414     hr_utility.trace('g_data_sal_tbl.count       : '||to_char(g_data_sal_tbl.count));
1415     hr_utility.set_location(l_proc,1000);
1416   end if;
1417 --
1418 end set_data_sal_tbl;
1419 --
1420 -- -------------------------------------------------------------------------
1421 -- set_data_bon_tbl
1422 -- -------------------------------------------------------------------------
1423 procedure set_data_bon_tbl(
1424   p_assignment_action_id    in number,
1425   p_assignment_id           in number,
1426   p_data_ass_effective_date in date,
1427   p_data_ass_date_earned    in date,
1428   p_data_ass_payroll_id     in number,
1429   p_data_ass_proc_type      in varchar2)
1430 is
1431 --
1432   l_proc varchar2(80) := c_package||'set_data_bon_tbl';
1433 --
1434   l_b_txbl_ern_mon_run_db_id number;
1435   l_b_txbl_ern_k_run_db_id   number;
1436   l_b_txbl_ern_m_n_run_db_id number;
1437   l_b_txbl_ern_k_n_run_db_id number;
1438   l_b_ern_run_db_id          number;
1439   l_b_ei_prem_run_db_id      number;
1440   l_b_amt_aft_si_run_db_id   number;
1441   l_b_itx_run_db_id          number;
1442   l_b_dct_run_db_id          number;
1443   l_b_net_pay_run_db_id      number;
1444 --
1445   l_pay_hi  number;
1446   l_pay_wp  number;
1447   l_pay_wpf number;
1448 --
1449   l_itx_elm_id                   number;
1450   l_itx_type_iv_id               number;
1451   l_disable_type_iv_id           number;
1452   l_widow_type_iv_id             number;
1453   l_working_student_type_iv_id   number;
1454   l_spouse_type_iv_id            number;
1455   l_spouse_disable_type_iv_id    number;
1456   l_num_of_dep_iv_id             number;
1457   l_num_of_gen_disabled_iv_id    number;
1458   l_num_of_sev_disabled_iv_id    number;
1459   l_num_of_sev_disabled_lt_iv_id number;
1460   l_itx_rate_iv_id               number;
1461 --
1462   o_num_of_spouse number;
1463   o_num_of_dpt    number;
1464   o_num_of_dpts   number;
1465 --
1466   l_yea_assignment_action_id number;
1467 --
1468   l_lump_sum_method_eev varchar2(60);
1469   l_bon_itx_rate varchar2(60);
1470 --
1471   cursor csr_pay_yea_data
1472   is
1473   select /*+ ORDERED */
1474          paa_yea.assignment_action_id
1475   from   pay_assignment_actions paa_bon,
1476          pay_payroll_actions ppa_bon,
1477          pay_action_interlocks pai_bon,
1478          pay_pre_payments ppp_pp,
1479          pay_assignment_actions paa_pp,
1480          pay_payroll_actions ppa_pp,
1481          pay_action_interlocks pai_yea,
1482          pay_assignment_actions paa_yea,
1483          pay_payroll_actions ppa_yea
1484   where paa_bon.assignment_action_id = p_assignment_action_id
1485   and   ppa_bon.payroll_action_id = paa_bon.payroll_action_id
1486   and   pai_bon.locked_action_id = paa_bon.assignment_action_id
1487   and   ppp_pp.assignment_action_id = pai_bon.locking_action_id
1488   and   paa_pp.assignment_action_id = ppp_pp.assignment_action_id
1489   and   paa_pp.action_status = 'C'
1490   and   ppa_pp.payroll_action_id = paa_pp.payroll_action_id
1491   and   ppa_pp.action_type in ('P','U')
1492   and   ppa_pp.effective_date = ppa_bon.effective_date
1493   and   pai_yea.locking_action_id = paa_pp.assignment_action_id
1494   and   paa_yea.assignment_action_id = pai_yea.locked_action_id
1495   and   paa_yea.action_status = 'C'
1496   and   ppa_yea.payroll_action_id = paa_yea.payroll_action_id
1497   and   ppa_yea.action_type in ('R','Q','B')
1498   and   decode(nvl(ppa_yea.element_set_id,-1),
1499           c_yea_ele_set_id,ppa_yea.date_earned,
1500           c_rey_ele_set_id,ppa_yea.date_earned,ppa_yea.effective_date)
1501         between g_effective_soy and g_effective_eom
1502   and   nvl(ppa_yea.element_type_id,c_yea_itx_elm_id) in (c_yea_itx_elm_id, c_rey_itx_elm_id)
1503   and   decode(nvl(ppa_yea.element_type_id,-1),-1,nvl(ppa_yea.element_set_id,-1),c_yea_ele_set_id) in (
1504           c_yea_ele_set_id,
1505           c_rey_ele_set_id,
1506           c_yea_cust_ele_set_id,
1507           c_rey_cust_ele_set_id,
1508           -1)
1509   and   decode(nvl(ppa_yea.element_type_id,-1),-1,decode(nvl(ppa_yea.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa_yea.assignment_action_id,ppa_yea.action_type),'X'),'YEA'),'YEA') = 'YEA'
1510   and not exists(
1511     select /*+ ORDERED */
1512            null
1513     from   pay_action_interlocks pai_v,
1514            pay_assignment_actions paa_v,
1515            pay_payroll_actions ppa_v
1516     where  pai_v.locked_action_id = paa_yea.assignment_action_id
1517     and    paa_v.assignment_action_id = pai_v.locking_action_id
1518     and    ppa_v.payroll_action_id = paa_v.payroll_action_id
1519     and    ppa_v.action_type = 'V')
1520   and not exists(
1521     select /*+ ORDERED */
1522            null
1523     from   pay_action_interlocks pai_sal,
1524            pay_assignment_actions paa_sal,
1525            pay_payroll_actions ppa_sal
1526     where  pai_sal.locking_action_id = ppp_pp.assignment_action_id
1527     and    paa_sal.assignment_action_id = pai_sal.locked_action_id
1528     and    paa_sal.action_status = 'C'
1529     and    ppa_sal.payroll_action_id = paa_sal.payroll_action_id
1530     and    ppa_sal.action_type in ('R','Q')
1531     and    nvl(ppa_sal.element_set_id,-1) in
1532              (c_sal_ele_set_id,
1533               c_sal_cust_ele_set_id,
1534               -1)
1535     and    decode(nvl(ppa_sal.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa_sal.assignment_action_id,ppa_sal.action_type),'X'),'SAL') = 'SAL'
1536     and    ppa_sal.effective_date
1537            between trunc(ppa_pp.effective_date,'MM') and last_day(ppa_pp.effective_date))
1538   order by
1539     paa_yea.action_sequence desc;
1540     -- balance adjustment is not sequenced process but no comparison key so used as fuzzy sequence
1541 --
1542 begin
1543 --
1544   if g_debug
1545   and g_detail_debug = 'Y' then
1546     hr_utility.set_location(l_proc,0);
1547   end if;
1548 --
1549   g_data_bon_tbl(p_assignment_action_id).bon_act_efd  := p_data_ass_effective_date;
1550   g_data_bon_tbl(p_assignment_action_id).bon_act_erd  := p_data_ass_date_earned;
1551   g_data_bon_tbl(p_assignment_action_id).bon_act_pay  := p_data_ass_payroll_id;
1552   g_data_bon_tbl(p_assignment_action_id).bon_act_type := p_data_ass_proc_type;
1553   --
1554   if p_data_ass_proc_type = 'BON' then
1555   --
1556     l_b_txbl_ern_mon_run_db_id       := c_b_bon_txbl_ern_mon_run_db_id;
1557     l_b_txbl_ern_k_run_db_id         := c_b_bon_txbl_ern_k_run_db_id;
1558     l_b_txbl_ern_m_n_run_db_id       := c_b_bon_txbl_ern_m_n_run_db_id;
1559     l_b_txbl_ern_k_n_run_db_id       := c_b_bon_txbl_ern_k_n_run_db_id;
1560     l_b_ern_run_db_id                := c_b_bon_ern_run_db_id;
1561     l_b_ei_prem_run_db_id            := c_b_bon_ei_prem_run_db_id;
1562     l_b_amt_aft_si_run_db_id         := c_b_bon_amt_aft_si_run_db_id;
1563     l_b_itx_run_db_id                := c_b_bon_itx_run_db_id;
1564     l_b_dct_run_db_id                := c_b_bon_dct_run_db_id;
1565     l_b_net_pay_run_db_id            := c_b_bon_net_pay_run_db_id;
1566     l_pay_hi                         := pay_jp_balance_pkg.get_balance_value(c_b_bon_hi_prem_run_db_id,p_assignment_action_id);
1567     l_pay_wp                         := pay_jp_balance_pkg.get_balance_value(c_b_bon_wp_prem_run_db_id,p_assignment_action_id);
1568     l_pay_wpf                        := pay_jp_balance_pkg.get_balance_value(c_b_bon_wpf_prem_run_db_id,p_assignment_action_id);
1569     l_itx_elm_id                     := c_bon_itx_elm_id;
1570     l_itx_type_iv_id                 := c_bon_itx_type_iv_id;
1571     l_disable_type_iv_id             := c_bon_disable_type_iv_id;
1572     l_widow_type_iv_id               := c_bon_widow_type_iv_id;
1573     l_working_student_type_iv_id     := c_bon_wrk_student_type_iv_id;
1574     l_spouse_type_iv_id              := c_bon_spouse_type_iv_id;
1575     l_spouse_disable_type_iv_id      := c_bon_spouse_disb_type_iv_id;
1576     l_num_of_dep_iv_id               := c_bon_num_of_dep_iv_id;
1577     l_num_of_gen_disabled_iv_id      := c_bon_num_of_gen_disb_iv_id;
1578     l_num_of_sev_disabled_iv_id      := c_bon_num_of_sev_disb_iv_id;
1579     l_num_of_sev_disabled_lt_iv_id   := c_bon_num_of_sev_disb_lt_iv_id;
1580     l_itx_rate_iv_id                 := c_bon_itx_rate_iv_id;
1581   --
1582   --elsif p_data_ass_proc_type = 'SPB' then
1583   else
1584   --
1585     l_b_txbl_ern_mon_run_db_id       := c_b_spb_txbl_ern_mon_run_db_id;
1586     l_b_txbl_ern_k_run_db_id         := c_b_spb_txbl_ern_k_run_db_id;
1587     l_b_txbl_ern_m_n_run_db_id       := c_b_spb_txbl_ern_m_n_run_db_id;
1588     l_b_txbl_ern_k_n_run_db_id       := c_b_spb_txbl_ern_k_n_run_db_id;
1589     l_b_ern_run_db_id                := c_b_spb_ern_run_db_id;
1590     l_b_ei_prem_run_db_id            := c_b_spb_ei_prem_run_db_id;
1591     l_b_amt_aft_si_run_db_id         := c_b_spb_amt_aft_si_run_db_id;
1592     l_b_itx_run_db_id                := c_b_spb_itx_run_db_id;
1593     l_b_dct_run_db_id                := c_b_spb_dct_run_db_id;
1594     l_b_net_pay_run_db_id            := c_b_spb_net_pay_run_db_id;
1595     l_itx_elm_id                     := c_spb_itx_elm_id;
1596     l_itx_type_iv_id                 := c_spb_itx_type_iv_id;
1597     l_disable_type_iv_id             := c_spb_disable_type_iv_id;
1598     l_widow_type_iv_id               := c_spb_widow_type_iv_id;
1599     l_working_student_type_iv_id     := c_spb_wrk_student_type_iv_id;
1600     l_spouse_type_iv_id              := c_spb_spouse_type_iv_id;
1601     l_spouse_disable_type_iv_id      := c_spb_spouse_disb_type_iv_id;
1602     l_num_of_dep_iv_id               := c_spb_num_of_dep_iv_id;
1603     l_num_of_gen_disabled_iv_id      := c_spb_num_of_gen_disb_iv_id;
1604     l_num_of_sev_disabled_iv_id      := c_spb_num_of_sev_disb_iv_id;
1605     l_num_of_sev_disabled_lt_iv_id   := c_spb_num_of_sev_disb_lt_iv_id;
1606     l_itx_rate_iv_id                 := c_spb_itx_rate_iv_id;
1607   --
1608   end if;
1609   --
1610   g_data_bon_tbl(p_assignment_action_id).bon_pay_txbl_mon       := pay_jp_balance_pkg.get_balance_value(l_b_txbl_ern_mon_run_db_id,p_assignment_action_id);
1611   g_data_bon_tbl(p_assignment_action_id).bon_pay_txbl_kind      := pay_jp_balance_pkg.get_balance_value(l_b_txbl_ern_k_run_db_id,p_assignment_action_id);
1612   g_data_bon_tbl(p_assignment_action_id).bon_pay_txbl_mon_nres  := pay_jp_balance_pkg.get_balance_value(l_b_txbl_ern_m_n_run_db_id,p_assignment_action_id);
1613   g_data_bon_tbl(p_assignment_action_id).bon_pay_txbl_kind_nres := pay_jp_balance_pkg.get_balance_value(l_b_txbl_ern_k_n_run_db_id,p_assignment_action_id);
1614   g_data_bon_tbl(p_assignment_action_id).bon_pay_txbl           := g_data_bon_tbl(p_assignment_action_id).bon_pay_txbl_mon
1615                                                                    + g_data_bon_tbl(p_assignment_action_id).bon_pay_txbl_kind
1616                                                                    + g_data_bon_tbl(p_assignment_action_id).bon_pay_txbl_mon_nres
1617                                                                    + g_data_bon_tbl(p_assignment_action_id).bon_pay_txbl_kind_nres;
1618   -- include retro pay
1619   g_data_bon_tbl(p_assignment_action_id).bon_pay_pay            := pay_jp_balance_pkg.get_balance_value(l_b_ern_run_db_id,p_assignment_action_id);
1620   g_data_bon_tbl(p_assignment_action_id).bon_pay_ntxbl          := g_data_bon_tbl(p_assignment_action_id).bon_pay_pay - g_data_bon_tbl(p_assignment_action_id).bon_pay_txbl;
1621   g_data_bon_tbl(p_assignment_action_id).bon_pay_hi             := l_pay_hi;
1622   g_data_bon_tbl(p_assignment_action_id).bon_pay_wp             := l_pay_wp;
1623   g_data_bon_tbl(p_assignment_action_id).bon_pay_wpf            := l_pay_wpf;
1624   g_data_bon_tbl(p_assignment_action_id).bon_pay_ei             := pay_jp_balance_pkg.get_balance_value(l_b_ei_prem_run_db_id,p_assignment_action_id);
1625   --
1626   if p_data_ass_proc_type = 'BON' then
1627   --
1628     g_data_bon_tbl(p_assignment_action_id).bon_pay_si   := pay_jp_balance_pkg.get_balance_value(c_b_bon_si_prem_run_db_id,p_assignment_action_id);
1629     g_data_bon_tbl(p_assignment_action_id).bon_pay_ci := nvl(pay_jp_balance_pkg.get_result_value_number(c_bon_ci_prem_ee_elm_id,c_bon_ci_prem_ee_iv_id,p_assignment_action_id),0)
1630                                                        + nvl(pay_jp_balance_pkg.get_result_value_number(c_bon_ci_prem_ee_nres_elm_id,c_bon_ci_prem_ee_nres_iv_id,p_assignment_action_id),0);
1631     l_lump_sum_method_eev := pay_jp_balance_pkg.get_entry_value_char(c_lump_sum_method_iv_id,p_assignment_id,p_data_ass_date_earned);
1632     if nvl(l_lump_sum_method_eev,'N') = 'BONUS' then
1633       g_data_bon_tbl(p_assignment_action_id).bon_pay_ltx_lump := pay_jp_balance_pkg.get_balance_value(c_b_com_ltx_lump_sum_run_db_id,p_assignment_action_id);
1634     end if;
1635 --
1636   --elsif p_data_ass_proc_type = 'SPB' then
1637   else
1638   --
1639     g_data_bon_tbl(p_assignment_action_id).bon_pay_si := g_data_bon_tbl(p_assignment_action_id).bon_pay_ei;
1640   --
1641   end if;
1642   --
1643   g_data_bon_tbl(p_assignment_action_id).bon_pay_dct_earn       := pay_jp_balance_pkg.get_balance_value(l_b_amt_aft_si_run_db_id,p_assignment_action_id);
1644   --
1645   -- dependent
1646   --
1647   g_data_bon_tbl(p_assignment_action_id).bon_pay_itx_type               := pay_jp_balance_pkg.get_result_value_char(l_itx_elm_id,l_itx_type_iv_id,p_assignment_action_id);
1648   g_data_bon_tbl(p_assignment_action_id).bon_pay_disable_type           := pay_jp_balance_pkg.get_result_value_char(l_itx_elm_id,l_disable_type_iv_id,p_assignment_action_id);
1649   g_data_bon_tbl(p_assignment_action_id).bon_pay_widow_type             := pay_jp_balance_pkg.get_result_value_char(l_itx_elm_id,l_widow_type_iv_id,p_assignment_action_id);
1650   g_data_bon_tbl(p_assignment_action_id).bon_pay_working_student_type   := pay_jp_balance_pkg.get_result_value_char(l_itx_elm_id,l_working_student_type_iv_id,p_assignment_action_id);
1651   g_data_bon_tbl(p_assignment_action_id).bon_pay_spouse_type            := pay_jp_balance_pkg.get_result_value_char(l_itx_elm_id,l_spouse_type_iv_id,p_assignment_action_id);
1652   g_data_bon_tbl(p_assignment_action_id).bon_pay_spouse_disable_type    := pay_jp_balance_pkg.get_result_value_char(l_itx_elm_id,l_spouse_disable_type_iv_id,p_assignment_action_id);
1653   g_data_bon_tbl(p_assignment_action_id).bon_pay_num_of_dep             := pay_jp_balance_pkg.get_result_value_char(l_itx_elm_id,l_num_of_dep_iv_id,p_assignment_action_id);
1654   g_data_bon_tbl(p_assignment_action_id).bon_pay_num_of_gen_disabled    := pay_jp_balance_pkg.get_result_value_char(l_itx_elm_id,l_num_of_gen_disabled_iv_id,p_assignment_action_id);
1655   g_data_bon_tbl(p_assignment_action_id).bon_pay_num_of_sev_disabled    := pay_jp_balance_pkg.get_result_value_char(l_itx_elm_id,l_num_of_sev_disabled_iv_id,p_assignment_action_id);
1656   g_data_bon_tbl(p_assignment_action_id).bon_pay_num_of_sev_disabled_lt := pay_jp_balance_pkg.get_result_value_char(l_itx_elm_id,l_num_of_sev_disabled_lt_iv_id,p_assignment_action_id);
1657   l_bon_itx_rate                                                        := pay_jp_balance_pkg.get_result_value_char(l_itx_elm_id,l_itx_rate_iv_id,p_assignment_action_id);
1658   --
1659   -- set null to other message except for tax rate
1660   if nvl(sign(instr(l_bon_itx_rate,c_persentage)),0) = 1 then
1661   --
1662     g_data_bon_tbl(p_assignment_action_id).bon_pay_itx_rate             := l_bon_itx_rate;
1663   --
1664   end if;
1665   --
1666   calc_num_of_dpts(
1667     p_itx_type               => g_data_bon_tbl(p_assignment_action_id).bon_pay_itx_type,
1668     p_disable_type           => g_data_bon_tbl(p_assignment_action_id).bon_pay_disable_type,
1669     p_widow_type             => g_data_bon_tbl(p_assignment_action_id).bon_pay_widow_type,
1670     p_working_student_type   => g_data_bon_tbl(p_assignment_action_id).bon_pay_working_student_type,
1671     p_spouse_type            => g_data_bon_tbl(p_assignment_action_id).bon_pay_spouse_type,
1672     p_spouse_disable_type    => g_data_bon_tbl(p_assignment_action_id).bon_pay_spouse_disable_type,
1673     p_num_of_dep             => g_data_bon_tbl(p_assignment_action_id).bon_pay_num_of_dep,
1674     p_num_of_gen_disabled    => g_data_bon_tbl(p_assignment_action_id).bon_pay_num_of_gen_disabled,
1675     p_num_of_sev_disabled    => g_data_bon_tbl(p_assignment_action_id).bon_pay_num_of_sev_disabled,
1676     p_num_of_sev_disabled_lt => g_data_bon_tbl(p_assignment_action_id).bon_pay_num_of_sev_disabled_lt,
1677     p_num_of_spouse          => o_num_of_spouse,
1678     p_num_of_dpt             => o_num_of_dpt,
1679     p_num_of_dpts            => o_num_of_dpts);
1680   --
1681   g_data_bon_tbl(p_assignment_action_id).bon_pay_num_of_spouse  := o_num_of_spouse;
1682   g_data_bon_tbl(p_assignment_action_id).bon_pay_num_of_dpt     := o_num_of_dpt;
1683   g_data_bon_tbl(p_assignment_action_id).bon_pay_dpts           := o_num_of_dpts;
1684   g_data_bon_tbl(p_assignment_action_id).bon_pay_itx            := pay_jp_balance_pkg.get_balance_value(l_b_itx_run_db_id,p_assignment_action_id);
1685   g_data_bon_tbl(p_assignment_action_id).bon_pay_dct            := pay_jp_balance_pkg.get_balance_value(l_b_dct_run_db_id,p_assignment_action_id);
1686   g_data_bon_tbl(p_assignment_action_id).bon_pay_net_pay        := pay_jp_balance_pkg.get_balance_value(l_b_net_pay_run_db_id,p_assignment_action_id);
1687 --
1688   open csr_pay_yea_data;
1689   loop
1690   --
1691     fetch csr_pay_yea_data into l_yea_assignment_action_id;
1692     exit when csr_pay_yea_data%notfound;
1693   --
1694     g_data_bon_tbl(p_assignment_action_id).bon_pay_yea_itx := nvl(g_data_bon_tbl(p_assignment_action_id).bon_pay_yea_itx,0) + pay_jp_balance_pkg.get_balance_value(c_b_yea_tax_pay_run_db_id,l_yea_assignment_action_id);
1695   --
1696     if g_debug
1697     and g_detail_debug = 'Y' then
1698       hr_utility.trace('l_yea_assignment_action_id : '||to_char(l_yea_assignment_action_id));
1699     end if;
1700   --
1701   end loop;
1702   close csr_pay_yea_data;
1703   --
1704   --if l_yea_assignment_action_id is not null then
1705   ----
1706   --  g_data_bon_tbl(p_assignment_action_id).bon_pay_yea_itx := pay_jp_balance_pkg.get_balance_value(c_b_yea_tax_pay_ytd_db_id,l_yea_assignment_action_id);
1707   ----
1708   --end if;
1709   --
1710   g_data_bon_tbl(p_assignment_action_id).bon_pay_net_itx      := g_data_bon_tbl(p_assignment_action_id).bon_pay_itx + nvl(g_data_bon_tbl(p_assignment_action_id).bon_pay_yea_itx,0);
1711   g_data_bon_tbl(p_assignment_action_id).bon_pay_calc_dct     := g_data_bon_tbl(p_assignment_action_id).bon_pay_dct + nvl(g_data_bon_tbl(p_assignment_action_id).bon_pay_yea_itx,0);
1712   g_data_bon_tbl(p_assignment_action_id).bon_pay_calc_net_pay := g_data_bon_tbl(p_assignment_action_id).bon_pay_net_pay - nvl(g_data_bon_tbl(p_assignment_action_id).bon_pay_yea_itx,0);
1713 --
1714   if g_debug
1715   and g_detail_debug = 'Y' then
1716     hr_utility.trace('p_assignment_action_id     : '||to_char(p_assignment_action_id));
1717     hr_utility.trace('g_data_bon_tbl.count       : '||to_char(g_data_bon_tbl.count));
1718     hr_utility.set_location(l_proc,1000);
1719   end if;
1720 --
1721 end set_data_bon_tbl;
1722 --
1723 -- -------------------------------------------------------------------------
1724 -- set_yea_wic_tbl
1725 -- -------------------------------------------------------------------------
1726 procedure set_yea_wic_tbl(
1727   p_assignment_action_id in number,
1728   p_assignment_id        in number,
1729   p_employee_number      in varchar2)
1730 is
1731 --
1732   l_proc varchar2(80) := c_package||'set_yea_wic_tbl';
1733 --
1734   l_certificate_info pay_jp_wic_pkg.t_certificate_info;
1735   l_prev_jobs pay_jp_wic_pkg.t_prev_jobs;
1736   l_submission_required_flag varchar2(1);
1737   l_withholding_tax_info pay_jp_wic_pkg.t_tax_info;
1738 --
1739   l_yea_wic_ind_tbl_cnt number := 0;
1740   l_yea_wic_add_ind_tbl_cnt number := 0;
1741 --
1742   l_yes varchar2(1);
1743 --
1744   l_assignment_id number;
1745   l_null_dummy number;
1746 --
1747   cursor csr_arch_pact_exist
1748   is
1749   select 'Y'
1750   from   dual
1751   where  not exists(
1752     select null
1753     from   hr_organization_information hoi,
1754            hr_all_organization_units hou
1755     where  hoi.org_information_context = 'CLASS'
1756     and    hoi.org_information1 = 'JP_TAX_SWOT'
1757     and    hoi.organization_id = nvl(g_itax_organization_id,hoi.organization_id)
1758     and    hou.organization_id = hoi.organization_id
1759     and    hou.business_group_id + 0 = g_business_group_id
1760     and    hou.date_from <= g_effective_eoy
1761     and    nvl(hou.date_to,hr_api.g_eot) >= g_effective_soy
1762     and    not exists(
1763       select null
1764       from   pay_payroll_actions ppa,
1765              pay_jp_itax_pact_v2 pjip
1766       where  ppa.business_group_id + 0 = g_business_group_id
1767       and    ppa.effective_date
1768              between g_effective_soy and g_effective_eoy
1769       and    ppa.action_type = 'X'
1770       and    ppa.report_type = 'JPTW'
1771       and    ppa.report_qualifier = 'JP'
1772       and    ppa.report_category = 'ARCHIVE'
1773       and    pjip.action_context_id = ppa.payroll_action_id
1774       and    nvl(pjip.itax_organization_id,hou.organization_id) = hou.organization_id
1775       and    pjip.effective_date
1776              between g_effective_soy and g_effective_eoy
1777       and    exists(
1778         select null
1779         from   pay_assignment_actions paa,
1780                pay_jp_itax_person_v2 pjips
1781         where  paa.payroll_action_id = ppa.payroll_action_id
1782         and    pjips.action_context_id = paa.assignment_action_id
1783         and    pjips.itax_organization_id = hoi.organization_id)));
1784 --
1785   cursor csr_yea_wic_proc
1786   is
1787   select /*+ ORDERED */
1788          pjwa.assignment_action_id,
1789          pjwa.assignment_id,
1790          pjwa.action_sequence,
1791          pjwa.effective_date,
1792          pjwa.date_earned,
1793          pjwa.itax_organization_id itx_org_id,
1794          pjwa.itax_category itx_type,
1795          pjwa.itax_yea_category itx_inc_flag,
1796          nvl(nvl(pap.prl_information1,g_bg_itax_dpnt_ref_type),'CTR_EE') dpnt_ref_type,
1797          nvl(fnd_date.canonical_to_date(pay_core_utils.get_parameter('ITAX_DPNT_EFFECTIVE_DATE',pjwa.legislative_parameters)),pjwa.effective_date) dpnt_effective_date,
1798          pp.person_id,
1799          pp.sex,
1800          pp.date_of_birth,
1801          pjwa.leaving_reason,
1802          pp.per_information18 last_name,
1803          pp.last_name last_name_kana,
1804          pjwa.employment_category
1805   from   pay_assignment_actions paa_yea,
1806          pay_jp_wic_assacts_v pjwa,
1807          pay_all_payrolls_f pap,
1808          per_all_people_f pp
1809   where  paa_yea.assignment_action_id = p_assignment_action_id
1810   and    pjwa.payroll_action_id = paa_yea.payroll_action_id
1811   and    pap.payroll_id = pjwa.payroll_id
1812   and    pjwa.effective_date
1813          between pap.effective_start_date and pap.effective_end_date
1814   and    pp.person_id = pjwa.person_id
1815   and    pjwa.effective_date
1816          between pp.effective_start_date and pp.effective_end_date
1817   and    pjwa.itax_yea_category = '0';
1818 --
1819   -- archive only one for each year
1820   cursor csr_yea_wic_arch
1821   is
1822   select /*+ ORDERED */
1823          pjia.assignment_action_id,
1824          pjia.person_id,
1825          pjia.assignment_id,
1826          pjia.action_sequence,
1827          pjia.effective_date,
1828          pjia.date_earned,
1829          pjip.itax_organization_id itx_org_id,
1830          pjia.itax_category itx_type,
1831          pjia.itax_yea_category itx_inc_flag,
1832          pjio.dependent_spouse_exists_kou,
1833          pjio.dependent_spouse_no_exist_kou,
1834          pjio.dependent_spouse_exists_otsu,
1835          pjio.dependent_spouse_no_exist_otsu,
1836          pjio.aged_spouse_exists,
1837          fnd_number.canonical_to_number(pjio.num_dependents_kou) num_dependents_kou,
1838          fnd_number.canonical_to_number(pjio.num_dependents_otsu) num_dependents_otsu,
1839          fnd_number.canonical_to_number(pjio.num_specifieds_kou) num_specifieds_kou,
1840          fnd_number.canonical_to_number(pjio.num_specifieds_otsu) num_specifieds_otsu,
1841          fnd_number.canonical_to_number(pjio.num_ageds_kou) num_ageds_kou,
1842          fnd_number.canonical_to_number(pjio.num_ageds_otsu) num_ageds_otsu,
1843          fnd_number.canonical_to_number(pjio.num_aged_parents_partial) num_aged_parents_partial,
1844          fnd_number.canonical_to_number(pjio.num_disableds) num_disableds,
1845          fnd_number.canonical_to_number(pjio.num_special_disableds) num_special_disableds,
1846          fnd_number.canonical_to_number(pjio.num_special_disableds_partial) num_special_disableds_partial,
1847          fnd_number.canonical_to_number(pjit.taxable_income) taxable_income,
1848          --fnd_number.canonical_to_number(pjit.withholding_itax) withholding_itax,
1849          fnd_number.canonical_to_number(pjit.net_taxable_income) net_taxable_income,
1850          fnd_number.canonical_to_number(pjit.social_insurance_premium) social_insurance_premium,
1851          fnd_number.canonical_to_number(pjit.life_insurance_premium_exempt) life_insurance_premium_exempt,
1852          fnd_number.canonical_to_number(pjit.damage_insurance_premium_exem) damage_insurance_premium_exem,
1853          fnd_number.canonical_to_number(pjit.spouse_special_exempt) spouse_special_exempt,
1854          fnd_number.canonical_to_number(pjit.total_income_exempt) total_income_exempt,
1855          fnd_number.canonical_to_number(pjit.housing_tax_reduction) housing_tax_reduction,
1856          fnd_number.canonical_to_number(pjit.itax_adjustment2) itax_adjustment,
1857          fnd_number.canonical_to_number(pjit.spouse_net_taxable_income) spouse_net_taxable_income,
1858          fnd_number.canonical_to_number(pjit.private_pension_premium) private_pension_premium,
1859          fnd_number.canonical_to_number(pjit.long_damage_insurance_premium) long_damage_insurance_premium,
1860          fnd_number.canonical_to_number(pjit.mutual_aid_premium) mutual_aid_premium,
1861          --fnd_number.canonical_to_number(pjit.disaster_tax_reduction) disaster_tax_reduction,
1862          --pjio.husband_exists,
1863          --pjio.minor,
1864          --pjio.otsu,
1865          pjio.special_disabled,
1866          pjio.disabled,
1867          --pjio.aged,
1868          pjio.widow,
1869          pjio.special_widow,
1870          pjio.widower,
1871          pjio.working_student
1872          --pjio.deceased_termination,
1873          --pjio.disastered,
1874          --pjio.foreigner,
1875          --pjit.prev_job_employer_name_kanji prev_job_employer_name,
1876          --pjit.prev_job_employer_name_kana,
1877          --pjit.prev_job_employer_add_kanji prev_job_employer_add,
1878          --pjit.prev_job_employer_add_kana,
1879          --pjit.prev_job_foreign_address,
1880          --fnd_number.canonical_to_number(pjit.prev_job_taxable_income) prev_job_taxable_income,
1881          --fnd_number.canonical_to_number(pjit.prev_job_itax) prev_job_itax,
1882          --fnd_number.canonical_to_number(pjit.prev_job_si_prem) prev_job_si_prem,
1883          --null prev_job_termination_date,
1884          --fnd_number.canonical_to_number(pjit.prev_job_termination_year) prev_job_termination_year,
1885          --fnd_number.canonical_to_number(pjit.prev_job_termination_month) prev_job_termination_month,
1886          --fnd_number.canonical_to_number(pjit.prev_job_termination_day) prev_job_termination_day,
1887          --null housing_residence_date,
1888          --fnd_number.canonical_to_number(pjit.housing_residence_year) housing_residence_year,
1889          --fnd_number.canonical_to_number(pjit.housing_residence_month) housing_residence_month,
1890          --fnd_number.canonical_to_number(pjit.housing_residence_day) housing_residence_day
1891   from   pay_assignment_actions paa_yea,
1892          pay_assignment_actions paa_yea_all,
1893          pay_assignment_actions paa_iarch,
1894          pay_payroll_actions ppa_iarch,
1895          pay_jp_itax_person_v2 pjip,
1896          pay_jp_itax_arch_v2 pjia,
1897          pay_jp_itax_tax_v pjit,
1898          pay_jp_itax_other_v pjio
1899   where  paa_yea.assignment_action_id = p_assignment_action_id
1900   and    paa_yea_all.payroll_action_id = paa_yea.payroll_action_id
1901   -- use index for performance so that not join to pjia directory
1902   and    paa_iarch.assignment_id = paa_yea_all.assignment_id
1903   and    ppa_iarch.payroll_action_id = paa_iarch.payroll_action_id
1904   and    ppa_iarch.effective_date
1905          between g_effective_soy and g_effective_eoy
1906   and    ppa_iarch.action_type = 'X'
1907   and    ppa_iarch.report_type = 'JPTW'
1908   and    ppa_iarch.report_qualifier = 'JP'
1909   and    ppa_iarch.report_category = 'ARCHIVE'
1910   and    pjip.action_context_id = paa_iarch.assignment_action_id
1911   and    pjia.action_context_id = pjip.action_context_id
1912   and    pjia.effective_date = pjip.effective_date
1913   and    pjia.itax_yea_category = '0'
1914   and    pjia.assignment_action_id = paa_yea_all.assignment_action_id
1915   and    pjit.action_context_id = pjip.action_context_id
1916   and    pjit.effective_date = pjip.effective_date
1917   and    pjio.action_context_id = pjip.action_context_id
1918   and    pjio.effective_date = pjip.effective_date;
1919 --
1920   cursor csr_yea_wic_proc_no_arch
1921   is
1922   select /*+ ORDERED */
1923          pjwa.assignment_action_id,
1924          pjwa.assignment_id,
1925          pjwa.action_sequence,
1926          pjwa.effective_date,
1927          pjwa.date_earned,
1928          pjwa.itax_organization_id itx_org_id,
1929          pjwa.itax_category itx_type,
1930          pjwa.itax_yea_category itx_inc_flag,
1931          nvl(nvl(pap.prl_information1,g_bg_itax_dpnt_ref_type),'CTR_EE') dpnt_ref_type,
1932          nvl(fnd_date.canonical_to_date(pay_core_utils.get_parameter('ITAX_DPNT_EFFECTIVE_DATE',pjwa.legislative_parameters)),pjwa.effective_date) dpnt_effective_date,
1933          pp.person_id,
1934          pp.sex,
1935          pp.date_of_birth,
1936          pjwa.leaving_reason,
1937          pp.per_information18 last_name,
1938          pp.last_name last_name_kana,
1939          pjwa.employment_category
1940   from   pay_assignment_actions paa_yea,
1941          pay_jp_wic_assacts_v pjwa,
1942          pay_all_payrolls_f pap,
1943          per_all_people_f pp
1944   where  paa_yea.assignment_action_id = p_assignment_action_id
1945   and    pjwa.payroll_action_id = paa_yea.payroll_action_id
1946   and    pap.payroll_id = pjwa.payroll_id
1947   and    pjwa.effective_date
1948          between pap.effective_start_date and pap.effective_end_date
1949   and    pp.person_id = pjwa.person_id
1950   and    pjwa.effective_date
1951          between pp.effective_start_date and pp.effective_end_date
1952   and    pjwa.itax_yea_category = '0'
1953   and not exists(
1954     select null
1955     from   pay_assignment_actions paa_iarch,
1956            pay_payroll_actions ppa_iarch,
1957            pay_jp_itax_person_v2 pjip,
1958            pay_jp_itax_arch_v2 pjia
1959     where  paa_iarch.assignment_id = paa_yea.assignment_id
1960     and    ppa_iarch.payroll_action_id = paa_iarch.payroll_action_id
1961     and    ppa_iarch.effective_date
1962            between g_effective_soy and g_effective_eoy
1963     and    ppa_iarch.action_type = 'X'
1964     and    ppa_iarch.report_type = 'JPTW'
1965     and    ppa_iarch.report_qualifier = 'JP'
1966     and    ppa_iarch.report_category = 'ARCHIVE'
1967     and    pjip.action_context_id = paa_iarch.assignment_action_id
1968     and    pjia.action_context_id = pjip.action_context_id
1969     and    pjia.effective_date = pjip.effective_date
1970     and    pjia.itax_yea_category = '0'
1971     and    pjia.assignment_action_id = paa_yea.assignment_action_id);
1972 --
1973   l_csr_yea_wic_proc csr_yea_wic_proc%rowtype;
1974   l_csr_yea_wic_arch csr_yea_wic_arch%rowtype;
1975   l_csr_yea_wic_proc_no_arch csr_yea_wic_proc_no_arch%rowtype;
1976 --
1977 begin
1978 --
1979   if g_debug
1980   and g_detail_debug = 'Y' then
1981     hr_utility.set_location(l_proc,0);
1982     hr_utility.trace('g_yea_wic_tbl.count : '||to_char(g_yea_wic_tbl.count));
1983   end if;
1984 --
1985   if g_yea_wic_tbl.count > 0 then
1986   --
1987     begin
1988     --
1989       l_assignment_id := g_yea_wic_tbl(p_assignment_action_id).assignment_id;
1990       l_null_dummy    := g_yea_wic_tbl(p_assignment_action_id).null_dummy;
1991     --
1992     exception
1993     when others then
1994     --
1995       null;
1996     --
1997     end;
1998   --
1999   end if;
2000 --
2001   if g_debug
2002   and g_detail_debug = 'Y' then
2003     hr_utility.set_location(l_proc,10);
2004     hr_utility.trace('l_assignment_id : '||to_char(l_assignment_id));
2005     hr_utility.trace('l_null_dummy    : '||to_char(l_null_dummy));
2006   end if;
2007 --
2008   if l_assignment_id is null
2009   and nvl(l_null_dummy,0) <> -1 then
2010   --
2011     -- set null for g_use_arch = N and no csr_arch_pact_exist row
2012     g_arch_pact_exist := null;
2013     --
2014     if g_use_arch is null then
2015     --
2016       open csr_arch_pact_exist;
2017       fetch csr_arch_pact_exist into g_arch_pact_exist;
2018       close csr_arch_pact_exist;
2019     --
2020     elsif g_use_arch = 'Y' then
2021     --
2022       g_arch_pact_exist := 'Y';
2023     --
2024     end if;
2025   --
2026     if g_debug
2027     and g_detail_debug = 'Y' then
2028       hr_utility.set_location(l_proc,20);
2029       hr_utility.trace('g_use_arch        : '||g_use_arch);
2030       hr_utility.trace('g_arch_pact_exist : '||g_arch_pact_exist);
2031     end if;
2032   --
2033     -- ------------------------------------------------------
2034     -- yea archive mode
2035     -- ------------------------------------------------------
2036     if nvl(g_arch_pact_exist,'N') = 'Y' then
2037     --
2038       if g_debug
2039       and g_detail_debug = 'Y' then
2040         hr_utility.trace('yea archive mode');
2041         hr_utility.set_location(l_proc,30);
2042       end if;
2043     --
2044       l_yes := c_arch_yes;
2045     --
2046       open csr_yea_wic_arch;
2047       loop
2048       --
2049         fetch csr_yea_wic_arch into l_csr_yea_wic_arch;
2050         exit when csr_yea_wic_arch%notfound;
2051       --
2052         l_prev_jobs.delete;
2053         --l_prev_jobs := null;
2054       --
2055         pay_jp_wic_pkg.get_prev_jobs(
2056           p_assignment_id        => l_csr_yea_wic_arch.assignment_id,
2057           p_action_sequence      => l_csr_yea_wic_arch.action_sequence,
2058           p_business_group_id    => g_business_group_id,
2059           p_effective_date       => l_csr_yea_wic_arch.effective_date,
2060           p_date_earned          => l_csr_yea_wic_arch.date_earned,
2061           p_itax_organization_id => l_csr_yea_wic_arch.itx_org_id,
2062           p_person_id            => l_csr_yea_wic_arch.person_id,
2063           p_prev_jobs            => l_prev_jobs);
2064       --
2065         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).wic_type                       := 'ARCH';
2066         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).assignment_id                  := l_csr_yea_wic_arch.assignment_id;
2067         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).action_sequence                := l_csr_yea_wic_arch.action_sequence;
2068         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).effective_date                 := l_csr_yea_wic_arch.effective_date;
2069         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).date_earned                    := l_csr_yea_wic_arch.date_earned;
2070         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).itx_org_id                     := l_csr_yea_wic_arch.itx_org_id;
2071         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).itx_type                       := l_csr_yea_wic_arch.itx_type;
2072         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).itx_inc_flag                   := l_csr_yea_wic_arch.itx_inc_flag;
2073         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).dependent_spouse_exists_kou    := l_csr_yea_wic_arch.dependent_spouse_exists_kou;
2074         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).dependent_spouse_no_exist_kou  := l_csr_yea_wic_arch.dependent_spouse_no_exist_kou;
2075         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).dependent_spouse_exists_otsu   := l_csr_yea_wic_arch.dependent_spouse_exists_otsu;
2076         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).dependent_spouse_no_exist_otsu := l_csr_yea_wic_arch.dependent_spouse_no_exist_otsu;
2077         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).aged_spouse_exists             := l_csr_yea_wic_arch.aged_spouse_exists;
2078         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).num_dependents_kou             := l_csr_yea_wic_arch.num_dependents_kou;
2079         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).num_dependents_otsu            := l_csr_yea_wic_arch.num_dependents_otsu;
2080         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).num_specifieds_kou             := l_csr_yea_wic_arch.num_specifieds_kou;
2081         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).num_specifieds_otsu            := l_csr_yea_wic_arch.num_specifieds_otsu;
2082         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).num_ageds_kou                  := l_csr_yea_wic_arch.num_ageds_kou;
2083         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).num_ageds_otsu                 := l_csr_yea_wic_arch.num_ageds_otsu;
2084         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).num_aged_parents_partial       := l_csr_yea_wic_arch.num_aged_parents_partial;
2085         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).num_disableds                  := l_csr_yea_wic_arch.num_disableds;
2086         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).num_special_disableds          := l_csr_yea_wic_arch.num_special_disableds;
2087         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).num_special_disableds_partial  := l_csr_yea_wic_arch.num_special_disableds_partial;
2088         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).taxable_income                 := l_csr_yea_wic_arch.taxable_income;
2089         --g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).withholding_itax               := l_csr_yea_wic_arch.withholding_itax;
2090         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).net_taxable_income             := l_csr_yea_wic_arch.net_taxable_income;
2091         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).social_insurance_premium       := l_csr_yea_wic_arch.social_insurance_premium;
2092         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).life_insurance_premium_exempt  := l_csr_yea_wic_arch.life_insurance_premium_exempt;
2093         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).damage_insurance_premium_exem  := l_csr_yea_wic_arch.damage_insurance_premium_exem;
2094         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).spouse_special_exempt          := l_csr_yea_wic_arch.spouse_special_exempt;
2095         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).total_income_exempt            := l_csr_yea_wic_arch.total_income_exempt;
2096         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).housing_tax_reduction          := l_csr_yea_wic_arch.housing_tax_reduction;
2097         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).yea_tax_pay                    := l_csr_yea_wic_arch.itax_adjustment;
2098         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).spouse_net_taxable_income      := l_csr_yea_wic_arch.spouse_net_taxable_income;
2099         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).private_pension_premium        := l_csr_yea_wic_arch.private_pension_premium;
2100         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).long_damage_insurance_premium  := l_csr_yea_wic_arch.long_damage_insurance_premium;
2101         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).mutual_aid_premium             := l_csr_yea_wic_arch.mutual_aid_premium;
2102         -- there is no souce in archive
2103         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).national_pens_premium          := null;
2104         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).disabled                       := pay_jp_report_pkg.decode_value(l_csr_yea_wic_arch.disabled = l_yes,'1','0');
2105         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).special_disabled               := pay_jp_report_pkg.decode_value(l_csr_yea_wic_arch.special_disabled = l_yes,'2','0');
2106         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).widow                          := pay_jp_report_pkg.decode_value(l_csr_yea_wic_arch.widow = l_yes,'1','0');
2107         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).special_widow                  := pay_jp_report_pkg.decode_value(l_csr_yea_wic_arch.special_widow = l_yes,'2','0');
2108         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).widower                        := pay_jp_report_pkg.decode_value(l_csr_yea_wic_arch.widower = l_yes,'1','0');
2109         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).working_student                := pay_jp_report_pkg.decode_value(l_csr_yea_wic_arch.working_student = l_yes,'1','0');
2110         g_yea_wic_tbl(l_csr_yea_wic_arch.assignment_action_id).prev_jobs                      := l_prev_jobs;
2111       --
2112         l_yea_wic_ind_tbl_cnt := l_yea_wic_ind_tbl_cnt + 1;
2113       --
2114       end loop;
2115       close csr_yea_wic_arch;
2116     --
2117       if g_debug
2118       and g_detail_debug = 'Y' then
2119         hr_utility.set_location(l_proc,40);
2120         hr_utility.trace('g_yea_wic_tbl.count   : '||to_char(g_yea_wic_tbl.count));
2121         hr_utility.trace('l_yea_wic_ind_tbl_cnt : '||to_char(l_yea_wic_ind_tbl_cnt));
2122       end if;
2123     --
2124       begin
2125       --
2126         l_assignment_id := g_yea_wic_tbl(p_assignment_action_id).assignment_id;
2127       --
2128       exception
2129       when others then
2130       --
2131         null;
2132       --
2133       end;
2134     --
2135       if g_debug
2136       and g_detail_debug = 'Y' then
2137         hr_utility.set_location(l_proc,50);
2138         hr_utility.trace('l_assignment_id : '||to_char(l_assignment_id));
2139       end if;
2140     --
2141       -- no archive, set wic with yea proc mode
2142       if l_assignment_id is null then
2143       --
2144         if g_debug
2145         and g_detail_debug = 'Y' then
2146           hr_utility.trace('proc mode in yea arch mode');
2147           hr_utility.set_location(l_proc,60);
2148         end if;
2149       --
2150         l_yes := c_ass_yes;
2151       --
2152         open csr_yea_wic_proc_no_arch;
2153         loop
2154         --
2155           fetch csr_yea_wic_proc_no_arch into l_csr_yea_wic_proc_no_arch;
2156           exit when csr_yea_wic_proc_no_arch%notfound;
2157         --
2158           l_certificate_info := null;
2159           --l_prev_jobs := null;
2160           --l_certificate_info.delete;
2161           l_prev_jobs.delete;
2162           l_submission_required_flag := null;
2163         --
2164           pay_jp_wic_pkg.get_certificate_info(
2165             p_assignment_action_id     => l_csr_yea_wic_proc_no_arch.assignment_action_id,
2166             p_assignment_id            => l_csr_yea_wic_proc_no_arch.assignment_id,
2167             p_action_sequence          => l_csr_yea_wic_proc_no_arch.action_sequence,
2168             p_business_group_id        => g_business_group_id,
2169             p_effective_date           => l_csr_yea_wic_proc_no_arch.effective_date,
2170             p_date_earned              => l_csr_yea_wic_proc_no_arch.date_earned,
2171             p_itax_organization_id     => l_csr_yea_wic_proc_no_arch.itx_org_id,
2172             p_itax_category            => l_csr_yea_wic_proc_no_arch.itx_type,
2173             p_itax_yea_category        => l_csr_yea_wic_proc_no_arch.itx_inc_flag,
2174             p_dpnt_ref_type            => l_csr_yea_wic_proc_no_arch.dpnt_ref_type,
2175             p_dpnt_effective_date      => l_csr_yea_wic_proc_no_arch.dpnt_effective_date,
2176             p_person_id                => l_csr_yea_wic_proc_no_arch.person_id,
2177             p_sex                      => l_csr_yea_wic_proc_no_arch.sex,
2178             p_date_of_birth            => l_csr_yea_wic_proc_no_arch.date_of_birth,
2179             p_leaving_reason           => l_csr_yea_wic_proc_no_arch.leaving_reason,
2180             p_last_name_kanji          => l_csr_yea_wic_proc_no_arch.last_name,
2181             p_last_name_kana           => l_csr_yea_wic_proc_no_arch.last_name_kana,
2182             p_employment_category      => l_csr_yea_wic_proc_no_arch.employment_category,
2183             p_magnetic_media_flag      => 'Y',
2184             p_certificate_info         => l_certificate_info,
2185             p_submission_required_flag => l_submission_required_flag,
2186             p_prev_jobs                => l_prev_jobs,
2187             p_withholding_tax_info     => l_withholding_tax_info);
2188         --
2189           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).wic_type                       := 'PROC';
2190           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).assignment_id                  := l_csr_yea_wic_proc_no_arch.assignment_id;
2191           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).action_sequence                := l_csr_yea_wic_proc_no_arch.action_sequence;
2192           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).effective_date                 := l_csr_yea_wic_proc_no_arch.effective_date;
2193           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).date_earned                    := l_csr_yea_wic_proc_no_arch.date_earned;
2194           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).itx_org_id                     := l_csr_yea_wic_proc_no_arch.itx_org_id;
2195           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).itx_type                       := l_csr_yea_wic_proc_no_arch.itx_type;
2196           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).itx_inc_flag                   := l_csr_yea_wic_proc_no_arch.itx_inc_flag;
2197           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).dependent_spouse_exists_kou    := l_certificate_info.dep_spouse_exists_kou;
2198           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).dependent_spouse_no_exist_kou  := l_certificate_info.dep_spouse_not_exist_kou;
2199           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).dependent_spouse_exists_otsu   := l_certificate_info.dep_spouse_exists_otsu;
2200           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).dependent_spouse_no_exist_otsu := l_certificate_info.dep_spouse_not_exist_otsu;
2201           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).aged_spouse_exists             := l_certificate_info.aged_spouse_exists;
2202           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).num_dependents_kou             := l_certificate_info.num_deps_kou;
2203           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).num_dependents_otsu            := l_certificate_info.num_deps_otsu;
2204           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).num_specifieds_kou             := l_certificate_info.num_specifieds_kou;
2205           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).num_specifieds_otsu            := l_certificate_info.num_specifieds_otsu;
2206           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).num_ageds_kou                  := l_certificate_info.num_ageds_kou;
2207           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).num_ageds_otsu                 := l_certificate_info.num_ageds_otsu;
2208           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).num_aged_parents_partial       := l_certificate_info.num_aged_parents_lt;
2209           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).num_disableds                  := l_certificate_info.num_disableds;
2210           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).num_special_disableds          := l_certificate_info.num_svr_disableds;
2211           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).num_special_disableds_partial  := l_certificate_info.num_svr_disableds_lt;
2212           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).taxable_income                 := l_certificate_info.tax_info.taxable_income;
2213           --g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).withholding_itax               := l_certificate_info.tax_info.withholding_itax;
2214           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).net_taxable_income             := l_certificate_info.net_taxable_income;
2215           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).social_insurance_premium       := l_certificate_info.tax_info.si_prem;
2216           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).life_insurance_premium_exempt  := l_certificate_info.li_prem_exempt;
2217           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).damage_insurance_premium_exem  := l_certificate_info.ai_prem_exempt;
2218           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).spouse_special_exempt          := l_certificate_info.spouse_sp_exempt;
2219           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).total_income_exempt            := l_certificate_info.total_income_exempt;
2220           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).housing_tax_reduction          := l_certificate_info.housing_tax_reduction;
2221           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).yea_tax_pay                    := l_withholding_tax_info.itax_adjustment;
2222           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).spouse_net_taxable_income      := l_certificate_info.spouse_net_taxable_income;
2223           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).private_pension_premium        := l_certificate_info.pp_prem;
2224           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).long_damage_insurance_premium  := l_certificate_info.long_ai_prem;
2225           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).mutual_aid_premium             := l_certificate_info.tax_info.mutual_aid_prem;
2226           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).national_pens_premium          := l_certificate_info.national_pens_prem;
2227           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).disabled                       := pay_jp_report_pkg.decode_value(l_certificate_info.disabled_flag = l_yes,'1','0');
2228           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).special_disabled               := pay_jp_report_pkg.decode_value(l_certificate_info.svr_disabled_flag = l_yes,'2','0');
2229           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).widow                          := pay_jp_report_pkg.decode_value(l_certificate_info.widow_flag = l_yes,'1','0');
2230           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).special_widow                  := pay_jp_report_pkg.decode_value(l_certificate_info.sp_widow_flag = l_yes,'2','0');
2231           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).widower                        := pay_jp_report_pkg.decode_value(l_certificate_info.widower_flag = l_yes,'1','0');
2232           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).working_student                := pay_jp_report_pkg.decode_value(l_certificate_info.working_student_flag = l_yes,'1','0');
2233           g_yea_wic_tbl(l_csr_yea_wic_proc_no_arch.assignment_action_id).prev_jobs                      := l_prev_jobs;
2234         --
2235           l_yea_wic_add_ind_tbl_cnt := l_yea_wic_add_ind_tbl_cnt + 1;
2236         --
2237         end loop;
2238         close csr_yea_wic_proc_no_arch;
2239       --
2240         if g_debug
2241         and g_detail_debug = 'Y' then
2242           hr_utility.set_location(l_proc,70);
2243           hr_utility.trace('g_yea_wic_tbl.count       : '||to_char(g_yea_wic_tbl.count));
2244           hr_utility.trace('l_yea_wic_add_ind_tbl_cnt : '||to_char(l_yea_wic_add_ind_tbl_cnt));
2245         end if;
2246       --
2247       end if;
2248     --
2249     -- ------------------------------------------------------
2250     -- yea proc mode
2251     -- ------------------------------------------------------
2252     else
2253     --
2254       if g_debug
2255       and g_detail_debug = 'Y' then
2256         hr_utility.trace('yea proc mode');
2257         hr_utility.set_location(l_proc,80);
2258       end if;
2259     --
2260       l_yes := c_ass_yes;
2261     --
2262       open csr_yea_wic_proc;
2263       loop
2264       --
2265         fetch csr_yea_wic_proc into l_csr_yea_wic_proc;
2266         exit when csr_yea_wic_proc%notfound;
2267       --
2268         l_certificate_info := null;
2269         --l_prev_jobs := null;
2270         --l_certificate_info.delete;
2271         l_prev_jobs.delete;
2272         l_submission_required_flag := null;
2273       --
2274         pay_jp_wic_pkg.get_certificate_info(
2275           p_assignment_action_id     => l_csr_yea_wic_proc.assignment_action_id,
2276           p_assignment_id            => l_csr_yea_wic_proc.assignment_id,
2277           p_action_sequence          => l_csr_yea_wic_proc.action_sequence,
2278           p_business_group_id        => g_business_group_id,
2279           p_effective_date           => l_csr_yea_wic_proc.effective_date,
2280           p_date_earned              => l_csr_yea_wic_proc.date_earned,
2281           p_itax_organization_id     => l_csr_yea_wic_proc.itx_org_id,
2282           p_itax_category            => l_csr_yea_wic_proc.itx_type,
2283           p_itax_yea_category        => l_csr_yea_wic_proc.itx_inc_flag,
2284           p_dpnt_ref_type            => l_csr_yea_wic_proc.dpnt_ref_type,
2285           p_dpnt_effective_date      => l_csr_yea_wic_proc.dpnt_effective_date,
2286           p_person_id                => l_csr_yea_wic_proc.person_id,
2287           p_sex                      => l_csr_yea_wic_proc.sex,
2288           p_date_of_birth            => l_csr_yea_wic_proc.date_of_birth,
2289           p_leaving_reason           => l_csr_yea_wic_proc.leaving_reason,
2290           p_last_name_kanji          => l_csr_yea_wic_proc.last_name,
2291           p_last_name_kana           => l_csr_yea_wic_proc.last_name_kana,
2292           p_employment_category      => l_csr_yea_wic_proc.employment_category,
2293           p_magnetic_media_flag      => 'Y',
2294           p_certificate_info         => l_certificate_info,
2295           p_submission_required_flag => l_submission_required_flag,
2296           p_prev_jobs                => l_prev_jobs,
2297           p_withholding_tax_info     => l_withholding_tax_info);
2298       --
2299         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).wic_type                       := 'PROC';
2300         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).assignment_id                  := l_csr_yea_wic_proc.assignment_id;
2301         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).action_sequence                := l_csr_yea_wic_proc.action_sequence;
2302         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).effective_date                 := l_csr_yea_wic_proc.effective_date;
2303         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).date_earned                    := l_csr_yea_wic_proc.date_earned;
2304         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).itx_org_id                     := l_csr_yea_wic_proc.itx_org_id;
2305         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).itx_type                       := l_csr_yea_wic_proc.itx_type;
2306         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).itx_inc_flag                   := l_csr_yea_wic_proc.itx_inc_flag;
2307         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).dependent_spouse_exists_kou    := l_certificate_info.dep_spouse_exists_kou;
2308         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).dependent_spouse_no_exist_kou  := l_certificate_info.dep_spouse_not_exist_kou;
2309         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).dependent_spouse_exists_otsu   := l_certificate_info.dep_spouse_exists_otsu;
2310         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).dependent_spouse_no_exist_otsu := l_certificate_info.dep_spouse_not_exist_otsu;
2311         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).aged_spouse_exists             := l_certificate_info.aged_spouse_exists;
2312         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).num_dependents_kou             := l_certificate_info.num_deps_kou;
2313         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).num_dependents_otsu            := l_certificate_info.num_deps_otsu;
2314         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).num_specifieds_kou             := l_certificate_info.num_specifieds_kou;
2315         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).num_specifieds_otsu            := l_certificate_info.num_specifieds_otsu;
2316         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).num_ageds_kou                  := l_certificate_info.num_ageds_kou;
2317         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).num_ageds_otsu                 := l_certificate_info.num_ageds_otsu;
2318         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).num_aged_parents_partial       := l_certificate_info.num_aged_parents_lt;
2319         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).num_disableds                  := l_certificate_info.num_disableds;
2320         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).num_special_disableds          := l_certificate_info.num_svr_disableds;
2321         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).num_special_disableds_partial  := l_certificate_info.num_svr_disableds_lt;
2322         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).taxable_income                 := l_certificate_info.tax_info.taxable_income;
2323         --g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).withholding_itax               := l_certificate_info.tax_info.withholding_itax;
2324         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).net_taxable_income             := l_certificate_info.net_taxable_income;
2325         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).social_insurance_premium       := l_certificate_info.tax_info.si_prem;
2326         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).life_insurance_premium_exempt  := l_certificate_info.li_prem_exempt;
2327         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).damage_insurance_premium_exem  := l_certificate_info.ai_prem_exempt;
2328         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).spouse_special_exempt          := l_certificate_info.spouse_sp_exempt;
2329         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).total_income_exempt            := l_certificate_info.total_income_exempt;
2330         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).housing_tax_reduction          := l_certificate_info.housing_tax_reduction;
2331         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).yea_tax_pay                    := l_withholding_tax_info.itax_adjustment;
2332         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).spouse_net_taxable_income      := l_certificate_info.spouse_net_taxable_income;
2333         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).private_pension_premium        := l_certificate_info.pp_prem;
2334         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).long_damage_insurance_premium  := l_certificate_info.long_ai_prem;
2335         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).mutual_aid_premium             := l_certificate_info.tax_info.mutual_aid_prem;
2336         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).national_pens_premium          := l_certificate_info.national_pens_prem;
2337         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).disabled                       := pay_jp_report_pkg.decode_value(l_certificate_info.disabled_flag = l_yes,'1','0');
2338         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).special_disabled               := pay_jp_report_pkg.decode_value(l_certificate_info.svr_disabled_flag = l_yes,'2','0');
2339         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).widow                          := pay_jp_report_pkg.decode_value(l_certificate_info.widow_flag = l_yes,'1','0');
2340         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).special_widow                  := pay_jp_report_pkg.decode_value(l_certificate_info.sp_widow_flag = l_yes,'2','0');
2341         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).widower                        := pay_jp_report_pkg.decode_value(l_certificate_info.widower_flag = l_yes,'1','0');
2342         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).working_student                := pay_jp_report_pkg.decode_value(l_certificate_info.working_student_flag = l_yes,'1','0');
2343         g_yea_wic_tbl(l_csr_yea_wic_proc.assignment_action_id).prev_jobs                      := l_prev_jobs;
2344       --
2345         l_yea_wic_ind_tbl_cnt := l_yea_wic_ind_tbl_cnt + 1;
2346       --
2347       end loop;
2348       close csr_yea_wic_proc;
2349     --
2350       if g_debug
2351       and g_detail_debug = 'Y' then
2352         hr_utility.trace('g_yea_wic_tbl.count   : '||to_char(g_yea_wic_tbl.count));
2353         hr_utility.trace('l_yea_wic_ind_tbl_cnt : '||to_char(l_yea_wic_ind_tbl_cnt));
2354         hr_utility.set_location(l_proc,90);
2355       end if;
2356     --
2357     end if;
2358   --
2359     if g_debug
2360     and g_detail_debug = 'Y' then
2361       hr_utility.set_location(l_proc,100);
2362     end if;
2363   --
2364     begin
2365     --
2366       l_assignment_id := g_yea_wic_tbl(p_assignment_action_id).assignment_id;
2367     --
2368     exception
2369     when others then
2370     --
2371       null;
2372     --
2373     end;
2374     --
2375     if g_debug
2376     and g_detail_debug = 'Y' then
2377       hr_utility.set_location(l_proc,110);
2378       hr_utility.trace('l_assignment_id : '||to_char(l_assignment_id));
2379     end if;
2380   --
2381     -- case of warning or exclusive yea
2382     if l_assignment_id is null then
2383     --
2384       if nvl(g_arch_pact_exist,'N') = 'Y' then
2385       --
2386         if g_wng_assignment_action_id is null
2387         or g_wng_assignment_action_id <> p_assignment_action_id then
2388         --
2389           -- this case means, no wic arch and no prt also
2390           g_wng_tbl(g_wng_tbl_cnt).assignment_id   := p_assignment_id;
2391           g_wng_tbl(g_wng_tbl_cnt).employee_number := p_employee_number;
2392           g_wng_tbl(g_wng_tbl_cnt).message_text    := fnd_message.get_string('PAY','PAY_JP_ITWB_NO_WIC_ARC');
2393         --
2394           g_wng_tbl_cnt := g_wng_tbl_cnt + 1;
2395           g_wng_assignment_action_id := p_assignment_action_id;
2396         --
2397         end if;
2398       --
2399       else
2400       --
2401         if g_wng_assignment_action_id is null
2402         or g_wng_assignment_action_id <> p_assignment_action_id then
2403         --
2404           g_wng_tbl(g_wng_tbl_cnt).assignment_id   := p_assignment_id;
2405           g_wng_tbl(g_wng_tbl_cnt).employee_number := p_employee_number;
2406           g_wng_tbl(g_wng_tbl_cnt).message_text    := fnd_message.get_string('PAY','PAY_JP_ITWB_NO_WIC_PRT');
2407         --
2408           g_wng_tbl_cnt := g_wng_tbl_cnt + 1;
2409           g_wng_assignment_action_id := p_assignment_action_id;
2410         --
2411         end if;
2412       --
2413       end if;
2414     --
2415       g_yea_wic_tbl(p_assignment_action_id).null_dummy := -1;
2416     --
2417     end if;
2418   --
2419   end if;
2420 --
2421   if g_debug
2422   and g_detail_debug = 'Y' then
2423     hr_utility.trace('p_assignment_action_id : '||to_char(p_assignment_action_id));
2424     hr_utility.trace('g_yea_wic_tbl.count    : '||to_char(g_yea_wic_tbl.count));
2425     hr_utility.set_location(l_proc,1000);
2426   end if;
2427 --
2428 end set_yea_wic_tbl;
2429 --
2430 -- -------------------------------------------------------------------------
2431 -- set_data_yea_tbl
2432 -- -------------------------------------------------------------------------
2433 procedure set_data_yea_tbl(
2434   p_assignment_action_id in number,
2435   p_assignment_id        in number,
2436   p_employee_number      in varchar2,
2437   p_effective_date       in date,
2438   p_date_earned          in date,
2439   p_payroll_id           in number,
2440   p_proc_type            in varchar2)
2441 is
2442 --
2443   l_proc varchar2(80) := c_package||'set_data_yea_tbl';
2444 --
2445   l_skip boolean := true;
2446 --
2447   l_assignment_id number;
2448   l_include_flag  varchar2(60);
2449 --
2450   o_num_of_spouse number;
2451   o_num_of_dpt    number;
2452   o_num_of_dpts   number;
2453 --
2454 begin
2455 --
2456   if g_debug
2457   and g_detail_debug = 'Y' then
2458     hr_utility.set_location(l_proc,0);
2459   end if;
2460 --
2461   set_yea_wic_tbl(
2462     p_assignment_action_id,
2463     p_assignment_id,
2464     p_employee_number);
2465 --
2466   if g_yea_wic_tbl.count > 0 then
2467   --
2468     l_assignment_id := null;
2469     --
2470     begin
2471     --
2472       l_assignment_id := g_yea_wic_tbl(p_assignment_action_id).assignment_id;
2473     --
2474     exception
2475     when others then
2476     --
2477       null;
2478     --
2479     end;
2480   --
2481     if l_assignment_id is not null then
2482     --
2483       l_skip := false;
2484     --
2485     end if;
2486   --
2487   end if;
2488 --
2489   if not l_skip then
2490   --
2491     l_include_flag := pay_jp_balance_pkg.get_result_value_char(c_yea_amt_aft_emp_dct_r_elm_id,c_inc_flag_iv_id,p_assignment_action_id);
2492   --
2493     g_data_yea_tbl(p_assignment_action_id).yea_act_id           := p_assignment_action_id;
2494     g_data_yea_tbl(p_assignment_action_id).yea_act_efd          := p_effective_date;
2495     g_data_yea_tbl(p_assignment_action_id).yea_act_erd          := p_date_earned;
2496     g_data_yea_tbl(p_assignment_action_id).yea_act_pay          := p_payroll_id;
2497     g_data_yea_tbl(p_assignment_action_id).yea_act_type         := p_proc_type;
2498     g_data_yea_tbl(p_assignment_action_id).yea_act_include_flag := l_include_flag;
2499   --
2500     if l_include_flag = '0' then
2501     --
2502       --
2503       -- taxable
2504       --
2505       g_data_yea_tbl(p_assignment_action_id).yea_pay_sal_txbl_mon  := pay_jp_balance_pkg.get_balance_value(c_b_sal_txbl_ern_m_ytd_db_id,p_assignment_action_id);
2506       g_data_yea_tbl(p_assignment_action_id).yea_pay_sal_txbl_kind := pay_jp_balance_pkg.get_balance_value(c_b_sal_txbl_ern_k_ytd_db_id,p_assignment_action_id);
2507       g_data_yea_tbl(p_assignment_action_id).yea_pay_sal_txbl      := g_data_yea_tbl(p_assignment_action_id).yea_pay_sal_txbl_mon
2508                                                                       + g_data_yea_tbl(p_assignment_action_id).yea_pay_sal_txbl_kind;
2509       --
2510       g_data_yea_tbl(p_assignment_action_id).yea_pay_bon_txbl_mon  := pay_jp_balance_pkg.get_balance_value(c_b_bon_txbl_ern_m_ytd_db_id,p_assignment_action_id);
2511       g_data_yea_tbl(p_assignment_action_id).yea_pay_bon_txbl_kind := pay_jp_balance_pkg.get_balance_value(c_b_bon_txbl_ern_k_ytd_db_id,p_assignment_action_id);
2512       g_data_yea_tbl(p_assignment_action_id).yea_pay_bon_txbl      := g_data_yea_tbl(p_assignment_action_id).yea_pay_bon_txbl_mon
2513                                                                       + g_data_yea_tbl(p_assignment_action_id).yea_pay_bon_txbl_kind;
2514       g_data_yea_tbl(p_assignment_action_id).yea_pay_spb_txbl_mon  := pay_jp_balance_pkg.get_balance_value(c_b_spb_txbl_ern_m_ytd_db_id,p_assignment_action_id);
2515       g_data_yea_tbl(p_assignment_action_id).yea_pay_spb_txbl_kind := pay_jp_balance_pkg.get_balance_value(c_b_spb_txbl_ern_k_ytd_db_id,p_assignment_action_id);
2516       g_data_yea_tbl(p_assignment_action_id).yea_pay_spb_txbl      := g_data_yea_tbl(p_assignment_action_id).yea_pay_spb_txbl_mon
2517                                                                       + g_data_yea_tbl(p_assignment_action_id).yea_pay_spb_txbl_kind;
2518       g_data_yea_tbl(p_assignment_action_id).yea_pay_bon_txbl_calc := g_data_yea_tbl(p_assignment_action_id).yea_pay_bon_txbl
2519                                                                       + g_data_yea_tbl(p_assignment_action_id).yea_pay_spb_txbl;
2520       --
2521       --g_data_yea_tbl(p_assignment_action_id).yea_pay_txbl := pay_jp_balance_pkg.get_result_value_number(c_yea_amt_aft_emp_dct_r_elm_id,c_pay_amt_iv_id,p_assignment_action_id);
2522       g_data_yea_tbl(p_assignment_action_id).yea_pay_txbl   := g_yea_wic_tbl(p_assignment_action_id).taxable_income;
2523       --
2524       -- tax
2525       --
2526       g_data_yea_tbl(p_assignment_action_id).yea_pay_sal_itx      := pay_jp_balance_pkg.get_balance_value(c_b_sal_itx_ytd_db_id,p_assignment_action_id);
2527       --
2528       g_data_yea_tbl(p_assignment_action_id).yea_pay_bon_itx      := pay_jp_balance_pkg.get_balance_value(c_b_bon_itx_ytd_db_id,p_assignment_action_id);
2529       g_data_yea_tbl(p_assignment_action_id).yea_pay_spb_itx      := pay_jp_balance_pkg.get_balance_value(c_b_spb_itx_ytd_db_id,p_assignment_action_id);
2530       g_data_yea_tbl(p_assignment_action_id).yea_pay_bon_itx_calc := g_data_yea_tbl(p_assignment_action_id).yea_pay_bon_itx
2531                                                                      + g_data_yea_tbl(p_assignment_action_id).yea_pay_spb_itx;
2532       --
2533       g_data_yea_tbl(p_assignment_action_id).yea_pay_prev_emp_itx
2534         := pay_jp_balance_pkg.get_result_value_number(c_yea_amt_aft_emp_dct_r_elm_id,c_prev_emp_itx_iv_id,p_assignment_action_id);
2535       g_data_yea_tbl(p_assignment_action_id).yea_pay_adj_itx
2536         := pay_jp_balance_pkg.get_result_value_number(c_yea_amt_aft_emp_dct_r_elm_id,c_adj_itx_iv_id,p_assignment_action_id);
2537       -- this is not withhold itx in yea, already withheld tax before yea (ie. this itx <> wtm withhold itx = yea net annual tax = g_yea_wic_tbl(p_assignment_action_id).withholding_itax)
2538       g_data_yea_tbl(p_assignment_action_id).yea_pay_withhold_itx      := pay_jp_balance_pkg.get_balance_value(c_b_yea_withhold_itx_ytd_db_id,p_assignment_action_id);
2539       g_data_yea_tbl(p_assignment_action_id).yea_pay_withhold_itx_calc := g_data_yea_tbl(p_assignment_action_id).yea_pay_withhold_itx
2540                                                                            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_pay_prev_emp_itx,0)
2541                                                                            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_pay_adj_itx,0);
2542       --
2543       -- amount after emp income deduction
2544       --
2545       --g_data_yea_tbl(p_assignment_action_id).yea_tax_amt_aft_emp_inc_dct :=
2546       --  pay_jp_balance_pkg.get_result_value_number(c_yea_amt_aft_emp_dct_r_elm_id,c_yea_amt_aft_emp_inc_dct_iv_id,p_assignment_action_id);
2547       --g_data_yea_tbl(p_assignment_action_id).yea_tax_amt_aft_emp_inc_dct := pay_jp_balance_pkg.get_balance_value(c_b_yea_emp_inc_dct_run_db_id,p_assignment_action_id);
2548       g_data_yea_tbl(p_assignment_action_id).yea_tax_amt_aft_emp_inc_dct   := g_yea_wic_tbl(p_assignment_action_id).net_taxable_income;
2549       --
2550       -- social ins exemption
2551       --
2552       g_data_yea_tbl(p_assignment_action_id).yea_dct_dec_si_prem
2553         := pay_jp_balance_pkg.get_result_value_number(c_yea_ins_sp_exm_rslt_elm_id,c_dec_si_prem_iv_id,p_assignment_action_id);
2554       --
2555       g_data_yea_tbl(p_assignment_action_id).yea_dct_dec_sc_mut_prem
2556         := pay_jp_balance_pkg.get_result_value_number(c_yea_ins_sp_exm_rslt_elm_id,c_dec_sc_mut_aid_prem_iv_id,p_assignment_action_id);
2557       --
2558       --g_data_yea_tbl(p_assignment_action_id).yea_dct_sal_dct_si_prem      := pay_jp_balance_pkg.get_balance_value(c_b_yea_sal_dct_si_ytd_db_id,p_assignment_action_id);
2559       --g_data_yea_tbl(p_assignment_action_id).yea_dct_sal_dct_si_prem_adj
2560       --  := pay_jp_balance_pkg.get_result_value_number(c_yea_amt_aft_emp_dct_r_elm_id,c_adj_si_prem_iv_id,p_assignment_action_id);
2561       --g_data_yea_tbl(p_assignment_action_id).yea_dct_sal_dct_si_prem_prev
2562       --  := pay_jp_balance_pkg.get_result_value_number(c_yea_amt_aft_emp_dct_r_elm_id,c_prev_emp_si_prem_iv_id,p_assignment_action_id);
2563       --g_data_yea_tbl(p_assignment_action_id).yea_dct_sal_dct_si_prem_calc := g_data_yea_tbl(p_assignment_action_id).yea_pay_sal_dct_si_prem
2564       --                                                                       + nvl(g_data_yea_tbl(p_assignment_action_id).yea_pay_sal_dct_si_prem_adj,0)
2565       --                                                                       + nvl(g_data_yea_tbl(p_assignment_action_id).yea_pay_sal_dct_si_prem_prev,0);
2566       g_data_yea_tbl(p_assignment_action_id).yea_dct_sal_dct_si_prem_calc := g_yea_wic_tbl(p_assignment_action_id).social_insurance_premium
2567                                                                              - nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_dec_si_prem,0)
2568                                                                              - nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_dec_sc_mut_prem,0);
2569       --
2570       -- life ins exemption
2571       --
2572       --g_data_yea_tbl(p_assignment_action_id).yea_dct_life_ins_prem_exm
2573       --  := pay_jp_balance_pkg.get_result_value_number(c_yea_ins_sp_exm_rslt_elm_id,c_life_ins_prem_exm_iv_id,p_assignment_action_id);
2574       g_data_yea_tbl(p_assignment_action_id).yea_dct_life_ins_prem_exm := g_yea_wic_tbl(p_assignment_action_id).life_insurance_premium_exempt;
2575       --
2576       -- earthquake exemption
2577       --
2578       --g_data_yea_tbl(p_assignment_action_id).yea_dct_eq_ins_prem_exm
2579       --  := pay_jp_balance_pkg.get_result_value_number(c_yea_ins_sp_exm_rslt_elm_id,c_eq_ins_prem_exm_iv_id,p_assignment_action_id);
2580       g_data_yea_tbl(p_assignment_action_id).yea_dct_eq_ins_prem_exm := g_yea_wic_tbl(p_assignment_action_id).damage_insurance_premium_exem;
2581       --
2582       -- spouse special exemption
2583       --
2584       --g_data_yea_tbl(p_assignment_action_id).yea_dct_spouse_sp_exm
2585       --  := pay_jp_balance_pkg.get_result_value_number(c_yea_ins_sp_exm_rslt_elm_id,c_spouse_sp_exm_iv_id,p_assignment_action_id);
2586       g_data_yea_tbl(p_assignment_action_id).yea_dct_spouse_sp_exm := g_yea_wic_tbl(p_assignment_action_id).spouse_special_exempt;
2587       --
2588       -- basic, dependent, spouse etc exemption
2589       --
2590       g_data_yea_tbl(p_assignment_action_id).yea_dct_basic_exm
2591         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_basic_exm_iv_id,p_assignment_action_id);
2592       g_data_yea_tbl(p_assignment_action_id).yea_dct_gen_spouse_exm
2593         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_gen_spouse_exm_iv_id,p_assignment_action_id);
2594       g_data_yea_tbl(p_assignment_action_id).yea_dct_elder_spouse_exm
2595         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_elder_spouse_exm_iv_id,p_assignment_action_id);
2596       g_data_yea_tbl(p_assignment_action_id).yea_dct_gen_dep_exm
2597         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_gen_dep_exm_iv_id,p_assignment_action_id);
2598       g_data_yea_tbl(p_assignment_action_id).yea_dct_specific_dep_exm
2599         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_specific_dep_exm_iv_id,p_assignment_action_id);
2600       g_data_yea_tbl(p_assignment_action_id).yea_dct_junior_dep_exm
2601         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_junior_dep_exm_iv_id,p_assignment_action_id);
2602       g_data_yea_tbl(p_assignment_action_id).yea_dct_elder_dep_exm
2603         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_elder_dep_exm_iv_id,p_assignment_action_id);
2604       g_data_yea_tbl(p_assignment_action_id).yea_dct_elder_parent_lt_exm
2605         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_elder_parent_lt_exm_iv_id,p_assignment_action_id);
2606       g_data_yea_tbl(p_assignment_action_id).yea_dct_gen_disabled_exm
2607         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_gen_disabled_exm_iv_id,p_assignment_action_id);
2608       g_data_yea_tbl(p_assignment_action_id).yea_dct_sev_disabled_exm
2609         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_sev_disabled_exm_iv_id,p_assignment_action_id);
2610       g_data_yea_tbl(p_assignment_action_id).yea_dct_sev_disabled_lt_exm
2611         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_sev_disabled_lt_exm_iv_id,p_assignment_action_id);
2612       g_data_yea_tbl(p_assignment_action_id).yea_dct_elder_exm
2613         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_elder_exm_iv_id,p_assignment_action_id);
2614       g_data_yea_tbl(p_assignment_action_id).yea_dct_widow_exm
2615         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_widow_exm_iv_id,p_assignment_action_id);
2616       g_data_yea_tbl(p_assignment_action_id).yea_dct_sp_widow_exm
2617         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_sp_widow_exm_iv_id,p_assignment_action_id);
2618       g_data_yea_tbl(p_assignment_action_id).yea_dct_working_student_exm
2619         := pay_jp_balance_pkg.get_result_value_number(c_yea_dep_exm_rslt_elm_id,c_working_student_exm_iv_id,p_assignment_action_id);
2620       g_data_yea_tbl(p_assignment_action_id).yea_dct_dep_exm_calc
2621         := nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_basic_exm,0)
2622            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_gen_spouse_exm,0)
2623            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_elder_spouse_exm,0)
2624            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_gen_dep_exm,0)
2625            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_specific_dep_exm,0)
2626            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_junior_dep_exm,0)
2627            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_elder_dep_exm,0)
2628            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_elder_parent_lt_exm,0)
2629            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_gen_disabled_exm,0)
2630            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_sev_disabled_exm,0)
2631            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_sev_disabled_lt_exm,0)
2632            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_elder_exm,0)
2633            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_widow_exm,0)
2634            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_sp_widow_exm,0)
2635            + nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_working_student_exm,0);
2636       --
2637       -- exemption detail
2638       --
2639       --g_data_yea_tbl(p_assignment_action_id).yea_dct_spouse_income
2640       --  := pay_jp_balance_pkg.get_result_value_number(c_yea_ins_sp_exm_rslt_elm_id,c_spouse_income_iv_id,p_assignment_action_id);
2641       g_data_yea_tbl(p_assignment_action_id).yea_dct_spouse_income := g_yea_wic_tbl(p_assignment_action_id).spouse_net_taxable_income;
2642       --g_data_yea_tbl(p_assignment_action_id).yea_dct_ind_pension_prem
2643       --  := pay_jp_balance_pkg.get_result_value_number(c_yea_ins_sp_exm_rslt_elm_id,c_ind_pension_prem_iv_id,p_assignment_action_id);
2644       g_data_yea_tbl(p_assignment_action_id).yea_dct_ind_pension_prem := g_yea_wic_tbl(p_assignment_action_id).private_pension_premium;
2645       --g_data_yea_tbl(p_assignment_action_id).yea_dct_lt_nonlife_ins_prem
2646       --  := pay_jp_balance_pkg.get_result_value_number(c_yea_ins_sp_exm_rslt_elm_id,c_lt_nonlife_ins_prem_iv_id,p_assignment_action_id);
2647       g_data_yea_tbl(p_assignment_action_id).yea_dct_lt_nonlife_ins_prem := g_yea_wic_tbl(p_assignment_action_id).long_damage_insurance_premium;
2648       --g_data_yea_tbl(p_assignment_action_id).yea_dct_sc_mut_prem
2649       --  := pay_jp_balance_pkg.get_result_value_number(c_yea_ins_sp_exm_rslt_elm_id,c_sc_mut_aid_prem_iv_id,p_assignment_action_id);
2650       g_data_yea_tbl(p_assignment_action_id).yea_dct_sc_mut_prem := g_yea_wic_tbl(p_assignment_action_id).mutual_aid_premium;
2651       g_data_yea_tbl(p_assignment_action_id).yea_dct_sc_mut_prem_calc := nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_sc_mut_prem,0)
2652                                                                                          - nvl(g_data_yea_tbl(p_assignment_action_id).yea_dct_dec_sc_mut_prem,0);
2653       if g_yea_wic_tbl(p_assignment_action_id).wic_type = 'ARCH' then
2654       --
2655         g_data_yea_tbl(p_assignment_action_id).yea_dct_national_pension_prem
2656           := pay_jp_balance_pkg.get_entry_value_number(c_national_pens_prem_iv_id,p_assignment_id,p_date_earned);
2657       --
2658       else
2659       --
2660         g_data_yea_tbl(p_assignment_action_id).yea_dct_national_pension_prem := g_yea_wic_tbl(p_assignment_action_id).national_pens_premium;
2661       --
2662       end if;
2663       --
2664       -- income exemption
2665       --
2666       --g_data_yea_tbl(p_assignment_action_id).yea_dct_income_exm := pay_jp_balance_pkg.get_balance_value(c_b_yea_income_exm_run_db_id,p_assignment_action_id);
2667       g_data_yea_tbl(p_assignment_action_id).yea_dct_income_exm := g_yea_wic_tbl(p_assignment_action_id).total_income_exempt;
2668       --
2669       -- annual tax
2670       --
2671       g_data_yea_tbl(p_assignment_action_id).yea_tax_net_txbl_income := trunc(greatest(pay_jp_balance_pkg.get_balance_value(c_b_yea_net_txbl_bal_run_db_id,p_assignment_action_id),0),-3);
2672       g_data_yea_tbl(p_assignment_action_id).yea_tax_annual_tax      := pay_jp_balance_pkg.get_balance_value(c_b_yea_annual_tax_run_db_id,p_assignment_action_id);
2673       --
2674       -- housing loan deduction
2675       --
2676       --g_data_yea_tbl(p_assignment_action_id).yea_tax_housing_loan_tax_credit
2677       --  := pay_jp_balance_pkg.get_result_value_number(c_yea_net_annual_tax_elm_id,c_housing_loan_iv_id,p_assignment_action_id);
2678       --g_data_yea_tbl(p_assignment_action_id).yea_tax_act_housing_loan
2679       --  := pay_jp_balance_pkg.get_result_value_number(c_yea_net_annual_tax_elm_id,c_act_housing_loan_iv_id,p_assignment_action_id);
2680       g_data_yea_tbl(p_assignment_action_id).yea_tax_act_housing_loan := g_yea_wic_tbl(p_assignment_action_id).housing_tax_reduction;
2681       --g_data_yea_tbl(p_assignment_action_id).yea_tax_net_annual_tax
2682       --  := pay_jp_balance_pkg.get_result_value_number(c_yea_net_annual_tax_elm_id,c_net_annual_tax_iv_id,p_assignment_action_id);
2683       --
2684       -- yea annual tax
2685       --
2686       g_data_yea_tbl(p_assignment_action_id).yea_tax_yea_annual_tax
2687         := pay_jp_balance_pkg.get_result_value_number(c_yea_net_annual_tax_elm_id,c_yea_annual_tax_iv_id,p_assignment_action_id);
2688       --
2689 	  --yea income tax
2690 	  --
2691 	  g_data_yea_tbl(p_assignment_action_id).yea_tax_yea_income_tax
2692         := pay_jp_balance_pkg.get_result_value_number(c_yea_net_annual_tax_elm_id,c_yea_income_tax_iv_id,p_assignment_action_id);
2693 	  --
2694       -- yea tax
2695       --
2696       --g_data_yea_tbl(p_assignment_action_id).yea_tax_yea_tax_pay := pay_jp_balance_pkg.get_balance_value(c_b_yea_tax_pay_run_db_id,p_assignment_action_id);
2697       --g_data_yea_tbl(p_assignment_action_id).yea_tax_yea_tax_pay := pay_jp_balance_pkg.get_balance_value(c_b_yea_tax_pay_ytd_db_id,p_assignment_action_id);
2698       g_data_yea_tbl(p_assignment_action_id).yea_tax_yea_tax_pay := g_yea_wic_tbl(p_assignment_action_id).yea_tax_pay;
2699     --
2700     end if;
2701   --
2702   else
2703   --
2704     g_data_yea_tbl(p_assignment_action_id).null_dummy := -1;
2705   --
2706   end if;
2707 --
2708   if g_debug
2709   and g_detail_debug = 'Y' then
2710     hr_utility.trace('p_assignment_action_id : '||to_char(p_assignment_action_id));
2711     hr_utility.trace('l_assignment_id        : '||to_char(l_assignment_id));
2712     hr_utility.trace('g_data_yea_tbl.count   : '||to_char(g_data_yea_tbl.count));
2713     hr_utility.set_location(l_proc,1000);
2714   end if;
2715 --
2716 end set_data_yea_tbl;
2717 --
2718 -- -------------------------------------------------------------------------
2719 -- set_data_pjob_tbl
2720 -- -------------------------------------------------------------------------
2721 procedure set_data_pjob_tbl(
2722   p_assignment_action_id      in number,
2723   p_assignment_id             in number,
2724   p_employee_number           in varchar2,
2725   p_prev_jobs                 in pay_jp_wic_pkg.t_prev_jobs)
2726 is
2727 --
2728   l_proc varchar2(80) := c_package||'set_data_pjob_tbl';
2729 --
2730   l_pjob_cnt number;
2731 --
2732   procedure set_data_pjob_rec(
2733     p_rec_ind in number,
2734     p_pjob_info in pay_jp_wic_pkg.t_prev_job_info)
2735   is
2736   begin
2737   --
2738     g_data_pjob_tbl(p_rec_ind).employer_name         := p_pjob_info.salary_payer_name_kanji;
2739     g_data_pjob_tbl(p_rec_ind).employer_name_kana    := p_pjob_info.salary_payer_name_kana;
2740     g_data_pjob_tbl(p_rec_ind).employer_address      := p_pjob_info.salary_payer_address_kanji;
2741     g_data_pjob_tbl(p_rec_ind).employer_address_kana := p_pjob_info.salary_payer_address_kana;
2742     g_data_pjob_tbl(p_rec_ind).txbl_inc              := p_pjob_info.taxable_income;
2743     g_data_pjob_tbl(p_rec_ind).si_prem               := p_pjob_info.si_prem;
2744     g_data_pjob_tbl(p_rec_ind).mutual_aid_prem       := p_pjob_info.mutual_aid_prem;
2745     g_data_pjob_tbl(p_rec_ind).itax                  := p_pjob_info.itax;
2746     g_data_pjob_tbl(p_rec_ind).term_date             := p_pjob_info.termination_date;
2747   --
2748   end set_data_pjob_rec;
2749 --
2750 begin
2751 --
2752   if g_debug
2753   and g_detail_debug = 'Y' then
2754     hr_utility.set_location(l_proc,0);
2755   end if;
2756 --
2757   l_pjob_cnt := p_prev_jobs.count;
2758 --
2759   if l_pjob_cnt > 15 then
2760   --
2761     g_wng_tbl(g_wng_tbl_cnt).assignment_id   := p_assignment_id;
2762     g_wng_tbl(g_wng_tbl_cnt).employee_number := p_employee_number;
2763     g_wng_tbl(g_wng_tbl_cnt).message_text    := fnd_message.get_string('PAY','PAY_JP_ITWB_PJOB_OVER');
2764   --
2765     g_wng_tbl_cnt := g_wng_tbl_cnt + 1;
2766   --
2767   end if;
2768 --
2769   if l_pjob_cnt > 0 then
2770   --
2771     -- support to store only 15 first records, inconsiderable business case for more over
2772     l_pjob_cnt := least(l_pjob_cnt,15);
2773   --
2774     -- ordered by term_date desc
2775     for i in 1..l_pjob_cnt loop
2776     --
2777       if i = 1 then
2778       --
2779         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind1 := g_data_pjob_tbl.count;
2780       --
2781       elsif i = 2 then
2782       --
2783         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind2 := g_data_pjob_tbl.count;
2784       --
2785       elsif i = 3 then
2786       --
2787         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind3 := g_data_pjob_tbl.count;
2788       --
2789       elsif i = 4 then
2790       --
2791         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind4 := g_data_pjob_tbl.count;
2792       --
2793       elsif i = 5 then
2794       --
2795         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind5 := g_data_pjob_tbl.count;
2796       --
2797       elsif i = 6 then
2798       --
2799         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind6 := g_data_pjob_tbl.count;
2800       --
2801       elsif i = 7 then
2802       --
2803         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind7 := g_data_pjob_tbl.count;
2804       --
2805       elsif i = 8 then
2806       --
2807         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind8 := g_data_pjob_tbl.count;
2808       --
2809       elsif i = 9 then
2810       --
2811         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind9 := g_data_pjob_tbl.count;
2812       --
2813       elsif i = 10 then
2814       --
2815         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind10 := g_data_pjob_tbl.count;
2816       --
2817       elsif i = 11 then
2818       --
2819         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind11 := g_data_pjob_tbl.count;
2820       --
2821       elsif i = 12 then
2822       --
2823         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind12 := g_data_pjob_tbl.count;
2824       --
2825       elsif i = 13 then
2826       --
2827         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind13 := g_data_pjob_tbl.count;
2828       --
2829       elsif i = 14 then
2830       --
2831         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind14 := g_data_pjob_tbl.count;
2832       --
2833       elsif i = 15 then
2834       --
2835         g_data_pjob_ind_tbl(p_assignment_action_id).rec_ind15 := g_data_pjob_tbl.count;
2836       --
2837       end if;
2838     --
2839       set_data_pjob_rec(g_data_pjob_tbl.count,p_prev_jobs(i));
2840     --
2841     end loop;
2842   --
2843   end if;
2844 --
2845   if g_debug
2846   and g_detail_debug = 'Y' then
2847     hr_utility.trace('p_assignment_action_id      : '||to_char(p_assignment_action_id));
2848     hr_utility.trace('p_assignment_id             : '||to_char(p_assignment_id));
2849     hr_utility.trace('p_employee_number           : '||p_employee_number);
2850     hr_utility.trace('g_data_pjob_ind_tbl.count   : '||to_char(g_data_pjob_ind_tbl.count));
2851     hr_utility.trace('g_data_pjob_tbl.count       : '||to_char(g_data_pjob_tbl.count));
2852     hr_utility.trace('l_pjob_cnt                  : '||to_char(l_pjob_cnt));
2853     hr_utility.trace('g_wng_tbl.count             : '||to_char(g_wng_tbl.count));
2854     hr_utility.trace('g_wng_tbl_cnt               : '||to_char(g_wng_tbl_cnt));
2855     hr_utility.set_location(l_proc,1000);
2856   end if;
2857 --
2858 end set_data_pjob_tbl;
2859 --
2860 -- -------------------------------------------------------------------------
2861 -- set_data_dpnt_tbl
2862 -- -------------------------------------------------------------------------
2863 procedure set_data_dpnt_tbl(
2864   p_assignment_action_id     in number,
2865   p_assignment_id            in number,
2866   p_employee_number          in varchar2,
2867   p_effective_date           in date,
2868   p_date_earned              in date,
2869   p_proc_type                in varchar2,
2870   p_dpnt_ref_type            in varchar2,
2871   p_sal_assignment_action_id in number,
2872   p_sal_date_earned          in date)
2873 is
2874 --
2875   l_proc varchar2(80) := c_package||'set_data_dpnt_tbl';
2876 --
2877   l_yes varchar2(1) := 'Y';
2878   l_no  varchar2(1) := 'N';
2879   --
2880   l_yea_skip boolean := true;
2881 --
2882   l_assignment_id number;
2883   l_assignment_action_id number;
2884   l_date_earned date;
2885 --
2886   l_itx_type               varchar2(60);
2887   l_spouse_type            varchar2(60);
2888   l_spouse_disable_type    varchar2(60);
2889   l_num_of_dep             number;
2890   l_num_of_specific_dep    number;
2891   l_num_of_elder_parent_lt number;
2892   l_num_of_elder_dep       number;
2893   l_num_of_gen_disabled    number;
2894   l_num_of_sev_disabled    number;
2895   l_num_of_sev_disabled_lt number;
2896   --
2897   l_disable_type         varchar2(60);
2898   l_widow_type           varchar2(60);
2899   l_working_student_type varchar2(60);
2900   --
2901   l_nres_flag          varchar2(1);
2902   l_nres_flag_eev      varchar2(60);
2903   l_nres_start_date    date;
2904   l_projected_res_date date;
2905 --
2906   l_spouse_type_elm_id number;
2907   l_spouse_type_iv_id number;
2908   --
2909   l_spouse_disb_type_elm_id number;
2910   l_spouse_disb_type_iv_id number;
2911   --
2912   l_itx_type_elm_id number;
2913   l_itx_type_iv_id number;
2914   --
2915   l_num_of_dep_elm_id number;
2916   l_num_of_dep_iv_id number;
2917 --
2918   l_spouse_cnt number := 0;
2919 --
2920   l_dpnt_rec per_jp_ctr_utility_pkg.t_itax_dpnt_rec;
2921 --
2922 begin
2923 --
2924   if g_debug
2925   and g_detail_debug = 'Y' then
2926     hr_utility.set_location(l_proc,0);
2927   end if;
2928 --
2929   if p_proc_type = 'YEA'
2930   or p_proc_type = 'REY' then
2931   --
2932     set_yea_wic_tbl(
2933       p_assignment_action_id,
2934       p_assignment_id,
2935       p_employee_number);
2936   --
2937     if g_yea_wic_tbl.count > 0 then
2938     --
2939       l_assignment_id := null;
2940       --
2941       begin
2942       --
2943         l_assignment_id := g_yea_wic_tbl(p_assignment_action_id).assignment_id;
2944       --
2945       exception
2946       when others then
2947       --
2948         null;
2949       --
2950       end;
2951     --
2952       if l_assignment_id is not null then
2953       --
2954         l_yea_skip := false;
2955       --
2956       end if;
2957     --
2958     end if;
2959   --
2960   end if;
2961 --
2962   --
2963   -- use pre set yea info
2964   --
2965   if not l_yea_skip then
2966   --
2967     l_disable_type         := '0';
2968     l_widow_type           := '0';
2969     l_working_student_type := '0';
2970     --
2971     l_spouse_type_elm_id     := c_yea_dep_exm_type_rslt_elm_id;
2972     l_spouse_type_iv_id      := c_yea_spouse_type_iv_id;
2973     --
2974     l_itx_type               := g_yea_wic_tbl(p_assignment_action_id).itx_type;
2975     l_num_of_dep             := cnv_zero_null(g_yea_wic_tbl(p_assignment_action_id).num_dependents_kou);
2976     l_num_of_specific_dep    := cnv_zero_null(g_yea_wic_tbl(p_assignment_action_id).num_specifieds_kou);
2977     l_num_of_elder_parent_lt := cnv_zero_null(g_yea_wic_tbl(p_assignment_action_id).num_aged_parents_partial);
2978     l_num_of_elder_dep       := cnv_zero_null(g_yea_wic_tbl(p_assignment_action_id).num_ageds_kou);
2979     l_num_of_gen_disabled    := cnv_zero_null(g_yea_wic_tbl(p_assignment_action_id).num_disableds);
2980     l_num_of_sev_disabled    := cnv_zero_null(g_yea_wic_tbl(p_assignment_action_id).num_special_disableds);
2981     l_num_of_sev_disabled_lt := cnv_zero_null(g_yea_wic_tbl(p_assignment_action_id).num_special_disableds_partial);
2982     --
2983     -- need to calc l_num_of_sev_disabled because l_num_of_sev_disabled is
2984     -- number for sev disb exemption, so include lt count
2985     --
2986     if l_num_of_sev_disabled is not null
2987     and l_num_of_sev_disabled_lt is not null then
2988     --
2989       l_num_of_sev_disabled := cnv_zero_null(greatest(l_num_of_sev_disabled - l_num_of_sev_disabled_lt,0));
2990     --
2991     end if;
2992     --
2993     -- need to calc l_num_of_elder_dep because l_num_of_elder_dep is
2994     -- number for elder exemption, so include lt count
2995     --
2996     if l_num_of_elder_dep is not null
2997     and l_num_of_elder_parent_lt is not null then
2998     --
2999       l_num_of_elder_dep := cnv_zero_null(greatest(l_num_of_elder_dep - l_num_of_elder_parent_lt,0));
3000     --
3001     end if;
3002     --
3003     if g_yea_wic_tbl(p_assignment_action_id).disabled = '1' then
3004     --
3005       l_disable_type := g_yea_wic_tbl(p_assignment_action_id).disabled;
3006     --
3007     elsif g_yea_wic_tbl(p_assignment_action_id).special_disabled = '2' then
3008     --
3009       l_disable_type := g_yea_wic_tbl(p_assignment_action_id).special_disabled;
3010     --
3011     end if;
3012   --
3013     if g_yea_wic_tbl(p_assignment_action_id).widow = '1' then
3014     --
3015       l_widow_type := g_yea_wic_tbl(p_assignment_action_id).widow;
3016     --
3017     elsif g_yea_wic_tbl(p_assignment_action_id).widower = '1' then
3018     --
3019       l_widow_type := g_yea_wic_tbl(p_assignment_action_id).widower;
3020     --
3021     elsif g_yea_wic_tbl(p_assignment_action_id).special_widow = '2' then
3022     --
3023       l_widow_type := g_yea_wic_tbl(p_assignment_action_id).special_widow;
3024     --
3025     end if;
3026   --
3027     if g_yea_wic_tbl(p_assignment_action_id).working_student = '1' then
3028     --
3029       l_working_student_type := g_yea_wic_tbl(p_assignment_action_id).working_student;
3030     --
3031     end if;
3032   --
3033   -- case of sal, bon
3034   else
3035   --
3036     l_assignment_action_id := p_assignment_action_id;
3037     l_date_earned          := p_date_earned;
3038     --
3039     if p_proc_type = 'SAL' then
3040     --
3041       l_itx_type_elm_id   := c_sal_itx_elm_id;
3042       l_itx_type_iv_id    := c_sal_itx_type_iv_id;
3043       l_num_of_dep_elm_id := c_sal_itx_elm_id;
3044       l_num_of_dep_iv_id  := c_sal_num_of_dep_iv_id;
3045       --
3046       l_spouse_type_elm_id := c_sal_itx_elm_id;
3047       l_spouse_type_iv_id  := c_sal_spouse_type_iv_id;
3048       --
3049       l_spouse_disb_type_elm_id := c_sal_itx_elm_id;
3050       l_spouse_disb_type_iv_id  := c_sal_spouse_disb_type_iv_id;
3051     --
3052     elsif p_proc_type = 'BON' then
3053     --
3054       l_itx_type_elm_id   := c_bon_itx_elm_id;
3055       l_itx_type_iv_id    := c_bon_itx_type_iv_id;
3056       l_num_of_dep_elm_id := c_bon_itx_elm_id;
3057       l_num_of_dep_iv_id  := c_bon_num_of_dep_iv_id;
3058       --
3059       l_spouse_type_elm_id := c_bon_itx_elm_id;
3060       l_spouse_type_iv_id  := c_bon_spouse_type_iv_id;
3061       --
3062       l_spouse_disb_type_elm_id := c_bon_itx_elm_id;
3063       l_spouse_disb_type_iv_id  := c_bon_spouse_disb_type_iv_id;
3064     --
3065     elsif p_proc_type = 'SPB' then
3066     --
3067       l_itx_type_elm_id   := c_spb_itx_elm_id;
3068       l_itx_type_iv_id    := c_spb_itx_type_iv_id;
3069       l_num_of_dep_elm_id := c_spb_itx_elm_id;
3070       l_num_of_dep_iv_id  := c_spb_num_of_dep_iv_id;
3071       --
3072       l_spouse_type_elm_id := c_spb_itx_elm_id;
3073       l_spouse_type_iv_id  := c_spb_spouse_type_iv_id;
3074       --
3075       l_spouse_disb_type_elm_id := c_spb_itx_elm_id;
3076       l_spouse_disb_type_iv_id  := c_spb_spouse_disb_type_iv_id;
3077     --
3078     -- exclusive yea proc case (no result), use latest sal info
3079     else
3080     --
3081       l_assignment_action_id := p_sal_assignment_action_id;
3082       l_date_earned          := p_sal_date_earned;
3083       --
3084       l_itx_type_elm_id   := c_sal_itx_elm_id;
3085       l_itx_type_iv_id    := c_sal_itx_type_iv_id;
3086       l_num_of_dep_elm_id := c_sal_itx_elm_id;
3087       l_num_of_dep_iv_id  := c_sal_num_of_dep_iv_id;
3088       --
3089       l_spouse_type_elm_id := c_sal_itx_elm_id;
3090       l_spouse_type_iv_id  := c_sal_spouse_type_iv_id;
3091       --
3092       l_spouse_disb_type_elm_id := c_sal_itx_elm_id;
3093       l_spouse_disb_type_iv_id  := c_sal_spouse_disb_type_iv_id;
3094     --
3095     end if;
3096   --
3097     l_itx_type   := pay_jp_balance_pkg.get_result_value_char(l_itx_type_elm_id,l_itx_type_iv_id,l_assignment_action_id);
3098     -- this will be null in case taxable amt under 0
3099     l_num_of_dep := cnv_zero_null(pay_jp_balance_pkg.get_result_value_number(l_num_of_dep_elm_id,l_num_of_dep_iv_id,l_assignment_action_id));
3100   --
3101     if (nvl(g_dpnt_ref_dec_flag,'Y') = 'Y'
3102        and (l_itx_type = 'M_KOU'
3103            or l_itx_type = 'D_KOU'))
3104     or nvl(g_dpnt_ref_dec_flag,'Y') = 'N' then
3105     --
3106       --
3107       -- element at the process
3108       --
3109       if l_itx_type is not null
3110       and l_itx_type <> 'D_HEI' then
3111       --
3112         l_num_of_specific_dep    := pay_jp_balance_pkg.get_entry_value_number(c_num_of_specific_dep_iv_id,p_assignment_id,l_date_earned);
3113         l_num_of_elder_parent_lt := pay_jp_balance_pkg.get_entry_value_number(c_num_of_elder_parent_lt_iv_id,p_assignment_id,l_date_earned);
3114         l_num_of_elder_dep       := pay_jp_balance_pkg.get_entry_value_number(c_num_of_elder_dep_iv_id,p_assignment_id,l_date_earned);
3115         --
3116         if p_dpnt_ref_type = 'CEI' then
3117         --
3118           if l_num_of_specific_dep is null
3119           or l_num_of_elder_parent_lt is null
3120           or l_num_of_elder_dep is null then
3121           --
3122             per_jp_ctr_utility_pkg.get_itax_dpnt_info(
3123               p_assignment_id  => p_assignment_id,
3124               p_itax_type      => l_itx_type,
3125               p_effective_date => l_date_earned,
3126               p_itax_dpnt_rec  => l_dpnt_rec);
3127           --
3128             -- set null for 0, which were always set by per_jp_ctr_utility_pkg.get_itax_dpnt_info
3129             -- because other type might be null if result, entry are null
3130             l_num_of_specific_dep    := nvl(l_num_of_specific_dep,l_dpnt_rec.young_dpnts);
3131             l_num_of_elder_parent_lt := nvl(l_num_of_elder_parent_lt,l_dpnt_rec.aged_dpnt_parents_lt);
3132             l_num_of_elder_dep       := nvl(l_num_of_elder_dep,l_dpnt_rec.aged_dpnts);
3133           --
3134           end if;
3135         --
3136         end if;
3137       --
3138         l_num_of_specific_dep    := cnv_zero_null(l_num_of_specific_dep);
3139         l_num_of_elder_parent_lt := cnv_zero_null(l_num_of_elder_parent_lt);
3140         l_num_of_elder_dep       := cnv_zero_null(l_num_of_elder_dep);
3141       --
3142       end if;
3143       --
3144       -- result for latest sal
3145       --
3146       -- these will be null in case taxable amt under 0
3147       l_spouse_disable_type    := pay_jp_balance_pkg.get_result_value_char(l_spouse_disb_type_elm_id,l_spouse_disb_type_iv_id,l_assignment_action_id);
3148       l_num_of_gen_disabled    := pay_jp_balance_pkg.get_result_value_number(c_sal_itx_elm_id,c_sal_num_of_gen_disb_iv_id,p_sal_assignment_action_id);
3149       l_num_of_sev_disabled    := pay_jp_balance_pkg.get_result_value_number(c_sal_itx_elm_id,c_sal_num_of_sev_disb_iv_id,p_sal_assignment_action_id);
3150       l_num_of_sev_disabled_lt := pay_jp_balance_pkg.get_result_value_number(c_sal_itx_elm_id,c_sal_num_of_sev_disb_lt_iv_id,p_sal_assignment_action_id);
3151       l_disable_type           := pay_jp_balance_pkg.get_result_value_char(c_sal_itx_elm_id,c_sal_disable_type_iv_id,p_sal_assignment_action_id);
3152       l_widow_type             := pay_jp_balance_pkg.get_result_value_char(c_sal_itx_elm_id,c_sal_widow_type_iv_id,p_sal_assignment_action_id);
3153       l_working_student_type   := pay_jp_balance_pkg.get_result_value_char(c_sal_itx_elm_id,c_sal_wrk_student_type_iv_id,p_sal_assignment_action_id);
3154     --
3155       --
3156       -- add for spouse count (1,2,3 is set for only case m_kou, d_kou)
3157       --
3158       if l_spouse_disable_type = '1' then
3159       --
3160         l_num_of_gen_disabled := nvl(l_num_of_gen_disabled,0) + 1;
3161       --
3162       elsif l_spouse_disable_type = '2' then
3163       --
3164         l_num_of_sev_disabled := nvl(l_num_of_sev_disabled,0) + 1;
3165       --
3166       elsif l_spouse_disable_type = '3' then
3167       --
3168         l_num_of_sev_disabled_lt := nvl(l_num_of_sev_disabled_lt,0) + 1;
3169       --
3170       end if;
3171     --
3172       --
3173       -- need to calc l_num_of_dep because result num_of_dep is
3174       -- number for gen dep exemption, so include sp, elder, elder lt count
3175       -- generally l_num_of_dep has been set for m_kou, d_kou
3176       --
3177       if l_num_of_dep is not null then
3178       --
3179         l_num_of_dep := greatest(nvl(l_num_of_dep,0) - (nvl(l_num_of_specific_dep,0) + nvl(l_num_of_elder_parent_lt,0) + nvl(l_num_of_elder_dep,0)),0);
3180       --
3181       end if;
3182     --
3183       -- set null for 0, which were always set by formula run result
3184       -- because other type might be null if result, entry are null
3185       --
3186       l_num_of_gen_disabled    := cnv_zero_null(l_num_of_gen_disabled);
3187       l_num_of_sev_disabled    := cnv_zero_null(l_num_of_sev_disabled);
3188       l_num_of_sev_disabled_lt := cnv_zero_null(l_num_of_sev_disabled_lt);
3189       l_num_of_dep             := cnv_zero_null(l_num_of_dep);
3190     --
3191     end if;
3192   --
3193   end if;
3194 --
3195   l_spouse_type := pay_jp_balance_pkg.get_result_value_char(l_spouse_type_elm_id,l_spouse_type_iv_id,p_assignment_action_id);
3196   g_data_dpnt_tbl(p_assignment_action_id).dpnt_spouse_type := l_spouse_type;
3197 --
3198   g_data_dpnt_tbl(p_assignment_action_id).dpnt_itx_type := l_itx_type;
3199 --
3200   --
3201   -- non resident flag
3202   --
3203   l_nres_flag_eev      := pay_jp_balance_pkg.get_entry_value_char(c_nres_flag_iv_id,p_assignment_id,p_date_earned);
3204   l_nres_start_date    := pay_jp_balance_pkg.get_entry_value_date(c_nres_start_date_iv_id,p_assignment_id,p_effective_date);
3205   l_projected_res_date := pay_jp_balance_pkg.get_entry_value_date(c_projected_res_date_iv_id,p_assignment_id,p_effective_date);
3206   --
3207   l_nres_flag := 'N';
3208   if l_nres_start_date is not null then
3209   --
3210     if l_nres_start_date <= p_effective_date
3211     and nvl(l_projected_res_date,p_effective_date + 1) > p_effective_date then
3212     --
3213       l_nres_flag := 'Y';
3214     --
3215     end if;
3216   --
3217   else
3218   --
3219     if nvl(l_nres_flag_eev,'N') = 'Y' then
3220     --
3221       l_nres_flag := 'Y';
3222     --
3223     end if;
3224   --
3225   end if;
3226   --
3227   if l_nres_flag = 'Y' then
3228   --
3229     g_data_dpnt_tbl(p_assignment_action_id).dpnt_nres_flag := l_nres_flag;
3230   --
3231   end if;
3232   --
3233   if l_itx_type is not null then
3234   --
3235     --
3236     -- dpnt declare flag
3237     --
3238     g_data_dpnt_tbl(p_assignment_action_id).dpnt_declare_flag := l_no;
3239     if l_itx_type = 'M_KOU'
3240     or l_itx_type = 'D_KOU' then
3241     --
3242       g_data_dpnt_tbl(p_assignment_action_id).dpnt_declare_flag := l_yes;
3243     --
3244     end if;
3245     --
3246     if l_nres_flag = 'N' then
3247     --
3248       --
3249       -- spouse flag
3250       --
3251       if l_spouse_type is not null then
3252       --
3253         if (nvl(g_dpnt_ref_dec_flag,'Y') = 'Y'
3254            and g_data_dpnt_tbl(p_assignment_action_id).dpnt_declare_flag = l_yes)
3255         or nvl(g_dpnt_ref_dec_flag,'Y') = 'N' then
3256         --
3257           g_data_dpnt_tbl(p_assignment_action_id).dpnt_spouse_flag := l_no;
3258           g_data_dpnt_tbl(p_assignment_action_id).dpnt_gen_spouse_flag := l_no;
3259           g_data_dpnt_tbl(p_assignment_action_id).dpnt_elder_spouse_flag := l_no;
3260         --
3261           if l_spouse_type = '1'
3262           or l_spouse_type = '2'
3263           or l_spouse_type = '3' then
3264           --
3265             g_data_dpnt_tbl(p_assignment_action_id).dpnt_spouse_flag := l_yes;
3266           --
3267           end if;
3268         --
3269         end if;
3270       --
3271       -- gen spouse flag
3272       --
3273         if l_spouse_type = '2' then
3274         --
3275           if (nvl(g_dpnt_ref_dec_flag,'Y') = 'Y'
3276              and g_data_dpnt_tbl(p_assignment_action_id).dpnt_declare_flag = l_yes)
3277           or nvl(g_dpnt_ref_dec_flag,'Y') = 'N' then
3278           --
3279             g_data_dpnt_tbl(p_assignment_action_id).dpnt_gen_spouse_flag := l_yes;
3280           --
3281           end if;
3282         --
3283           l_spouse_cnt := 1;
3284         --
3285         end if;
3286       --
3287       -- elder spouse flag
3288       --
3289         if l_spouse_type = '3' then
3290         --
3291           if (nvl(g_dpnt_ref_dec_flag,'Y') = 'Y'
3292              and g_data_dpnt_tbl(p_assignment_action_id).dpnt_declare_flag = l_yes)
3293           or nvl(g_dpnt_ref_dec_flag,'Y') = 'N' then
3294           --
3295             g_data_dpnt_tbl(p_assignment_action_id).dpnt_elder_spouse_flag := l_yes;
3296           --
3297           end if;
3298         --
3299           l_spouse_cnt := 1;
3300         --
3301         end if;
3302       --
3303       end if;
3304       --
3305     --
3306       if (nvl(g_dpnt_ref_dec_flag,'Y') = 'Y'
3307          and g_data_dpnt_tbl(p_assignment_action_id).dpnt_declare_flag = l_yes)
3308       or nvl(g_dpnt_ref_dec_flag,'Y') = 'N' then
3309       --
3310         --
3311         -- gen dep count
3312         --
3313         if l_num_of_dep is not null then
3314         --
3315           g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_dep := l_num_of_dep;
3316         --
3317         end if;
3318         --
3319         -- specific dep count
3320         --
3321         if l_num_of_specific_dep is not null then
3322         --
3323           g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_specific_dep := l_num_of_specific_dep;
3324         --
3325         end if;
3326         --
3327         -- elder parent lt count
3328         --
3329         if l_num_of_elder_parent_lt is not null then
3330         --
3331           g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_elder_parent_lt := l_num_of_elder_parent_lt;
3332         --
3333         end if;
3334         --
3335         -- elder dep count
3336         --
3337         if l_num_of_elder_dep is not null then
3338         --
3339           g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_elder_dep := l_num_of_elder_dep;
3340         --
3341         end if;
3342         --
3343         -- gen disabled count
3344         --
3345         if l_num_of_gen_disabled is not null then
3346         --
3347           g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_gen_disabled := l_num_of_gen_disabled;
3348         --
3349         end if;
3350         --
3351         -- sev disabled count
3352         --
3353         if l_num_of_sev_disabled is not null then
3354         --
3355           g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_sev_disabled := l_num_of_sev_disabled;
3356         --
3357         end if;
3358         --
3359         -- sev disabled lt count
3360         --
3361         if l_num_of_sev_disabled_lt is not null then
3362         --
3363           g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_sev_disabled_lt := l_num_of_sev_disabled_lt;
3364         --
3365         end if;
3366         --
3367         -- disable type
3368         --
3369         if l_disable_type is not null then
3370         --
3371           g_data_dpnt_tbl(p_assignment_action_id).dpnt_disable_type := l_disable_type;
3372         --
3373         end if;
3374         --
3375         -- widow type
3376         --
3377         if l_widow_type is not null then
3378         --
3379           g_data_dpnt_tbl(p_assignment_action_id).dpnt_widow_type := l_widow_type;
3380         --
3381         end if;
3382         --
3383         -- working student type
3384         --
3385         if l_working_student_type is not null then
3386         --
3387           g_data_dpnt_tbl(p_assignment_action_id).dpnt_working_student_type := l_working_student_type;
3388         --
3389         end if;
3390       --
3391       end if;
3392     --
3393       --
3394       -- otsu spouse count
3395       --
3396       if l_itx_type = 'M_OTSU'
3397       or l_itx_type = 'D_OTSU' then
3398       --
3399         g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_otsu_dep := cnv_zero_null(nvl(l_spouse_cnt,0) + nvl(l_num_of_dep,0));
3400       --
3401       end if;
3402     --
3403     end if;
3404   --
3405   end if;
3406   --
3407   if g_debug
3408   and g_detail_debug = 'Y' then
3409   --
3410     hr_utility.trace('p_assignment_action_id : '||to_char(p_assignment_action_id));
3411     hr_utility.trace('g_data_dpnt_tbl.count  : '||to_char(g_data_dpnt_tbl.count));
3412   --
3413     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_spouse_type            : '||g_data_dpnt_tbl(p_assignment_action_id).dpnt_spouse_type);
3414     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_itx_type               : '||g_data_dpnt_tbl(p_assignment_action_id).dpnt_itx_type);
3415     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_declare_flag           : '||g_data_dpnt_tbl(p_assignment_action_id).dpnt_declare_flag);
3416     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_spouse_flag            : '||g_data_dpnt_tbl(p_assignment_action_id).dpnt_spouse_flag);
3417     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_gen_spouse_flag        : '||g_data_dpnt_tbl(p_assignment_action_id).dpnt_gen_spouse_flag);
3418     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_elder_spouse_flag      : '||g_data_dpnt_tbl(p_assignment_action_id).dpnt_elder_spouse_flag);
3419     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_dep             : '||to_char(g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_dep));
3420     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_specific_dep    : '||to_char(g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_specific_dep));
3421     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_elder_parent_lt : '||to_char(g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_elder_parent_lt));
3422     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_elder_dep       : '||to_char(g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_elder_dep));
3423     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_gen_disabled    : '||to_char(g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_gen_disabled));
3424     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_sev_disabled    : '||to_char(g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_sev_disabled));
3425     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_sev_disabled_lt : '||to_char(g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_sev_disabled_lt));
3426     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_disable_type           : '||g_data_dpnt_tbl(p_assignment_action_id).dpnt_disable_type);
3427     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_widow_type             : '||g_data_dpnt_tbl(p_assignment_action_id).dpnt_widow_type);
3428     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_working_student_type   : '||g_data_dpnt_tbl(p_assignment_action_id).dpnt_working_student_type);
3429     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_otsu_dep        : '||to_char(g_data_dpnt_tbl(p_assignment_action_id).dpnt_num_of_otsu_dep));
3430     hr_utility.trace('g_data_dpnt_tbl(p_assignment_action_id).dpnt_nres_flag              : '||g_data_dpnt_tbl(p_assignment_action_id).dpnt_nres_flag);
3431   --
3432     hr_utility.set_location(l_proc,1000);
3433   end if;
3434 --
3435 end set_data_dpnt_tbl;
3436 --
3437 -- -------------------------------------------------------------------------
3438 -- set_data_sal_pay_tbl
3439 -- -------------------------------------------------------------------------
3440 procedure set_data_sal_pay_tbl(
3441   p_assignment_action_id in number,
3442   p_assignment_id        in number,
3443   p_data_ass_payroll_id  in number)
3444 is
3445 --
3446   l_proc varchar2(80) := c_package||'set_data_sal_pay_tbl';
3447 --
3448   cursor csr_arch_ass_pay
3449   is
3450   select /*+ ORDERED */
3451          pjia.payroll_id
3452   from   pay_jp_itwb_assact_v pjia,
3453          pay_assignment_actions paa_arch_o
3454   where  pjia.assignment_id = p_assignment_id
3455   and    pjia.effective_date
3456          between g_effective_soy and g_effective_eoy
3457   and    paa_arch_o.assignment_action_id = pjia.assignment_action_id
3458   order by paa_arch_o.action_sequence desc;
3459 --
3460   l_payroll_id number;
3461   l_arch_payroll_id number;
3462   l_arch_payroll_id_o number;
3463   l_pay_ind number := 0;
3464   l_ord_num number;
3465 --
3466 begin
3467 --
3468   if g_debug
3469   and g_detail_debug = 'Y' then
3470     hr_utility.set_location(l_proc,0);
3471   end if;
3472 --
3473   -- reset for each assignment
3474   if g_arch_sal_ass_pay_ind_tbl.count = 0 then
3475   --
3476     open csr_arch_ass_pay;
3477     loop
3478     --
3479       fetch csr_arch_ass_pay into l_arch_payroll_id;
3480       exit when csr_arch_ass_pay%notfound;
3481     --
3482       if l_arch_payroll_id <> nvl(l_arch_payroll_id_o,-1) then
3483       --
3484         g_arch_sal_ass_pay_ind_tbl(l_arch_payroll_id) := l_arch_payroll_id;
3485         g_arch_sal_ass_pay_tbl(l_arch_payroll_id).payroll_id := l_arch_payroll_id;
3486         g_arch_sal_ass_pay_tbl(l_arch_payroll_id).ord_num := l_pay_ind + 1;
3487       --
3488         l_pay_ind := l_pay_ind + 1;
3489         l_arch_payroll_id_o := l_arch_payroll_id;
3490       --
3491       end if;
3492     --
3493     end loop;
3494     close csr_arch_ass_pay;
3495   --
3496   end if;
3497 --
3498   -- store payroll change history, reset for each assignment
3499   if g_data_sal_ass_pay_ind_tbl.count > 0 then
3500   --
3501     begin
3502     --
3503       l_payroll_id := g_data_sal_ass_pay_ind_tbl(p_data_ass_payroll_id);
3504     --
3505     exception
3506     when others then
3507     --
3508       null;
3509     --
3510     end;
3511   --
3512   end if;
3513   --
3514   if l_payroll_id is null then
3515   --
3516     if g_arch_sal_ass_pay_ind_tbl.count > 0 then
3517     --
3518       begin
3519       --
3520         l_payroll_id := g_arch_sal_ass_pay_ind_tbl(p_data_ass_payroll_id);
3521       --
3522       exception
3523       when others then
3524       --
3525         null;
3526       --
3527       end;
3528     --
3529       if l_payroll_id is null then
3530       --
3531         l_ord_num := g_arch_sal_ass_pay_ind_tbl.count + 1;
3532       --
3533       else
3534       --
3535         l_ord_num := g_arch_sal_ass_pay_tbl(p_data_ass_payroll_id).ord_num;
3536       --
3537       end if;
3538     --
3539     else
3540     --
3541       l_ord_num := g_data_sal_ass_pay_tbl.count + 1;
3542     --
3543     end if;
3544   --
3545     l_pay_ind := g_data_sal_ass_pay_tbl.count;
3546   --
3547     g_data_sal_ass_pay_tbl(l_pay_ind).payroll_id := p_data_ass_payroll_id;
3548     g_data_sal_ass_pay_tbl(l_pay_ind).ord_num    := l_ord_num;
3549   --
3550     g_data_sal_ass_pay_ind_tbl(p_data_ass_payroll_id) := p_data_ass_payroll_id;
3551   --
3552   end if;
3553 --
3554   -- override to latest g_data_sal_ass_pay_tbl, which will be reset for each assignment
3555   -- p_assignment_action_id is archive assignment action ie. unique for each assignment
3556   g_data_pay_tbl(p_assignment_action_id).sal_pay_tbl := g_data_sal_ass_pay_tbl;
3557 --
3558   if g_debug
3559   and g_detail_debug = 'Y' then
3560     hr_utility.trace('p_assignment_action_id           : '||to_char(p_assignment_action_id));
3561     hr_utility.trace('g_data_sal_ass_pay_tbl.count     : '||to_char(g_data_sal_ass_pay_tbl.count));
3562     hr_utility.trace('g_data_sal_ass_pay_ind_tbl.count : '||to_char(g_data_sal_ass_pay_ind_tbl.count));
3563     hr_utility.trace('g_arch_sal_ass_pay_tbl.count     : '||to_char(g_arch_sal_ass_pay_tbl.count));
3564     hr_utility.trace('p_data_ass_payroll_id            : '||to_char(p_data_ass_payroll_id));
3565     hr_utility.trace('g_data_pay_tbl.count             : '||to_char(g_data_pay_tbl.count));
3566     hr_utility.set_location(l_proc,1000);
3567   end if;
3568 --
3569 end set_data_sal_pay_tbl;
3570 --
3571 -- -------------------------------------------------------------------------
3572 -- set_data_bon_pay_tbl
3573 -- -------------------------------------------------------------------------
3574 procedure set_data_bon_pay_tbl(
3575   p_assignment_action_id in number,
3576   p_assignment_id        in number,
3577   p_data_ass_payroll_id  in number)
3578 is
3579 --
3580   l_proc varchar2(80) := c_package||'set_data_bon_pay_tbl';
3581 --
3582   cursor csr_arch_ass_pay
3583   is
3584   select /*+ ORDERED */
3585          pjia.payroll_id
3586   from   pay_jp_itwb_assact_v pjia,
3587          pay_assignment_actions paa_arch_o
3588   where  pjia.assignment_id = p_assignment_id
3589   and    pjia.effective_date
3590          between g_effective_soy and g_effective_eoy
3591   and    paa_arch_o.assignment_action_id = pjia.assignment_action_id
3592   order by paa_arch_o.action_sequence desc;
3593 --
3594   l_payroll_id number;
3595   l_arch_payroll_id number;
3596   l_arch_payroll_id_o number;
3597   l_pay_ind number := 0;
3598   l_ord_num number;
3599 --
3600 begin
3601 --
3602   if g_debug
3603   and g_detail_debug = 'Y' then
3604     hr_utility.set_location(l_proc,0);
3605   end if;
3606 --
3607   if g_arch_bon_ass_pay_ind_tbl.count = 0 then
3608   --
3609     open csr_arch_ass_pay;
3610     loop
3611     --
3612       fetch csr_arch_ass_pay into l_arch_payroll_id;
3613       exit when csr_arch_ass_pay%notfound;
3614     --
3615       if l_arch_payroll_id <> nvl(l_arch_payroll_id_o,-1) then
3616       --
3617         g_arch_bon_ass_pay_ind_tbl(l_arch_payroll_id) := l_arch_payroll_id;
3618         g_arch_bon_ass_pay_tbl(l_arch_payroll_id).payroll_id := l_arch_payroll_id;
3619         g_arch_bon_ass_pay_tbl(l_arch_payroll_id).ord_num := l_pay_ind + 1;
3620       --
3621         l_pay_ind := l_pay_ind + 1;
3622         l_arch_payroll_id_o := l_arch_payroll_id;
3623       --
3624       end if;
3625     --
3626     end loop;
3627     close csr_arch_ass_pay;
3628   --
3629   end if;
3630 --
3631   -- store payroll change history, reset for each assignment
3632   if g_data_bon_ass_pay_tbl.count > 0 then
3633   --
3634     begin
3635     --
3636       l_payroll_id := g_data_bon_ass_pay_ind_tbl(p_data_ass_payroll_id);
3637     --
3638     exception
3639     when others then
3640     --
3641       null;
3642     --
3643     end;
3644   --
3645   end if;
3646   --
3647   if l_payroll_id is null then
3648   --
3649     if g_arch_bon_ass_pay_ind_tbl.count > 0 then
3650     --
3651       begin
3652       --
3653         l_payroll_id := g_arch_bon_ass_pay_ind_tbl(p_data_ass_payroll_id);
3654       --
3655       exception
3656       when others then
3657       --
3658         null;
3659       --
3660       end;
3661     --
3662       if l_payroll_id is null then
3663       --
3664         l_ord_num := g_arch_bon_ass_pay_ind_tbl.count + 1;
3665       --
3666       else
3667       --
3668         l_ord_num := g_arch_bon_ass_pay_tbl(p_data_ass_payroll_id).ord_num;
3669       --
3670       end if;
3671     --
3672     else
3673     --
3674       l_ord_num := g_data_bon_ass_pay_tbl.count + 1;
3675     --
3676     end if;
3677   --
3678     l_pay_ind := g_data_bon_ass_pay_tbl.count;
3679   --
3680     g_data_bon_ass_pay_tbl(l_pay_ind).payroll_id := p_data_ass_payroll_id;
3681     g_data_bon_ass_pay_tbl(l_pay_ind).ord_num    := l_ord_num;
3682   --
3683     g_data_bon_ass_pay_ind_tbl(p_data_ass_payroll_id) := p_data_ass_payroll_id;
3684   --
3685   end if;
3686 --
3687   -- override to latest g_data_bon_ass_pay_tbl, which will be reset for each assignment
3688   -- p_assignment_action_id is archive assignment action ie. unique for each assignment
3689   g_data_pay_tbl(p_assignment_action_id).bon_pay_tbl := g_data_bon_ass_pay_tbl;
3690 --
3691   if g_debug
3692   and g_detail_debug = 'Y' then
3693     hr_utility.trace('p_assignment_action_id           : '||to_char(p_assignment_action_id));
3694     hr_utility.trace('g_data_bon_ass_pay_tbl.count     : '||to_char(g_data_bon_ass_pay_tbl.count));
3695     hr_utility.trace('g_data_bon_ass_pay_ind_tbl.count : '||to_char(g_data_bon_ass_pay_ind_tbl.count));
3696     hr_utility.trace('g_arch_bon_ass_pay_tbl.count     : '||to_char(g_arch_sal_ass_pay_tbl.count));
3697     hr_utility.trace('p_data_ass_payroll_id            : '||to_char(p_data_ass_payroll_id));
3698     hr_utility.trace('g_data_pay_tbl.count             : '||to_char(g_data_pay_tbl.count));
3699     hr_utility.set_location(l_proc,1000);
3700   end if;
3701 --
3702 end set_data_bon_pay_tbl;
3703 --
3704 -- -------------------------------------------------------------------------
3705 -- set_item_info_tbl
3706 -- -------------------------------------------------------------------------
3707 procedure set_item_info_tbl(
3708   p_payroll_id in number)
3709 is
3710 --
3711   l_proc varchar2(80) := c_package||'set_item_info_tbl';
3712 --
3713   l_sal_ern_cnt number;
3714   l_sal_dct_cnt number;
3715   l_bon_ern_cnt number;
3716   l_bon_dct_cnt number;
3717   l_wrk_cnt     number;
3718   l_null_dummy  number;
3719 --
3720   l_sal_ern_cnt_start number;
3721   l_sal_dct_cnt_start number;
3722   l_bon_ern_cnt_start number;
3723   l_bon_dct_cnt_start number;
3724   l_wrk_cnt_start     number;
3725 --
3726   l_csr_item_info_cnt number := 0;
3727 --
3728   cursor csr_item_info
3729   is
3730   select hoi.org_information2 item_cat,
3731          decode(hoi.org_information3,
3732            'IV',fnd_number.canonical_to_number(hoi.org_information5),
3733            'DBAL',fnd_number.canonical_to_number(hoi.org_information7)) item_id,
3734          hoi.org_information3 item_type,
3735          hoi.org_information8 item_rep_name,
3736          fnd_number.canonical_to_number(hoi.org_information9) item_rep_seq,
3737          hoi.org_information10 item_null_valid
3738   from   hr_organization_information hoi
3739   where  hoi.organization_id = g_itax_organization_id
3740   and    hoi.org_information_context = 'JP_ITWB_ITEM_INFO'
3741   and    fnd_number.canonical_to_number(hoi.org_information1) = p_payroll_id
3742   and    not exists(
3743     select null
3744     from   hr_organization_information hoi2
3745     where  hoi2.organization_id = g_itax_organization_id
3746     and    hoi2.org_information_context = 'JP_ITWB_ITEM_INFO'
3747     and    fnd_number.canonical_to_number(hoi2.org_information1) = p_payroll_id
3748     and    hoi2.org_information2 = hoi.org_information2
3749     and    hoi2.org_information3 = hoi.org_information3
3750     and    decode(hoi2.org_information3,
3751            'IV',fnd_number.canonical_to_number(hoi2.org_information5),
3752            'DBAL',fnd_number.canonical_to_number(hoi2.org_information7))
3753          = decode(hoi.org_information3,
3754            'IV',fnd_number.canonical_to_number(hoi.org_information5),
3755            'DBAL',fnd_number.canonical_to_number(hoi.org_information7))
3756     and    hoi2.org_information_id > hoi.org_information_id)
3757   order by
3758     hoi.org_information2,
3759     fnd_number.canonical_to_number(hoi.org_information9),
3760     hoi.org_information8;
3761 --
3762   l_csr_item_info csr_item_info%rowtype;
3763 --
3764 begin
3765 --
3766   if g_debug
3767   and g_detail_debug = 'Y' then
3768     hr_utility.set_location(l_proc,0);
3769   end if;
3770 --
3771   begin
3772   --
3773     l_sal_ern_cnt := g_item_info_ind_tbl(p_payroll_id).sal_ern_start;
3774     l_null_dummy  := g_item_info_ind_tbl(p_payroll_id).null_dummy;
3775   --
3776   exception
3777   when others then
3778   --
3779     null;
3780   --
3781   end;
3782 --
3783   -- set g_item_info_xxx_tbl for the specified payroll
3784   if l_sal_ern_cnt is null
3785   and nvl(l_null_dummy,0) <> -1 then
3786   --
3787     open csr_item_info;
3788     loop
3789     --
3790       fetch csr_item_info into l_csr_item_info;
3791       exit when csr_item_info%notfound;
3792     --
3793       -- store data for multiple payroll
3794       --
3795       if l_csr_item_info_cnt = 0 then
3796       --
3797         l_sal_ern_cnt := g_item_info_sal_ern_tbl.count;
3798         l_sal_dct_cnt := g_item_info_sal_dct_tbl.count;
3799         l_bon_ern_cnt := g_item_info_bon_ern_tbl.count;
3800         l_bon_dct_cnt := g_item_info_bon_dct_tbl.count;
3801         l_wrk_cnt     := g_item_info_wrk_tbl.count;
3802       --
3803         l_sal_ern_cnt_start := l_sal_ern_cnt;
3804         l_sal_dct_cnt_start := l_sal_dct_cnt;
3805         l_bon_ern_cnt_start := l_bon_ern_cnt;
3806         l_bon_dct_cnt_start := l_bon_dct_cnt;
3807         l_wrk_cnt_start     := l_wrk_cnt;
3808       --
3809       end if;
3810     --
3811       if l_csr_item_info.item_cat = 'SAL_ERN' then
3812       --
3813         g_item_info_sal_ern_tbl(l_sal_ern_cnt).item_pk         := l_sal_ern_cnt;
3814         g_item_info_sal_ern_tbl(l_sal_ern_cnt).item_cat        := l_csr_item_info.item_cat;
3815         g_item_info_sal_ern_tbl(l_sal_ern_cnt).item_type       := l_csr_item_info.item_type;
3816         g_item_info_sal_ern_tbl(l_sal_ern_cnt).item_id         := l_csr_item_info.item_id;
3817         g_item_info_sal_ern_tbl(l_sal_ern_cnt).item_rep_name   := l_csr_item_info.item_rep_name;
3818         g_item_info_sal_ern_tbl(l_sal_ern_cnt).item_rep_seq    := l_csr_item_info.item_rep_seq;
3819         g_item_info_sal_ern_tbl(l_sal_ern_cnt).item_null_valid := l_csr_item_info.item_null_valid;
3820       --
3821       elsif l_csr_item_info.item_cat = 'SAL_DCT' then
3822       --
3823         g_item_info_sal_dct_tbl(l_sal_dct_cnt).item_pk         := l_sal_dct_cnt;
3824         g_item_info_sal_dct_tbl(l_sal_dct_cnt).item_cat        := l_csr_item_info.item_cat;
3825         g_item_info_sal_dct_tbl(l_sal_dct_cnt).item_type       := l_csr_item_info.item_type;
3826         g_item_info_sal_dct_tbl(l_sal_dct_cnt).item_id         := l_csr_item_info.item_id;
3827         g_item_info_sal_dct_tbl(l_sal_dct_cnt).item_rep_name   := l_csr_item_info.item_rep_name;
3828         g_item_info_sal_dct_tbl(l_sal_dct_cnt).item_rep_seq    := l_csr_item_info.item_rep_seq;
3829         g_item_info_sal_dct_tbl(l_sal_dct_cnt).item_null_valid := l_csr_item_info.item_null_valid;
3830       --
3831       elsif l_csr_item_info.item_cat = 'BON_ERN' then
3832       --
3833         g_item_info_bon_ern_tbl(l_bon_ern_cnt).item_pk         := l_bon_ern_cnt;
3834         g_item_info_bon_ern_tbl(l_bon_ern_cnt).item_cat        := l_csr_item_info.item_cat;
3835         g_item_info_bon_ern_tbl(l_bon_ern_cnt).item_type       := l_csr_item_info.item_type;
3836         g_item_info_bon_ern_tbl(l_bon_ern_cnt).item_id         := l_csr_item_info.item_id;
3837         g_item_info_bon_ern_tbl(l_bon_ern_cnt).item_rep_name   := l_csr_item_info.item_rep_name;
3838         g_item_info_bon_ern_tbl(l_bon_ern_cnt).item_rep_seq    := l_csr_item_info.item_rep_seq;
3839         g_item_info_bon_ern_tbl(l_bon_ern_cnt).item_null_valid := l_csr_item_info.item_null_valid;
3840       --
3841       elsif l_csr_item_info.item_cat = 'BON_DCT' then
3842       --
3843         g_item_info_bon_dct_tbl(l_bon_dct_cnt).item_pk         := l_bon_dct_cnt;
3844         g_item_info_bon_dct_tbl(l_bon_dct_cnt).item_cat        := l_csr_item_info.item_cat;
3845         g_item_info_bon_dct_tbl(l_bon_dct_cnt).item_type       := l_csr_item_info.item_type;
3846         g_item_info_bon_dct_tbl(l_bon_dct_cnt).item_id         := l_csr_item_info.item_id;
3847         g_item_info_bon_dct_tbl(l_bon_dct_cnt).item_rep_name   := l_csr_item_info.item_rep_name;
3848         g_item_info_bon_dct_tbl(l_bon_dct_cnt).item_rep_seq    := l_csr_item_info.item_rep_seq;
3849         g_item_info_bon_dct_tbl(l_bon_dct_cnt).item_null_valid := l_csr_item_info.item_null_valid;
3850       --
3851       elsif l_csr_item_info.item_cat = 'WRK' then
3852       --
3853         g_item_info_wrk_tbl(l_wrk_cnt).item_pk         := l_wrk_cnt;
3854         g_item_info_wrk_tbl(l_wrk_cnt).item_cat        := l_csr_item_info.item_cat;
3855         g_item_info_wrk_tbl(l_wrk_cnt).item_type       := l_csr_item_info.item_type;
3856         g_item_info_wrk_tbl(l_wrk_cnt).item_id         := l_csr_item_info.item_id;
3857         g_item_info_wrk_tbl(l_wrk_cnt).item_rep_name   := l_csr_item_info.item_rep_name;
3858         g_item_info_wrk_tbl(l_wrk_cnt).item_rep_seq    := l_csr_item_info.item_rep_seq;
3859         g_item_info_wrk_tbl(l_wrk_cnt).item_null_valid := l_csr_item_info.item_null_valid;
3860       --
3861       end if;
3862     --
3863       if l_csr_item_info.item_cat = 'SAL_ERN' then
3864       --
3865         l_sal_ern_cnt := l_sal_ern_cnt + 1;
3866       --
3867       elsif l_csr_item_info.item_cat = 'SAL_DCT' then
3868       --
3869         l_sal_dct_cnt := l_sal_dct_cnt + 1;
3870       --
3871       elsif l_csr_item_info.item_cat = 'BON_ERN' then
3872       --
3873         l_bon_ern_cnt := l_bon_ern_cnt + 1;
3874       --
3875       elsif l_csr_item_info.item_cat = 'BON_DCT' then
3876       --
3877         l_bon_dct_cnt := l_bon_dct_cnt + 1;
3878       --
3879       elsif l_csr_item_info.item_cat = 'WRK' then
3880       --
3881         l_wrk_cnt := l_wrk_cnt + 1;
3882       --
3883       end if;
3884     --
3885       l_csr_item_info_cnt := l_csr_item_info_cnt + 1;
3886     --
3887     end loop;
3888     close csr_item_info;
3889   --
3890     -- need to set null for payroll of non setup item info
3891     g_item_info_ind_tbl(p_payroll_id).null_dummy := -1;
3892   --
3893     if l_sal_ern_cnt > l_sal_ern_cnt_start then
3894     --
3895       g_item_info_ind_tbl(p_payroll_id).sal_ern_start := l_sal_ern_cnt_start;
3896       g_item_info_ind_tbl(p_payroll_id).sal_ern_end   := l_sal_ern_cnt - 1;
3897     --
3898     end if;
3899     --
3900     if l_sal_dct_cnt > l_sal_dct_cnt_start then
3901     --
3902       g_item_info_ind_tbl(p_payroll_id).sal_dct_start := l_sal_dct_cnt_start;
3903       g_item_info_ind_tbl(p_payroll_id).sal_dct_end   := l_sal_dct_cnt - 1;
3904     --
3905     end if;
3906     --
3907     if l_bon_ern_cnt > l_bon_ern_cnt_start then
3908     --
3909       g_item_info_ind_tbl(p_payroll_id).bon_ern_start := l_bon_ern_cnt_start;
3910       g_item_info_ind_tbl(p_payroll_id).bon_ern_end   := l_bon_ern_cnt - 1;
3911     --
3912     end if;
3913     --
3914     if l_bon_dct_cnt > l_bon_dct_cnt_start then
3915     --
3916       g_item_info_ind_tbl(p_payroll_id).bon_dct_start := l_bon_dct_cnt_start;
3917       g_item_info_ind_tbl(p_payroll_id).bon_dct_end   := l_bon_dct_cnt - 1;
3918     --
3919     end if;
3920     --
3921     if l_wrk_cnt > l_wrk_cnt_start then
3922     --
3923       g_item_info_ind_tbl(p_payroll_id).wrk_start := l_wrk_cnt_start;
3924       g_item_info_ind_tbl(p_payroll_id).wrk_end   := l_wrk_cnt - 1;
3925     --
3926     end if;
3927     --
3928   --
3929   end if;
3930 --
3931   if g_debug then
3932   --
3933     hr_utility.trace('l_sal_ern_cnt                 : '||to_char(l_sal_ern_cnt));
3934     hr_utility.trace('l_csr_item_info_cnt           : '||to_char(l_csr_item_info_cnt));
3935     hr_utility.trace('l_null_dummy                  : '||to_char(l_null_dummy));
3936     hr_utility.trace('g_item_info_ind_tbl.count     : '||to_char(g_item_info_ind_tbl.count));
3937     hr_utility.trace('g_item_info_sal_ern_tbl.count : '||to_char(g_item_info_sal_ern_tbl.count));
3938     hr_utility.trace('g_item_info_sal_dct_tbl.count : '||to_char(g_item_info_sal_dct_tbl.count));
3939     hr_utility.trace('g_item_info_bon_ern_tbl.count : '||to_char(g_item_info_bon_ern_tbl.count));
3940     hr_utility.trace('g_item_info_bon_dct_tbl.count : '||to_char(g_item_info_bon_dct_tbl.count));
3941     hr_utility.trace('g_item_info_wrk_tbl.count     : '||to_char(g_item_info_wrk_tbl.count));
3942   --
3943   end if;
3944 --
3945   if g_debug
3946   and g_detail_debug = 'Y' then
3947     hr_utility.trace('p_payroll_id : '||to_char(p_payroll_id));
3948     hr_utility.set_location(l_proc,1000);
3949   end if;
3950 --
3951 end set_item_info_tbl;
3952 --
3953 -- -------------------------------------------------------------------------
3954 -- set_data_item_tbl_ass_val
3955 -- -------------------------------------------------------------------------
3956 procedure set_data_item_tbl_ass_val(
3957   p_item_pk           in number,
3958   p_item_val          in number,
3959   p_item_null_val     in varchar2,
3960   p_data_item_ass_tbl in out nocopy t_data_item_ass_tbl)
3961 is
3962 --
3963 begin
3964 --
3965   p_data_item_ass_tbl(p_item_pk).col_val      := p_item_val;
3966   p_data_item_ass_tbl(p_item_pk).col_val_null := p_item_null_val;
3967 --
3968 end set_data_item_tbl_ass_val;
3969 --
3970 -- -------------------------------------------------------------------------
3971 -- set_data_item_tbl
3972 -- -------------------------------------------------------------------------
3973 procedure set_data_item_tbl(
3974   p_assignment_action_id in number,
3975   p_type                 in varchar2,
3976   p_data_ass_payroll_id  in number,
3977   p_data_ass_date_earned in date)
3978 is
3979 --
3980   l_proc varchar2(80) := c_package||'set_data_item_tbl';
3981 --
3982   l_item_pk    number;
3983   l_item_start number;
3984   l_item_end   number;
3985 --
3986   l_item_id       number;
3987   l_item_type     varchar2(150);
3988   l_item_val      varchar2(150);
3989   l_item_null_val varchar2(1);
3990 --
3991   cursor csr_iv_rslt
3992   is
3993   select /*+ ORDERED */
3994          target_iv.input_value_id,
3995          sum(nvl(fnd_number.canonical_to_number(prrv.result_value),0)) rslt_val
3996   from   (select /*+ ORDERED */
3997                  piv.element_type_id,
3998                  piv.input_value_id
3999           from   hr_organization_information hoi,
4000                  pay_input_values_f piv
4001           where  hoi.organization_id = g_itax_organization_id
4002           and    hoi.org_information_context = 'JP_ITWB_ITEM_INFO'
4003           and    hoi.org_information3 = 'IV'
4004           and    fnd_number.canonical_to_number(hoi.org_information1) = p_data_ass_payroll_id
4005           and    piv.input_value_id = fnd_number.canonical_to_number(hoi.org_information5)
4006           and    nvl(piv.legislation_code,g_legislation_code) = g_legislation_code
4007           and    nvl(piv.business_group_id,g_business_group_id) = g_business_group_id
4008           and    p_data_ass_date_earned
4009                  between piv.effective_start_date and piv.effective_end_date
4010           and    not exists(
4011             select null
4012             from   hr_organization_information hoi2
4013             where  hoi2.organization_id = g_itax_organization_id
4014             and    hoi2.org_information_context = 'JP_ITWB_ITEM_INFO'
4015             and    hoi2.org_information3 = 'IV'
4016             and    fnd_number.canonical_to_number(hoi2.org_information1) = p_data_ass_payroll_id
4017             and    fnd_number.canonical_to_number(hoi2.org_information5) = fnd_number.canonical_to_number(hoi.org_information5)
4018             and    hoi2.org_information_id > hoi.org_information_id)) target_iv,
4019          pay_run_results prr,
4020          pay_run_result_values prrv
4021   where  prr.assignment_action_id = p_assignment_action_id
4022   and    prr.element_type_id = target_iv.element_type_id
4023   and    prrv.run_result_id = prr.run_result_id
4024   and    prrv.input_value_id = target_iv.input_value_id
4025   group by target_iv.input_value_id;
4026 --
4027   l_csr_iv_rslt csr_iv_rslt%rowtype;
4028 --
4029   --function get_elm_id(
4030   --  p_input_value_id number)
4031   --return number
4032   --is
4033   ----
4034   --  l_element_type_id number;
4035   ----
4036   --  cursor csr_elm_id
4037   --  is
4038   --  select piv.element_type_id
4039   --  from   pay_input_values_f piv
4040   --  where  piv.input_value_id = p_input_value_id;
4041   ----
4042   --begin
4043   ----
4044   --  open csr_elm_id;
4045   --  fetch csr_elm_id into l_element_type_id;
4046   --  close csr_elm_id;
4047   ----
4048   --return l_element_type_id;
4049   --end get_elm_id;
4050 --
4051   type t_data_item_iv_rslt_tbl is table of varchar2(60) index by binary_integer;
4052 --
4053   l_data_item_iv_rslt_tbl t_data_item_iv_rslt_tbl;
4054 --
4055 begin
4056 --
4057   if g_debug
4058   and g_detail_debug = 'Y' then
4059     hr_utility.set_location(l_proc,0);
4060     hr_utility.trace('p_assignment_action_id : '||to_char(p_assignment_action_id));
4061     hr_utility.trace('p_type                 : '||p_type);
4062     hr_utility.trace('p_data_ass_payroll_id  : '||to_char(p_data_ass_payroll_id));
4063   end if;
4064 --
4065   -- need to reset for every process assignment action
4066   open csr_iv_rslt;
4067   loop
4068   --
4069     fetch csr_iv_rslt into l_csr_iv_rslt;
4070     exit when csr_iv_rslt%notfound;
4071   --
4072     l_data_item_iv_rslt_tbl(l_csr_iv_rslt.input_value_id) := l_csr_iv_rslt.rslt_val;
4073   --
4074   end loop;
4075   close csr_iv_rslt;
4076 --
4077   if g_debug
4078   and g_detail_debug = 'Y' then
4079     hr_utility.set_location(l_proc,10);
4080     hr_utility.trace('l_data_item_iv_rslt_tbl.count : '||to_char(l_data_item_iv_rslt_tbl.count));
4081   end if;
4082 --
4083   set_item_info_tbl(p_data_ass_payroll_id);
4084 --
4085   if g_debug
4086   and g_detail_debug = 'Y' then
4087     hr_utility.set_location(l_proc,20);
4088   end if;
4089 --
4090   begin
4091   --
4092     if p_type = 'SAL_ERN' then
4093     --
4094       l_item_start := g_item_info_ind_tbl(p_data_ass_payroll_id).sal_ern_start;
4095       l_item_end   := g_item_info_ind_tbl(p_data_ass_payroll_id).sal_ern_end;
4096     --
4097     elsif p_type = 'SAL_DCT' then
4098     --
4099       l_item_start := g_item_info_ind_tbl(p_data_ass_payroll_id).sal_dct_start;
4100       l_item_end   := g_item_info_ind_tbl(p_data_ass_payroll_id).sal_dct_end;
4101     --
4102     elsif p_type = 'BON_ERN' then
4103     --
4104       l_item_start := g_item_info_ind_tbl(p_data_ass_payroll_id).bon_ern_start;
4105       l_item_end   := g_item_info_ind_tbl(p_data_ass_payroll_id).bon_ern_end;
4106     --
4107     elsif p_type = 'BON_DCT' then
4108     --
4109       l_item_start := g_item_info_ind_tbl(p_data_ass_payroll_id).bon_dct_start;
4110       l_item_end   := g_item_info_ind_tbl(p_data_ass_payroll_id).bon_dct_end;
4111     --
4112     elsif p_type = 'WRK' then
4113     --
4114       l_item_start := g_item_info_ind_tbl(p_data_ass_payroll_id).wrk_start;
4115       l_item_end   := g_item_info_ind_tbl(p_data_ass_payroll_id).wrk_end;
4116     --
4117     end if;
4118   --
4119   exception
4120   when others then
4121   --
4122     null;
4123   --
4124   end;
4125 --
4126   if g_debug
4127   and g_detail_debug = 'Y' then
4128     hr_utility.set_location(l_proc,30);
4129     hr_utility.trace('l_item_start : '||to_char(l_item_start));
4130     hr_utility.trace('l_item_end   : '||to_char(l_item_end));
4131   end if;
4132 --
4133   if l_item_start is not null
4134   and l_item_end is not null
4135   and l_item_start <= l_item_end then
4136   --
4137     if g_debug
4138     and g_detail_debug = 'Y' then
4139       hr_utility.set_location(l_proc,40);
4140     end if;
4141   --
4142     for i in l_item_start..l_item_end loop
4143     --
4144       l_item_val := null;
4145       l_item_null_val := null;
4146     --
4147       if p_type = 'SAL_ERN' then
4148       --
4149         l_item_pk   := g_item_info_sal_ern_tbl(i).item_pk;
4150         l_item_type := g_item_info_sal_ern_tbl(i).item_type;
4151         l_item_id   := g_item_info_sal_ern_tbl(i).item_id;
4152       --
4153       elsif p_type = 'SAL_DCT' then
4154       --
4155         l_item_pk   := g_item_info_sal_dct_tbl(i).item_pk;
4156         l_item_type := g_item_info_sal_dct_tbl(i).item_type;
4157         l_item_id   := g_item_info_sal_dct_tbl(i).item_id;
4158       --
4159       elsif p_type = 'BON_ERN' then
4160       --
4161         l_item_pk   := g_item_info_bon_ern_tbl(i).item_pk;
4162         l_item_type := g_item_info_bon_ern_tbl(i).item_type;
4163         l_item_id   := g_item_info_bon_ern_tbl(i).item_id;
4164       --
4165       elsif p_type = 'BON_DCT' then
4166       --
4167         l_item_pk   := g_item_info_bon_dct_tbl(i).item_pk;
4168         l_item_type := g_item_info_bon_dct_tbl(i).item_type;
4169         l_item_id   := g_item_info_bon_dct_tbl(i).item_id;
4170       --
4171       elsif p_type = 'WRK' then
4172       --
4173         l_item_pk   := g_item_info_wrk_tbl(i).item_pk;
4174         l_item_type := g_item_info_wrk_tbl(i).item_type;
4175         l_item_id   := g_item_info_wrk_tbl(i).item_id;
4176       --
4177       end if;
4178     --
4179       if g_debug
4180       and g_detail_debug = 'Y' then
4181         hr_utility.set_location(l_proc,50);
4182         hr_utility.trace('l_item_pk   : '||to_char(l_item_pk));
4183         hr_utility.trace('l_item_type : '||l_item_type);
4184         hr_utility.trace('l_item_id   : '||to_char(l_item_id));
4185       end if;
4186     --
4187       if l_item_type = 'IV' then
4188       --
4189         begin
4190         --
4191           l_item_val := l_data_item_iv_rslt_tbl(l_item_id);
4192         --
4193         exception
4194         when others then
4195         --
4196           --l_item_val := pay_jp_balance_pkg.get_result_value_number(get_elm_id(l_item_id),l_item_id,p_assignment_action_id)
4197           l_item_null_val := 'Y';
4198         --
4199         end;
4200       --
4201       elsif l_item_type = 'DBAL' then
4202       --
4203         begin
4204         --
4205           l_item_val := pay_jp_balance_pkg.get_balance_value(l_item_id,p_assignment_action_id);
4206         --
4207         exception
4208         when others then
4209         --
4210           l_item_null_val := 'Y';
4211         --
4212         end;
4213       --
4214         if nvl(l_item_val,0) = 0 then
4215         --
4216           l_item_null_val := 'Y';
4217         --
4218         end if;
4219       --
4220       end if;
4221     --
4222       if g_debug
4223       and g_detail_debug = 'Y' then
4224         hr_utility.set_location(l_proc,60);
4225         hr_utility.trace('l_item_val      : '||l_item_val);
4226         hr_utility.trace('l_item_null_val : '||l_item_null_val);
4227         hr_utility.trace('g_data_item_act_sal_ern_tbl.count : '||to_char(g_data_item_act_sal_ern_tbl.count));
4228         hr_utility.trace('g_data_item_act_sal_dct_tbl.count : '||to_char(g_data_item_act_sal_dct_tbl.count));
4229         hr_utility.trace('g_data_item_act_wrk_tbl.count     : '||to_char(g_data_item_act_wrk_tbl.count));
4230         hr_utility.trace('g_data_item_act_bon_ern_tbl.count : '||to_char(g_data_item_act_bon_ern_tbl.count));
4231         hr_utility.trace('g_data_item_act_bon_dct_tbl.count : '||to_char(g_data_item_act_bon_dct_tbl.count));
4232       end if;
4233     --
4234       if p_type = 'SAL_ERN' then
4235       --
4236         set_data_item_tbl_ass_val(
4237           p_item_pk           => l_item_pk,
4238           p_item_val          => l_item_val,
4239           p_item_null_val     => l_item_null_val,
4240           p_data_item_ass_tbl => g_data_item_act_sal_ern_tbl);
4241       --
4242       elsif p_type = 'SAL_DCT' then
4243       --
4244         set_data_item_tbl_ass_val(
4245           p_item_pk           => l_item_pk,
4246           p_item_val          => l_item_val,
4247           p_item_null_val     => l_item_null_val,
4248           p_data_item_ass_tbl => g_data_item_act_sal_dct_tbl);
4249       --
4250       elsif p_type = 'WRK' then
4251       --
4252         set_data_item_tbl_ass_val(
4253           p_item_pk           => l_item_pk,
4254           p_item_val          => l_item_val,
4255           p_item_null_val     => l_item_null_val,
4256           p_data_item_ass_tbl => g_data_item_act_wrk_tbl);
4257       --
4258       elsif p_type = 'BON_ERN' then
4259       --
4260         set_data_item_tbl_ass_val(
4261           p_item_pk           => l_item_pk,
4262           p_item_val          => l_item_val,
4263           p_item_null_val     => l_item_null_val,
4264           p_data_item_ass_tbl => g_data_item_act_bon_ern_tbl);
4265       --
4266       elsif p_type = 'BON_DCT' then
4267       --
4268         set_data_item_tbl_ass_val(
4269           p_item_pk           => l_item_pk,
4270           p_item_val          => l_item_val,
4271           p_item_null_val     => l_item_null_val,
4272           p_data_item_ass_tbl => g_data_item_act_bon_dct_tbl);
4273       --
4274       end if;
4275     --
4276       if g_debug
4277       and g_detail_debug = 'Y' then
4278         hr_utility.set_location(l_proc,70);
4279         hr_utility.trace('g_data_item_act_sal_ern_tbl.count : '||to_char(g_data_item_act_sal_ern_tbl.count));
4280         hr_utility.trace('g_data_item_act_sal_dct_tbl.count : '||to_char(g_data_item_act_sal_dct_tbl.count));
4281         hr_utility.trace('g_data_item_act_wrk_tbl.count     : '||to_char(g_data_item_act_wrk_tbl.count));
4282         hr_utility.trace('g_data_item_act_bon_ern_tbl.count : '||to_char(g_data_item_act_bon_ern_tbl.count));
4283         hr_utility.trace('g_data_item_act_bon_dct_tbl.count : '||to_char(g_data_item_act_bon_dct_tbl.count));
4284       end if;
4285     --
4286     end loop;
4287   --
4288   end if;
4289 --
4290   if g_debug
4291   and g_detail_debug = 'Y' then
4292     hr_utility.set_location(l_proc,80);
4293     hr_utility.trace('g_data_item_tbl.count : '||to_char(g_data_item_tbl.count));
4294   end if;
4295 --
4296   if p_type = 'SAL_ERN' then
4297   --
4298     g_data_item_tbl(p_assignment_action_id).sal_ern_tbl := g_data_item_act_sal_ern_tbl;
4299   --
4300   elsif p_type = 'SAL_DCT' then
4301   --
4302     g_data_item_tbl(p_assignment_action_id).sal_dct_tbl := g_data_item_act_sal_dct_tbl;
4303   --
4304   elsif p_type = 'BON_ERN' then
4305   --
4306     g_data_item_tbl(p_assignment_action_id).bon_ern_tbl := g_data_item_act_bon_ern_tbl;
4307   --
4308   elsif p_type = 'BON_DCT' then
4309   --
4310     g_data_item_tbl(p_assignment_action_id).bon_dct_tbl := g_data_item_act_bon_dct_tbl;
4311   --
4312   elsif p_type = 'WRK' then
4313   --
4314     g_data_item_tbl(p_assignment_action_id).wrk_tbl     := g_data_item_act_wrk_tbl;
4315   --
4316   end if;
4317 --
4318   if g_debug
4319   and g_detail_debug = 'Y' then
4320     hr_utility.trace('p_assignment_action_id            : '||to_char(p_assignment_action_id));
4321     hr_utility.trace('g_data_item_tbl.count             : '||to_char(g_data_item_tbl.count));
4322     hr_utility.trace('g_data_item_act_sal_ern_tbl.count : '||to_char(g_data_item_act_sal_ern_tbl.count));
4323     hr_utility.trace('g_data_item_act_sal_dct_tbl.count : '||to_char(g_data_item_act_sal_dct_tbl.count));
4324     hr_utility.trace('g_data_item_act_wrk_tbl.count     : '||to_char(g_data_item_act_wrk_tbl.count));
4325     hr_utility.trace('g_data_item_act_bon_ern_tbl.count : '||to_char(g_data_item_act_bon_ern_tbl.count));
4326     hr_utility.trace('g_data_item_act_bon_dct_tbl.count : '||to_char(g_data_item_act_bon_dct_tbl.count));
4327     hr_utility.set_location(l_proc,1000);
4328   end if;
4329 --
4330 end set_data_item_tbl;
4331 --
4332 -- -------------------------------------------------------------------------
4333 -- set_data_pay_col_tot
4334 -- -------------------------------------------------------------------------
4335 procedure set_data_pay_col_tot(
4336   p_assignment_action_id in number)
4337 is
4338 --
4339   l_proc varchar2(80) := c_package||'set_data_pay_col_tot';
4340 --
4341 begin
4342 --
4343   if g_debug
4344   and g_detail_debug = 'Y' then
4345     hr_utility.set_location(l_proc,0);
4346   end if;
4347 --
4348   -- update pay_jp_itwb_sal_pay_v
4349   update pay_action_information
4350   set action_information14 = fnd_number.number_to_canonical(
4351     nvl(fnd_number.canonical_to_number(action_information2),0)
4352   + nvl(fnd_number.canonical_to_number(action_information3),0)
4353   + nvl(fnd_number.canonical_to_number(action_information4),0)
4354   + nvl(fnd_number.canonical_to_number(action_information5),0)
4355   + nvl(fnd_number.canonical_to_number(action_information6),0)
4356   + nvl(fnd_number.canonical_to_number(action_information7),0)
4357   + nvl(fnd_number.canonical_to_number(action_information8),0)
4358   + nvl(fnd_number.canonical_to_number(action_information9),0)
4359   + nvl(fnd_number.canonical_to_number(action_information10),0)
4360   + nvl(fnd_number.canonical_to_number(action_information11),0)
4361   + nvl(fnd_number.canonical_to_number(action_information12),0)
4362   + nvl(fnd_number.canonical_to_number(action_information13),0))
4363   where action_context_type = 'AAP'
4364   and   action_information_category = 'JP_ITWB_SAL_PAY'
4365   and   action_context_id = p_assignment_action_id
4366   and   action_information1 <> 'DPT'
4367   and   (action_information2 is not null
4368         or action_information3 is not null
4369         or action_information4 is not null
4370         or action_information5 is not null
4371         or action_information6 is not null
4372         or action_information7 is not null
4373         or action_information8 is not null
4374         or action_information9 is not null
4375         or action_information10 is not null
4376         or action_information11 is not null
4377         or action_information12 is not null
4378         or action_information13 is not null);
4379 --
4380   -- update pay_jp_itwb_bon_pay_v
4381   update pay_action_information
4382   set action_information17 = fnd_number.number_to_canonical(
4383     nvl(fnd_number.canonical_to_number(action_information2),0)
4384   + nvl(fnd_number.canonical_to_number(action_information3),0)
4385   + nvl(fnd_number.canonical_to_number(action_information4),0)
4386   + nvl(fnd_number.canonical_to_number(action_information5),0)
4387   + nvl(fnd_number.canonical_to_number(action_information6),0)
4388   + nvl(fnd_number.canonical_to_number(action_information7),0)
4389   + nvl(fnd_number.canonical_to_number(action_information8),0)
4390   + nvl(fnd_number.canonical_to_number(action_information9),0)
4391   + nvl(fnd_number.canonical_to_number(action_information10),0)
4392   + nvl(fnd_number.canonical_to_number(action_information11),0)
4393   + nvl(fnd_number.canonical_to_number(action_information12),0)
4394   + nvl(fnd_number.canonical_to_number(action_information13),0)
4395   + nvl(fnd_number.canonical_to_number(action_information14),0)
4396   + nvl(fnd_number.canonical_to_number(action_information15),0)
4397   + nvl(fnd_number.canonical_to_number(action_information16),0))
4398   where action_context_type = 'AAP'
4399   and   action_information_category = 'JP_ITWB_BON_PAY'
4400   and   action_context_id = p_assignment_action_id
4401   and   action_information1 not in ('DPT','ITX_RATE')
4402   and   (action_information2 is not null
4403         or action_information3 is not null
4404         or action_information4 is not null
4405         or action_information5 is not null
4406         or action_information6 is not null
4407         or action_information7 is not null
4408         or action_information8 is not null
4409         or action_information9 is not null
4410         or action_information10 is not null
4411         or action_information11 is not null
4412         or action_information12 is not null
4413         or action_information13 is not null
4414         or action_information14 is not null
4415         or action_information15 is not null
4416         or action_information16 is not null);
4417 --
4418   if g_debug
4419   and g_detail_debug = 'Y' then
4420     hr_utility.set_location(l_proc,1000);
4421   end if;
4422 --
4423 end set_data_pay_col_tot;
4424 --
4425 -- -------------------------------------------------------------------------
4426 -- set_data_item_col_tot
4427 -- -------------------------------------------------------------------------
4428 procedure set_data_item_col_tot(
4429   p_assignment_action_id in number,
4430   p_type in varchar2)
4431 is
4432 --
4433   l_proc varchar2(80) := c_package||'set_data_item_col_tot';
4434 --
4435 begin
4436 --
4437   if g_debug
4438   and g_detail_debug = 'Y' then
4439     hr_utility.set_location(l_proc,0);
4440   end if;
4441 --
4442   if p_type = 'SAL' then
4443   --
4444     -- update pay_jp_itwb_sal_earn_v
4445     update pay_action_information
4446     set action_information19 = fnd_number.number_to_canonical(
4447       nvl(fnd_number.canonical_to_number(action_information7),0)
4448     + nvl(fnd_number.canonical_to_number(action_information8),0)
4449     + nvl(fnd_number.canonical_to_number(action_information9),0)
4450     + nvl(fnd_number.canonical_to_number(action_information10),0)
4451     + nvl(fnd_number.canonical_to_number(action_information11),0)
4452     + nvl(fnd_number.canonical_to_number(action_information12),0)
4453     + nvl(fnd_number.canonical_to_number(action_information13),0)
4454     + nvl(fnd_number.canonical_to_number(action_information14),0)
4455     + nvl(fnd_number.canonical_to_number(action_information15),0)
4456     + nvl(fnd_number.canonical_to_number(action_information16),0)
4457     + nvl(fnd_number.canonical_to_number(action_information17),0)
4458     + nvl(fnd_number.canonical_to_number(action_information18),0))
4459     where action_context_type = 'AAP'
4460     and   action_information_category = 'JP_ITWB_SAL_EARN'
4461     and   action_context_id = p_assignment_action_id
4462     and   (action_information7 is not null
4463           or action_information8 is not null
4464           or action_information9 is not null
4465           or action_information10 is not null
4466           or action_information11 is not null
4467           or action_information12 is not null
4468           or action_information13 is not null
4469           or action_information14 is not null
4470           or action_information15 is not null
4471           or action_information16 is not null
4472           or action_information17 is not null
4473           or action_information18 is not null);
4474   --
4475     -- update pay_jp_itwb_sal_dct_v
4476     update pay_action_information
4477     set action_information19 = fnd_number.number_to_canonical(
4478       nvl(fnd_number.canonical_to_number(action_information7),0)
4479     + nvl(fnd_number.canonical_to_number(action_information8),0)
4480     + nvl(fnd_number.canonical_to_number(action_information9),0)
4481     + nvl(fnd_number.canonical_to_number(action_information10),0)
4482     + nvl(fnd_number.canonical_to_number(action_information11),0)
4483     + nvl(fnd_number.canonical_to_number(action_information12),0)
4484     + nvl(fnd_number.canonical_to_number(action_information13),0)
4485     + nvl(fnd_number.canonical_to_number(action_information14),0)
4486     + nvl(fnd_number.canonical_to_number(action_information15),0)
4487     + nvl(fnd_number.canonical_to_number(action_information16),0)
4488     + nvl(fnd_number.canonical_to_number(action_information17),0)
4489     + nvl(fnd_number.canonical_to_number(action_information18),0))
4490     where action_context_type = 'AAP'
4491     and   action_information_category = 'JP_ITWB_SAL_DCT'
4492     and   action_context_id = p_assignment_action_id
4493     and   (action_information7 is not null
4494           or action_information8 is not null
4495           or action_information9 is not null
4496           or action_information10 is not null
4497           or action_information11 is not null
4498           or action_information12 is not null
4499           or action_information13 is not null
4500           or action_information14 is not null
4501           or action_information15 is not null
4502           or action_information16 is not null
4503           or action_information17 is not null
4504           or action_information18 is not null);
4505   --
4506     --update pay_jp_itwb_wrk_v
4507     update pay_action_information
4508     set action_information19 = fnd_number.number_to_canonical(
4509       nvl(fnd_number.canonical_to_number(action_information7),0)
4510     + nvl(fnd_number.canonical_to_number(action_information8),0)
4511     + nvl(fnd_number.canonical_to_number(action_information9),0)
4512     + nvl(fnd_number.canonical_to_number(action_information10),0)
4513     + nvl(fnd_number.canonical_to_number(action_information11),0)
4514     + nvl(fnd_number.canonical_to_number(action_information12),0)
4515     + nvl(fnd_number.canonical_to_number(action_information13),0)
4516     + nvl(fnd_number.canonical_to_number(action_information14),0)
4517     + nvl(fnd_number.canonical_to_number(action_information15),0)
4518     + nvl(fnd_number.canonical_to_number(action_information16),0)
4519     + nvl(fnd_number.canonical_to_number(action_information17),0)
4520     + nvl(fnd_number.canonical_to_number(action_information18),0))
4521     where action_context_type = 'AAP'
4522     and   action_information_category = 'JP_ITWB_WRK'
4523     and   action_context_id = p_assignment_action_id
4524     and   (action_information7 is not null
4525           or action_information8 is not null
4526           or action_information9 is not null
4527           or action_information10 is not null
4528           or action_information11 is not null
4529           or action_information12 is not null
4530           or action_information13 is not null
4531           or action_information14 is not null
4532           or action_information15 is not null
4533           or action_information16 is not null
4534           or action_information17 is not null
4535           or action_information18 is not null);
4536   --
4537   elsif p_type = 'BON' then
4538   --
4539     -- update pay_jp_itwb_bon_earn_v
4540     update pay_action_information
4541     set action_information22 = fnd_number.number_to_canonical(
4542       nvl(fnd_number.canonical_to_number(action_information7),0)
4543     + nvl(fnd_number.canonical_to_number(action_information8),0)
4544     + nvl(fnd_number.canonical_to_number(action_information9),0)
4545     + nvl(fnd_number.canonical_to_number(action_information10),0)
4546     + nvl(fnd_number.canonical_to_number(action_information11),0)
4547     + nvl(fnd_number.canonical_to_number(action_information12),0)
4548     + nvl(fnd_number.canonical_to_number(action_information13),0)
4549     + nvl(fnd_number.canonical_to_number(action_information14),0)
4550     + nvl(fnd_number.canonical_to_number(action_information15),0)
4551     + nvl(fnd_number.canonical_to_number(action_information16),0)
4552     + nvl(fnd_number.canonical_to_number(action_information17),0)
4553     + nvl(fnd_number.canonical_to_number(action_information18),0)
4554     + nvl(fnd_number.canonical_to_number(action_information19),0)
4555     + nvl(fnd_number.canonical_to_number(action_information20),0)
4556     + nvl(fnd_number.canonical_to_number(action_information21),0))
4557     where action_context_type = 'AAP'
4558     and   action_information_category = 'JP_ITWB_BON_EARN'
4559     and   action_context_id = p_assignment_action_id
4560     and   (action_information7 is not null
4561           or action_information8 is not null
4562           or action_information9 is not null
4563           or action_information10 is not null
4564           or action_information11 is not null
4565           or action_information12 is not null
4566           or action_information13 is not null
4567           or action_information14 is not null
4568           or action_information15 is not null
4569           or action_information16 is not null
4570           or action_information17 is not null
4571           or action_information18 is not null
4572           or action_information19 is not null
4573           or action_information20 is not null
4574           or action_information21 is not null);
4575   --
4576     -- update pay_jp_itwb_bon_dct_v
4577     update pay_action_information
4578     set action_information22 = fnd_number.number_to_canonical(
4579       nvl(fnd_number.canonical_to_number(action_information7),0)
4580     + nvl(fnd_number.canonical_to_number(action_information8),0)
4581     + nvl(fnd_number.canonical_to_number(action_information9),0)
4582     + nvl(fnd_number.canonical_to_number(action_information10),0)
4583     + nvl(fnd_number.canonical_to_number(action_information11),0)
4584     + nvl(fnd_number.canonical_to_number(action_information12),0)
4585     + nvl(fnd_number.canonical_to_number(action_information13),0)
4586     + nvl(fnd_number.canonical_to_number(action_information14),0)
4587     + nvl(fnd_number.canonical_to_number(action_information15),0)
4588     + nvl(fnd_number.canonical_to_number(action_information16),0)
4589     + nvl(fnd_number.canonical_to_number(action_information17),0)
4590     + nvl(fnd_number.canonical_to_number(action_information18),0)
4591     + nvl(fnd_number.canonical_to_number(action_information19),0)
4592     + nvl(fnd_number.canonical_to_number(action_information20),0)
4593     + nvl(fnd_number.canonical_to_number(action_information21),0))
4594     where action_context_type = 'AAP'
4595     and   action_information_category = 'JP_ITWB_BON_DCT'
4596     and   action_context_id = p_assignment_action_id
4597     and   (action_information7 is not null
4598           or action_information8 is not null
4599           or action_information9 is not null
4600           or action_information10 is not null
4601           or action_information11 is not null
4602           or action_information12 is not null
4603           or action_information13 is not null
4604           or action_information14 is not null
4605           or action_information15 is not null
4606           or action_information16 is not null
4607           or action_information17 is not null
4608           or action_information18 is not null
4609           or action_information19 is not null
4610           or action_information20 is not null
4611           or action_information21 is not null);
4612   --
4613   end if;
4614 --
4615   if g_debug
4616   and g_detail_debug = 'Y' then
4617     hr_utility.set_location(l_proc,1000);
4618   end if;
4619 --
4620 end set_data_item_col_tot;
4621 --
4622 -- -------------------------------------------------------------------------
4623 -- cnv_null_val
4624 -- -------------------------------------------------------------------------
4625 function cnv_null_val(
4626   p_data_item_ass_tbl in t_data_item_ass_tbl,
4627   p_item_pk           in number)
4628 return number
4629 is
4630 --
4631   l_col_val number;
4632 --
4633 begin
4634 --
4635   if p_data_item_ass_tbl.count > 0 then
4636   --
4637     begin
4638     --
4639       l_col_val := fnd_number.canonical_to_number(p_data_item_ass_tbl(p_item_pk).col_val);
4640     --
4641     exception
4642     when no_data_found then
4643     --
4644       null;
4645     --
4646     end;
4647   --
4648   end if;
4649 --
4650 return l_col_val;
4651 end cnv_null_val;
4652 --
4653 -- -------------------------------------------------------------------------
4654 -- valid_null_val
4655 -- -------------------------------------------------------------------------
4656 function valid_null_val(
4657   p_data_item_ass_tbl in t_data_item_ass_tbl,
4658   p_item_pk           in number)
4659 return varchar2
4660 is
4661 --
4662   l_col_val_null varchar2(1);
4663 --
4664 begin
4665 --
4666   if p_data_item_ass_tbl.count > 0 then
4667   --
4668     begin
4669     --
4670       l_col_val_null := p_data_item_ass_tbl(p_item_pk).col_val_null;
4671     --
4672     exception
4673     when no_data_found then
4674     --
4675       l_col_val_null := 'Y';
4676     --
4677     end;
4678   --
4679   else
4680   --
4681     l_col_val_null := 'Y';
4682   --
4683   end if;
4684 --
4685 return l_col_val_null;
4686 end valid_null_val;
4687 --
4688 -- -------------------------------------------------------------------------
4689 -- set_data_cust_tbl
4690 -- -------------------------------------------------------------------------
4691 procedure set_data_cust_tbl(
4692   p_assignment_action_id in number,
4693   p_assignment_id        in number,
4694   p_employee_number      in varchar2,
4695   p_effective_date       in date,
4696   p_date_earned          in date)
4697 is
4698 --
4699   l_proc varchar2(80) := c_package||'set_data_cust_tbl';
4700 --
4701   l_error_code number;
4702   l_error_mesg varchar2(100);
4703 --
4704 begin
4705 --
4706   if g_debug
4707   and g_detail_debug = 'Y' then
4708     hr_utility.set_location(l_proc,0);
4709   end if;
4710 --
4711   pay_jp_itwb_archive_pkg.g_cust_assignment_id  := null;
4712   pay_jp_itwb_archive_pkg.g_cust_effective_date := to_date(null);
4713   pay_jp_itwb_archive_pkg.g_cust_date_earned    := to_date(null);
4714 --
4715   pay_jp_itwb_archive_pkg.g_cust_txt_information1  := null;
4716   pay_jp_itwb_archive_pkg.g_cust_txt_information2  := null;
4717   pay_jp_itwb_archive_pkg.g_cust_txt_information3  := null;
4718   pay_jp_itwb_archive_pkg.g_cust_txt_information4  := null;
4719   pay_jp_itwb_archive_pkg.g_cust_txt_information5  := null;
4720   pay_jp_itwb_archive_pkg.g_cust_txt_information6  := null;
4721   pay_jp_itwb_archive_pkg.g_cust_txt_information7  := null;
4722   pay_jp_itwb_archive_pkg.g_cust_txt_information8  := null;
4723   pay_jp_itwb_archive_pkg.g_cust_txt_information9  := null;
4724   pay_jp_itwb_archive_pkg.g_cust_txt_information10 := null;
4725   pay_jp_itwb_archive_pkg.g_cust_txt_information11 := null;
4726   pay_jp_itwb_archive_pkg.g_cust_txt_information12 := null;
4727   pay_jp_itwb_archive_pkg.g_cust_txt_information13 := null;
4728   pay_jp_itwb_archive_pkg.g_cust_txt_information14 := null;
4729   pay_jp_itwb_archive_pkg.g_cust_txt_information15 := null;
4730   pay_jp_itwb_archive_pkg.g_cust_txt_information16 := null;
4731   pay_jp_itwb_archive_pkg.g_cust_txt_information17 := null;
4732   pay_jp_itwb_archive_pkg.g_cust_txt_information18 := null;
4733   pay_jp_itwb_archive_pkg.g_cust_txt_information19 := null;
4734   pay_jp_itwb_archive_pkg.g_cust_txt_information20 := null;
4735   pay_jp_itwb_archive_pkg.g_cust_txt_information21 := null;
4736   pay_jp_itwb_archive_pkg.g_cust_txt_information22 := null;
4737   pay_jp_itwb_archive_pkg.g_cust_txt_information23 := null;
4738   pay_jp_itwb_archive_pkg.g_cust_txt_information24 := null;
4739   pay_jp_itwb_archive_pkg.g_cust_txt_information25 := null;
4740   --
4741   pay_jp_itwb_archive_pkg.g_cust_date_information1  := to_date(null);
4742   pay_jp_itwb_archive_pkg.g_cust_date_information2  := to_date(null);
4743   pay_jp_itwb_archive_pkg.g_cust_date_information3  := to_date(null);
4744   pay_jp_itwb_archive_pkg.g_cust_date_information4  := to_date(null);
4745   pay_jp_itwb_archive_pkg.g_cust_date_information5  := to_date(null);
4746   pay_jp_itwb_archive_pkg.g_cust_date_information6  := to_date(null);
4747   pay_jp_itwb_archive_pkg.g_cust_date_information7  := to_date(null);
4748   pay_jp_itwb_archive_pkg.g_cust_date_information8  := to_date(null);
4749   pay_jp_itwb_archive_pkg.g_cust_date_information9  := to_date(null);
4750   pay_jp_itwb_archive_pkg.g_cust_date_information10 := to_date(null);
4751   pay_jp_itwb_archive_pkg.g_cust_date_information11 := to_date(null);
4752   pay_jp_itwb_archive_pkg.g_cust_date_information12 := to_date(null);
4753   pay_jp_itwb_archive_pkg.g_cust_date_information13 := to_date(null);
4754   pay_jp_itwb_archive_pkg.g_cust_date_information14 := to_date(null);
4755   pay_jp_itwb_archive_pkg.g_cust_date_information15 := to_date(null);
4756   pay_jp_itwb_archive_pkg.g_cust_date_information16 := to_date(null);
4757   pay_jp_itwb_archive_pkg.g_cust_date_information17 := to_date(null);
4758   pay_jp_itwb_archive_pkg.g_cust_date_information18 := to_date(null);
4759   pay_jp_itwb_archive_pkg.g_cust_date_information19 := to_date(null);
4760   pay_jp_itwb_archive_pkg.g_cust_date_information20 := to_date(null);
4761   pay_jp_itwb_archive_pkg.g_cust_date_information21 := to_date(null);
4762   pay_jp_itwb_archive_pkg.g_cust_date_information22 := to_date(null);
4763   pay_jp_itwb_archive_pkg.g_cust_date_information23 := to_date(null);
4764   pay_jp_itwb_archive_pkg.g_cust_date_information24 := to_date(null);
4765   pay_jp_itwb_archive_pkg.g_cust_date_information25 := to_date(null);
4766   --
4767   pay_jp_itwb_archive_pkg.g_cust_num_information1  := to_number(null);
4768   pay_jp_itwb_archive_pkg.g_cust_num_information2  := to_number(null);
4769   pay_jp_itwb_archive_pkg.g_cust_num_information3  := to_number(null);
4770   pay_jp_itwb_archive_pkg.g_cust_num_information4  := to_number(null);
4771   pay_jp_itwb_archive_pkg.g_cust_num_information5  := to_number(null);
4772   pay_jp_itwb_archive_pkg.g_cust_num_information6  := to_number(null);
4773   pay_jp_itwb_archive_pkg.g_cust_num_information7  := to_number(null);
4774   pay_jp_itwb_archive_pkg.g_cust_num_information8  := to_number(null);
4775   pay_jp_itwb_archive_pkg.g_cust_num_information9  := to_number(null);
4776   pay_jp_itwb_archive_pkg.g_cust_num_information10 := to_number(null);
4777   pay_jp_itwb_archive_pkg.g_cust_num_information11 := to_number(null);
4778   pay_jp_itwb_archive_pkg.g_cust_num_information12 := to_number(null);
4779   pay_jp_itwb_archive_pkg.g_cust_num_information13 := to_number(null);
4780   pay_jp_itwb_archive_pkg.g_cust_num_information14 := to_number(null);
4781   pay_jp_itwb_archive_pkg.g_cust_num_information15 := to_number(null);
4782   pay_jp_itwb_archive_pkg.g_cust_num_information16 := to_number(null);
4783   pay_jp_itwb_archive_pkg.g_cust_num_information17 := to_number(null);
4784   pay_jp_itwb_archive_pkg.g_cust_num_information18 := to_number(null);
4785   pay_jp_itwb_archive_pkg.g_cust_num_information19 := to_number(null);
4786   pay_jp_itwb_archive_pkg.g_cust_num_information20 := to_number(null);
4787   pay_jp_itwb_archive_pkg.g_cust_num_information21 := to_number(null);
4788   pay_jp_itwb_archive_pkg.g_cust_num_information22 := to_number(null);
4789   pay_jp_itwb_archive_pkg.g_cust_num_information23 := to_number(null);
4790   pay_jp_itwb_archive_pkg.g_cust_num_information24 := to_number(null);
4791   pay_jp_itwb_archive_pkg.g_cust_num_information25 := to_number(null);
4792 --
4793   if g_org_cust_proc is not null then
4794   --
4795     -- for customer use in custom code
4796     pay_jp_itwb_archive_pkg.g_cust_assignment_id  := p_assignment_id;
4797     pay_jp_itwb_archive_pkg.g_cust_effective_date := p_effective_date;
4798     pay_jp_itwb_archive_pkg.g_cust_date_earned    := p_date_earned;
4799   --
4800     if g_debug
4801     and g_detail_debug = 'Y' then
4802       hr_utility.set_location(l_proc,10);
4803     end if;
4804   --
4805     begin
4806     --
4807       execute immediate 'begin '||g_org_cust_proc||'; end;';
4808     --
4809     exception
4810     when others then
4811     --
4812       l_error_code := sqlcode;
4813       l_error_mesg := substrb(sqlerrm,1,100);
4814     --
4815       hr_utility.trace(g_org_cust_proc ||' error : '||l_error_code||' : '||l_error_mesg);
4816     --
4817       g_wng_tbl(g_wng_tbl_cnt).assignment_id   := p_assignment_id;
4818       g_wng_tbl(g_wng_tbl_cnt).employee_number := p_employee_number;
4819       g_wng_tbl(g_wng_tbl_cnt).message_text    := l_error_code||' : '||l_error_mesg;
4820     --
4821       g_wng_tbl_cnt := g_wng_tbl_cnt + 1;
4822     --
4823     end;
4824   --
4825     if g_debug
4826     and g_detail_debug = 'Y' then
4827       hr_utility.set_location(l_proc,20);
4828     end if;
4829   --
4830     g_data_cust_tbl(p_assignment_action_id).txt_information1  := pay_jp_itwb_archive_pkg.g_cust_txt_information1;
4831     g_data_cust_tbl(p_assignment_action_id).txt_information2  := pay_jp_itwb_archive_pkg.g_cust_txt_information2;
4832     g_data_cust_tbl(p_assignment_action_id).txt_information3  := pay_jp_itwb_archive_pkg.g_cust_txt_information3;
4833     g_data_cust_tbl(p_assignment_action_id).txt_information4  := pay_jp_itwb_archive_pkg.g_cust_txt_information4;
4834     g_data_cust_tbl(p_assignment_action_id).txt_information5  := pay_jp_itwb_archive_pkg.g_cust_txt_information5;
4835     g_data_cust_tbl(p_assignment_action_id).txt_information6  := pay_jp_itwb_archive_pkg.g_cust_txt_information6;
4836     g_data_cust_tbl(p_assignment_action_id).txt_information7  := pay_jp_itwb_archive_pkg.g_cust_txt_information7;
4837     g_data_cust_tbl(p_assignment_action_id).txt_information8  := pay_jp_itwb_archive_pkg.g_cust_txt_information8;
4838     g_data_cust_tbl(p_assignment_action_id).txt_information9  := pay_jp_itwb_archive_pkg.g_cust_txt_information9;
4839     g_data_cust_tbl(p_assignment_action_id).txt_information10 := pay_jp_itwb_archive_pkg.g_cust_txt_information10;
4840     g_data_cust_tbl(p_assignment_action_id).txt_information11 := pay_jp_itwb_archive_pkg.g_cust_txt_information11;
4841     g_data_cust_tbl(p_assignment_action_id).txt_information12 := pay_jp_itwb_archive_pkg.g_cust_txt_information12;
4842     g_data_cust_tbl(p_assignment_action_id).txt_information13 := pay_jp_itwb_archive_pkg.g_cust_txt_information13;
4843     g_data_cust_tbl(p_assignment_action_id).txt_information14 := pay_jp_itwb_archive_pkg.g_cust_txt_information14;
4844     g_data_cust_tbl(p_assignment_action_id).txt_information15 := pay_jp_itwb_archive_pkg.g_cust_txt_information15;
4845     g_data_cust_tbl(p_assignment_action_id).txt_information16 := pay_jp_itwb_archive_pkg.g_cust_txt_information16;
4846     g_data_cust_tbl(p_assignment_action_id).txt_information17 := pay_jp_itwb_archive_pkg.g_cust_txt_information17;
4847     g_data_cust_tbl(p_assignment_action_id).txt_information18 := pay_jp_itwb_archive_pkg.g_cust_txt_information18;
4848     g_data_cust_tbl(p_assignment_action_id).txt_information19 := pay_jp_itwb_archive_pkg.g_cust_txt_information19;
4849     g_data_cust_tbl(p_assignment_action_id).txt_information20 := pay_jp_itwb_archive_pkg.g_cust_txt_information20;
4850     g_data_cust_tbl(p_assignment_action_id).txt_information21 := pay_jp_itwb_archive_pkg.g_cust_txt_information21;
4851     g_data_cust_tbl(p_assignment_action_id).txt_information22 := pay_jp_itwb_archive_pkg.g_cust_txt_information22;
4852     g_data_cust_tbl(p_assignment_action_id).txt_information23 := pay_jp_itwb_archive_pkg.g_cust_txt_information23;
4853     g_data_cust_tbl(p_assignment_action_id).txt_information24 := pay_jp_itwb_archive_pkg.g_cust_txt_information24;
4854     g_data_cust_tbl(p_assignment_action_id).txt_information25 := pay_jp_itwb_archive_pkg.g_cust_txt_information25;
4855   --
4856     if g_debug
4857     and g_detail_debug = 'Y' then
4858       hr_utility.set_location(l_proc,30);
4859     end if;
4860   --
4861     g_data_cust_tbl(p_assignment_action_id).date_information1  := pay_jp_itwb_archive_pkg.g_cust_date_information1;
4862     g_data_cust_tbl(p_assignment_action_id).date_information2  := pay_jp_itwb_archive_pkg.g_cust_date_information2;
4863     g_data_cust_tbl(p_assignment_action_id).date_information3  := pay_jp_itwb_archive_pkg.g_cust_date_information3;
4864     g_data_cust_tbl(p_assignment_action_id).date_information4  := pay_jp_itwb_archive_pkg.g_cust_date_information4;
4865     g_data_cust_tbl(p_assignment_action_id).date_information5  := pay_jp_itwb_archive_pkg.g_cust_date_information5;
4866     g_data_cust_tbl(p_assignment_action_id).date_information6  := pay_jp_itwb_archive_pkg.g_cust_date_information6;
4867     g_data_cust_tbl(p_assignment_action_id).date_information7  := pay_jp_itwb_archive_pkg.g_cust_date_information7;
4868     g_data_cust_tbl(p_assignment_action_id).date_information8  := pay_jp_itwb_archive_pkg.g_cust_date_information8;
4869     g_data_cust_tbl(p_assignment_action_id).date_information9  := pay_jp_itwb_archive_pkg.g_cust_date_information9;
4870     g_data_cust_tbl(p_assignment_action_id).date_information10 := pay_jp_itwb_archive_pkg.g_cust_date_information10;
4871     g_data_cust_tbl(p_assignment_action_id).date_information11 := pay_jp_itwb_archive_pkg.g_cust_date_information11;
4872     g_data_cust_tbl(p_assignment_action_id).date_information12 := pay_jp_itwb_archive_pkg.g_cust_date_information12;
4873     g_data_cust_tbl(p_assignment_action_id).date_information13 := pay_jp_itwb_archive_pkg.g_cust_date_information13;
4874     g_data_cust_tbl(p_assignment_action_id).date_information14 := pay_jp_itwb_archive_pkg.g_cust_date_information14;
4875     g_data_cust_tbl(p_assignment_action_id).date_information15 := pay_jp_itwb_archive_pkg.g_cust_date_information15;
4876     g_data_cust_tbl(p_assignment_action_id).date_information16 := pay_jp_itwb_archive_pkg.g_cust_date_information16;
4877     g_data_cust_tbl(p_assignment_action_id).date_information17 := pay_jp_itwb_archive_pkg.g_cust_date_information17;
4878     g_data_cust_tbl(p_assignment_action_id).date_information18 := pay_jp_itwb_archive_pkg.g_cust_date_information18;
4879     g_data_cust_tbl(p_assignment_action_id).date_information19 := pay_jp_itwb_archive_pkg.g_cust_date_information19;
4880     g_data_cust_tbl(p_assignment_action_id).date_information20 := pay_jp_itwb_archive_pkg.g_cust_date_information20;
4881     g_data_cust_tbl(p_assignment_action_id).date_information21 := pay_jp_itwb_archive_pkg.g_cust_date_information21;
4882     g_data_cust_tbl(p_assignment_action_id).date_information22 := pay_jp_itwb_archive_pkg.g_cust_date_information22;
4883     g_data_cust_tbl(p_assignment_action_id).date_information23 := pay_jp_itwb_archive_pkg.g_cust_date_information23;
4884     g_data_cust_tbl(p_assignment_action_id).date_information24 := pay_jp_itwb_archive_pkg.g_cust_date_information24;
4885     g_data_cust_tbl(p_assignment_action_id).date_information25 := pay_jp_itwb_archive_pkg.g_cust_date_information25;
4886   --
4887     if g_debug
4888     and g_detail_debug = 'Y' then
4889       hr_utility.set_location(l_proc,40);
4890     end if;
4891   --
4892     g_data_cust_tbl(p_assignment_action_id).num_information1  := pay_jp_itwb_archive_pkg.g_cust_num_information1;
4893     g_data_cust_tbl(p_assignment_action_id).num_information2  := pay_jp_itwb_archive_pkg.g_cust_num_information2;
4894     g_data_cust_tbl(p_assignment_action_id).num_information3  := pay_jp_itwb_archive_pkg.g_cust_num_information3;
4895     g_data_cust_tbl(p_assignment_action_id).num_information4  := pay_jp_itwb_archive_pkg.g_cust_num_information4;
4896     g_data_cust_tbl(p_assignment_action_id).num_information5  := pay_jp_itwb_archive_pkg.g_cust_num_information5;
4897     g_data_cust_tbl(p_assignment_action_id).num_information6  := pay_jp_itwb_archive_pkg.g_cust_num_information6;
4898     g_data_cust_tbl(p_assignment_action_id).num_information7  := pay_jp_itwb_archive_pkg.g_cust_num_information7;
4899     g_data_cust_tbl(p_assignment_action_id).num_information8  := pay_jp_itwb_archive_pkg.g_cust_num_information8;
4900     g_data_cust_tbl(p_assignment_action_id).num_information9  := pay_jp_itwb_archive_pkg.g_cust_num_information9;
4901     g_data_cust_tbl(p_assignment_action_id).num_information10 := pay_jp_itwb_archive_pkg.g_cust_num_information10;
4902     g_data_cust_tbl(p_assignment_action_id).num_information11 := pay_jp_itwb_archive_pkg.g_cust_num_information11;
4903     g_data_cust_tbl(p_assignment_action_id).num_information12 := pay_jp_itwb_archive_pkg.g_cust_num_information12;
4904     g_data_cust_tbl(p_assignment_action_id).num_information13 := pay_jp_itwb_archive_pkg.g_cust_num_information13;
4905     g_data_cust_tbl(p_assignment_action_id).num_information14 := pay_jp_itwb_archive_pkg.g_cust_num_information14;
4906     g_data_cust_tbl(p_assignment_action_id).num_information15 := pay_jp_itwb_archive_pkg.g_cust_num_information15;
4907     g_data_cust_tbl(p_assignment_action_id).num_information16 := pay_jp_itwb_archive_pkg.g_cust_num_information16;
4908     g_data_cust_tbl(p_assignment_action_id).num_information17 := pay_jp_itwb_archive_pkg.g_cust_num_information17;
4909     g_data_cust_tbl(p_assignment_action_id).num_information18 := pay_jp_itwb_archive_pkg.g_cust_num_information18;
4910     g_data_cust_tbl(p_assignment_action_id).num_information19 := pay_jp_itwb_archive_pkg.g_cust_num_information19;
4911     g_data_cust_tbl(p_assignment_action_id).num_information20 := pay_jp_itwb_archive_pkg.g_cust_num_information20;
4912     g_data_cust_tbl(p_assignment_action_id).num_information21 := pay_jp_itwb_archive_pkg.g_cust_num_information21;
4913     g_data_cust_tbl(p_assignment_action_id).num_information22 := pay_jp_itwb_archive_pkg.g_cust_num_information22;
4914     g_data_cust_tbl(p_assignment_action_id).num_information23 := pay_jp_itwb_archive_pkg.g_cust_num_information23;
4915     g_data_cust_tbl(p_assignment_action_id).num_information24 := pay_jp_itwb_archive_pkg.g_cust_num_information24;
4916     g_data_cust_tbl(p_assignment_action_id).num_information25 := pay_jp_itwb_archive_pkg.g_cust_num_information25;
4917   --
4918     if g_debug
4919     and g_detail_debug = 'Y' then
4920       hr_utility.set_location(l_proc,50);
4921     end if;
4922   --
4923   end if;
4924 --
4925   if g_debug
4926   and g_detail_debug = 'Y' then
4927     hr_utility.set_location(l_proc,1000);
4928   end if;
4929 --
4930 end set_data_cust_tbl;
4931 --
4932 -- -------------------------------------------------------------------------
4933 -- set_bon_bal_id
4934 -- -------------------------------------------------------------------------
4935 --procedure set_bon_bal_id
4936 --is
4937 ----
4938 --  l_rel_id number;
4939 --  l_parm_val varchar2(80);
4940 ----
4941 --  cursor csr_rel
4942 --  is
4943 --  select bug_id
4944 --  from   ad_bugs
4945 --  where  aru_release_name like 'R12'
4946 --  and    rownum = 1;
4947 ----
4948 --  cursor csr_pre_trs
4949 --  is
4950 --  select parameter_value
4951 --  from   hr_jp_parameters
4952 --  where  owner = 'MIGRATION'
4953 --  and    parameter_name = 'TOTAL_REWARD_SYSTEM';
4954 ----
4955 --  l_proc varchar2(80) := c_package||'set_bon_bal_id';
4956 ----
4957 --begin
4958 ----
4959 --  if g_debug
4960 --  and g_detail_debug = 'Y' then
4961 --    hr_utility.set_location(l_proc,0);
4962 --  end if;
4963 ----
4964 --  open csr_rel;
4965 --  fetch csr_rel into l_rel_id;
4966 --  close csr_rel;
4967 ----
4968 --  if l_rel_id is null then
4969 --  --
4970 --    open csr_pre_trs;
4971 --    fetch csr_pre_trs into l_parm_val;
4972 --    close csr_pre_trs;
4973 --  --
4974 --    if nvl(l_parm_val,'N') = 'N' then
4975 --    --
4976 --      begin
4977 --      --
4978 --        c_b_bon_hi_prem_run_db_id := hr_jp_id_pkg.defined_balance_id(c_b_bon_hi_prem_bal_o,c_asg_run_dim,null,'JP');
4979 --        c_b_bon_wp_prem_run_db_id := hr_jp_id_pkg.defined_balance_id(c_b_bon_wp_prem_bal_o,c_asg_run_dim,null,'JP');
4980 --      --
4981 --      exception
4982 --      when others then
4983 --      --
4984 --        null;
4985 --      --
4986 --      end;
4987 --    --
4988 --    end if;
4989 --  --
4990 --  end if;
4991 ----
4992 --  if c_b_bon_hi_prem_run_db_id is null then
4993 --  --
4994 --    c_b_bon_hi_prem_run_db_id := hr_jp_id_pkg.defined_balance_id(c_b_bon_hi_prem_bal,c_asg_run_dim,null,'JP');
4995 --  --
4996 --  end if;
4997 ----
4998 --  if c_b_bon_wp_prem_run_db_id is null then
4999 --  --
5000 --    c_b_bon_wp_prem_run_db_id := hr_jp_id_pkg.defined_balance_id(c_b_bon_wp_prem_bal,c_asg_run_dim,null,'JP');
5001 --  --
5002 --  end if;
5003 ----
5004 --  if g_debug
5005 --  and g_detail_debug = 'Y' then
5006 --    hr_utility.set_location(l_proc,1000);
5007 --  end if;
5008 ----
5009 --end set_bon_bal_id;
5010 ----
5011 -- -------------------------------------------------------------------------
5012 -- sum_data_sal_tbl
5013 -- -------------------------------------------------------------------------
5014 function sum_data_sal_tbl(
5015   p_category     in varchar2,
5016   p_act_mth_tbl  in t_number_tbl,
5017   p_last_act_mth in number)
5018 return number
5019 is
5020 --
5021   o_col_mth number;
5022 --
5023 begin
5024 --
5025   if p_act_mth_tbl.count > 1 then
5026   --
5027     for i in 0..p_act_mth_tbl.count - 1 loop
5028     --
5029       if p_category = 'TXBL' then
5030       --
5031         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_txbl;
5032       --
5033       elsif p_category = 'NTXBL' then
5034       --
5035         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_ntxbl;
5036       --
5037       elsif p_category = 'PAY' then
5038       --
5039         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_pay;
5040       --
5041       elsif p_category = 'HI' then
5042       --
5043         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_hi;
5044       --
5045       elsif p_category = 'CI' then
5046       --
5047         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_ci;
5048       --
5049       elsif p_category = 'WP' then
5050       --
5051         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_wp;
5052       --
5053       elsif p_category = 'WPF' then
5054       --
5055         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_wpf;
5056       --
5057       elsif p_category = 'EI' then
5058       --
5059         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_ei;
5060       --
5061       elsif p_category = 'SI' then
5062       --
5063         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_si;
5064       --
5065       elsif p_category = 'DCT_EARN' then
5066       --
5067         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_dct_earn;
5068       --
5069       elsif p_category = 'ITX' then
5070       --
5071         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_itx;
5072       --
5073       --elsif p_category = 'YEA_ITX' then
5074       ----
5075       --  o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_yea_itx;
5076       ----
5077       elsif p_category = 'NET_ITX' then
5078       --
5079         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_net_itx;
5080       --
5081         if i <> 0 then
5082         --
5083           o_col_mth := nvl(o_col_mth,0) - nvl(g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_yea_itx,0);
5084         --
5085         end if;
5086       --
5087       elsif p_category = 'LTX' then
5088       --
5089         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_ltx;
5090       --
5091       elsif p_category = 'LTX_LUMP' then
5092       --
5093         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_ltx_lump;
5094       --
5095       elsif p_category = 'DCT' then
5096       --
5097         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_calc_dct;
5098       --
5099         if i <> 0 then
5100         --
5101           o_col_mth := nvl(o_col_mth,0) - nvl(g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_yea_itx,0);
5102         --
5103         end if;
5104       --
5105       elsif p_category = 'NET_PAY' then
5106       --
5107         o_col_mth := nvl(o_col_mth,0) + g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_calc_net_pay;
5108       --
5109         if i <> 0 then
5110         --
5111           o_col_mth := nvl(o_col_mth,0) + nvl(g_data_sal_tbl(nvl(p_act_mth_tbl(i),0)).sal_pay_yea_itx,0);
5112         --
5113         end if;
5114       --
5115       end if;
5116     --
5117     end loop;
5118   --
5119   else
5120   --
5121     if p_category = 'TXBL' then
5122     --
5123       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_txbl;
5124     --
5125     elsif p_category = 'NTXBL' then
5126     --
5127       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_ntxbl;
5128     --
5129     elsif p_category = 'PAY' then
5130     --
5131       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_pay;
5132     --
5133     elsif p_category = 'HI' then
5134     --
5135       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_hi;
5136     --
5137     elsif p_category = 'CI' then
5138     --
5139       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_ci;
5140     --
5141     elsif p_category = 'WP' then
5142     --
5143       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_wp;
5144     --
5145     elsif p_category = 'WPF' then
5146     --
5147       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_wpf;
5148     --
5149     elsif p_category = 'EI' then
5150     --
5151       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_ei;
5152     --
5153     elsif p_category = 'SI' then
5154     --
5155       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_si;
5156     --
5157     elsif p_category = 'DCT_EARN' then
5158     --
5159       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_dct_earn;
5160     --
5161     elsif p_category = 'ITX' then
5162     --
5163       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_itx;
5164     --
5165     --elsif p_category = 'YEA_ITX' then
5166     ----
5167     --  o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_yea_itx;
5168     ----
5169     elsif p_category = 'NET_ITX' then
5170     --
5171       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_net_itx;
5172     --
5173     elsif p_category = 'LTX' then
5174     --
5175       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_ltx;
5176     --
5177     elsif p_category = 'LTX_LUMP' then
5178     --
5179       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_ltx_lump;
5180     --
5181     elsif p_category = 'DCT' then
5182     --
5183       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_calc_dct;
5184     --
5185     elsif p_category = 'NET_PAY' then
5186     --
5187       o_col_mth := g_data_sal_tbl(p_last_act_mth).sal_pay_calc_net_pay;
5188     --
5189     end if;
5190   --
5191   end if;
5192 --
5193 return o_col_mth;
5194 end sum_data_sal_tbl;
5195 --
5196 -- -------------------------------------------------------------------------
5197 -- sum_data_item_tbl
5198 -- -------------------------------------------------------------------------
5199 function sum_data_item_tbl(
5200   p_category     in varchar2,
5201   p_act_mth_tbl  in t_number_tbl,
5202   p_last_act_mth in number,
5203   p_item_pk      in number)
5204 return number
5205 is
5206 --
5207   l_sal_tbl t_data_item_ass_tbl;
5208 --
5209   l_col_mth number;
5210   o_col_mth number;
5211 --
5212 begin
5213 --
5214   if p_act_mth_tbl.count > 1 then
5215   --
5216     for i in 0..p_act_mth_tbl.count - 1 loop
5217     --
5218       if p_category = 'ERN' then
5219       --
5220         l_sal_tbl := g_data_item_tbl(nvl(p_act_mth_tbl(i),0)).sal_ern_tbl;
5221       --
5222       elsif p_category = 'DCT' then
5223       --
5224         l_sal_tbl := g_data_item_tbl(nvl(p_act_mth_tbl(i),0)).sal_dct_tbl;
5225       --
5226       elsif p_category = 'WRK' then
5227       --
5228         l_sal_tbl := g_data_item_tbl(nvl(p_act_mth_tbl(i),0)).wrk_tbl;
5229       --
5230       end if;
5231     --
5232       l_col_mth := cnv_null_val(l_sal_tbl,p_item_pk);
5233     --
5234       if l_col_mth is not null then
5235       --
5236         o_col_mth := nvl(o_col_mth,0) + l_col_mth;
5237       --
5238       end if;
5239     --
5240     end loop;
5241   --
5242   else
5243   --
5244     if p_category = 'ERN' then
5245     --
5246       l_sal_tbl := g_data_item_tbl(p_last_act_mth).sal_ern_tbl;
5247     --
5248     elsif p_category = 'DCT' then
5249     --
5250       l_sal_tbl := g_data_item_tbl(p_last_act_mth).sal_dct_tbl;
5251     --
5252     elsif p_category = 'WRK' then
5253     --
5254       l_sal_tbl := g_data_item_tbl(p_last_act_mth).wrk_tbl;
5255     --
5256     end if;
5257   --
5258     o_col_mth := cnv_null_val(l_sal_tbl,p_item_pk);
5259   --
5260   end if;
5261 --
5262 return o_col_mth;
5263 end sum_data_item_tbl;
5264 --
5265 -- -------------------------------------------------------------------------
5266 -- valid_data_item_tbl
5267 -- -------------------------------------------------------------------------
5268 function valid_data_item_tbl(
5269   p_category     in varchar2,
5270   p_act_mth_tbl  in t_number_tbl,
5271   p_last_act_mth in number,
5272   p_item_pk      in number)
5273 return varchar2
5274 is
5275 --
5276   i number := 0;
5277 --
5278   l_sal_tbl t_data_item_ass_tbl;
5279 --
5280   o_col_mth_null varchar2(1);
5281 --
5282 begin
5283 --
5284   if p_act_mth_tbl.count > 1 then
5285   --
5286     <<loop_mth_tbl>>
5287     loop
5288     --
5289       if i > p_act_mth_tbl.count - 1 then
5290       --
5291         -- all data are null, o_col_mth_null will be Y if routine pass here
5292         exit loop_mth_tbl;
5293       --
5294       end if;
5295     --
5296       if p_category = 'ERN' then
5297       --
5298         l_sal_tbl := g_data_item_tbl(nvl(p_act_mth_tbl(i),0)).sal_ern_tbl;
5299       --
5300       elsif p_category = 'DCT' then
5301       --
5302         l_sal_tbl := g_data_item_tbl(nvl(p_act_mth_tbl(i),0)).sal_dct_tbl;
5303       --
5304       elsif p_category = 'WRK' then
5305       --
5306         l_sal_tbl := g_data_item_tbl(nvl(p_act_mth_tbl(i),0)).wrk_tbl;
5307       --
5308       end if;
5309     --
5310       o_col_mth_null := nvl(valid_null_val(l_sal_tbl,p_item_pk),'N');
5311     --
5312       -- at least one value exists
5313       if o_col_mth_null = 'N' then
5314       --
5315         exit loop_mth_tbl;
5316       --
5317       end if;
5318     --
5319       i := i + 1;
5320     --
5321     end loop;
5322   --
5323   else
5324   --
5325     if p_category = 'ERN' then
5326     --
5327       l_sal_tbl := g_data_item_tbl(p_last_act_mth).sal_ern_tbl;
5328     --
5329     elsif p_category = 'DCT' then
5330     --
5331       l_sal_tbl := g_data_item_tbl(p_last_act_mth).sal_dct_tbl;
5332     --
5333     elsif p_category = 'WRK' then
5334     --
5335       l_sal_tbl := g_data_item_tbl(p_last_act_mth).wrk_tbl;
5336     --
5337     end if;
5338   --
5339     o_col_mth_null := nvl(valid_null_val(l_sal_tbl,p_item_pk),'N');
5340   --
5341   end if;
5342 --
5343 return o_col_mth_null;
5344 end valid_data_item_tbl;
5345 --
5346 -- -------------------------------------------------------------------------
5347 -- sequence of process.
5348 -- 1. range_cursor (inc. init_pact, archive_pact)
5349 -- 2. assignment_action_creation    <= invoked by each ranges
5350 -- 3. archinit     (inc. init_pact) <= invoked by each threads, start from here in mark-for-retry)
5351 -- 4. archive_data (inc. init_assact, archive_assact)
5352 -- 5. deinitialize_code
5353 -- -------------------------------------------------------------------------
5354 -- init_pact
5355 -- -------------------------------------------------------------------------
5356 procedure init_pact(
5357   p_payroll_action_id in number)
5358 is
5359 --
5360   l_proc varchar2(80) := c_package||'init_pact';
5361 --
5362   l_detail_debug varchar2(1) := pay_jp_itwb_archive_pkg.g_detail_debug;
5363 --
5364   l_archive_sequence_o number;
5365 --
5366   cursor csr_action
5367   is
5368   select /*+ ORDERED */
5369          ppa.business_group_id,
5370          ppa.effective_date,
5371          ppa.legislative_parameters,
5372          pbg.legislation_code
5373   from   pay_payroll_actions ppa,
5374          per_business_groups_perf pbg
5375   where  ppa.payroll_action_id = p_payroll_action_id
5376   and    pbg.business_group_id = ppa.business_group_id;
5377 --
5378   cursor csr_arch_pact
5379   is
5380   select /*+ ORDERED */
5381          pjip.payroll_action_id,
5382          pjip.archive_sequence
5383   from   pay_payroll_actions ppa, -- proc pact
5384          pay_jp_itwb_pact_v pjip  -- source pact
5385   where  ppa.business_group_id + 0 = g_business_group_id
5386   and    ppa.effective_date
5387          between g_effective_soy and decode(g_arch_option,'ADD',g_effective_som - 1,g_effective_eoy)
5388   and    ppa.action_type = 'X'
5389   and    ppa.action_status = 'C'
5390   and    ppa.report_type = 'JP_ITWB_ARCH'
5391   and    ppa.report_qualifier = 'JP'
5392   and    ppa.report_category = 'ARCHIVE'
5393   and    pjip.payroll_action_id = ppa.payroll_action_id
5394   and    pjip.itax_org_id = g_itax_organization_id
5395   and    pjip.status <> 'UPDATE'
5396   and exists(
5397     select null
5398     from   pay_assignment_actions paa,
5399            pay_jp_itwb_assact_v pjia
5400     where  paa.payroll_action_id = pjip.payroll_action_id
5401     and    pjia.assignment_action_id = paa.assignment_action_id)
5402   and not exists(
5403     select /*+ ORDERED */
5404            null
5405     from   pay_payroll_actions ppa2,
5406            pay_jp_itwb_pact_v pjip2
5407     where  ppa2.business_group_id + 0 = g_business_group_id
5408     and    ppa2.effective_date
5409            between g_effective_soy and decode(g_arch_option,'ADD',g_effective_som - 1,g_effective_eoy)
5410     and    ppa2.action_type = 'X'
5411     and    ppa2.action_status = 'C'
5412     and    ppa2.report_type = 'JP_ITWB_ARCH'
5413     and    ppa2.report_qualifier = 'JP'
5414     and    ppa2.report_category = 'ARCHIVE'
5415     and    pjip2.payroll_action_id = ppa2.payroll_action_id
5416     and    pjip2.itax_org_id = g_itax_organization_id
5417     and    pjip2.status <> 'UPDATE'
5418     and    pjip2.archive_sequence > pjip.archive_sequence
5419     and exists(
5420       select null
5421       from   pay_assignment_actions paa2,
5422              pay_jp_itwb_assact_v pjia2
5423       where  paa2.payroll_action_id = pjip2.payroll_action_id
5424       and    pjia2.assignment_action_id = paa2.assignment_action_id));
5425 --
5426   -- use archive_sequence instead of effective_date for case update
5427   -- need to increment archive sequence even if status is UPDATE
5428   -- include pact which does not have assact
5429   cursor csr_arch_seq
5430   is
5431   select /*+ ORDERED */
5432          pjip.archive_sequence
5433   from   pay_payroll_actions ppa, -- proc pact
5434          pay_jp_itwb_pact_v pjip  -- source pact
5435   where  ppa.business_group_id + 0 = g_business_group_id
5436   and    ppa.effective_date
5437          between g_effective_soy and decode(g_arch_option,'ADD',g_effective_som - 1,g_effective_eoy)
5438   and    ppa.action_type = 'X'
5439   and    ppa.action_status = 'C'
5440   and    ppa.report_type = 'JP_ITWB_ARCH'
5441   and    ppa.report_qualifier = 'JP'
5442   and    ppa.report_category = 'ARCHIVE'
5443   and    pjip.payroll_action_id = ppa.payroll_action_id
5444   and    pjip.itax_org_id = g_itax_organization_id
5445   and    pjip.archive_sequence >= l_archive_sequence_o
5446   and not exists(
5447     select /*+ ORDERED */
5448            null
5449     from   pay_payroll_actions ppa2,
5450            pay_jp_itwb_pact_v pjip2
5451     where  ppa2.business_group_id + 0 = g_business_group_id
5452     and    ppa2.effective_date
5453            between g_effective_soy and decode(g_arch_option,'ADD',g_effective_som - 1,g_effective_eoy)
5454     and    ppa2.action_type = 'X'
5455     and    ppa2.action_status = 'C'
5456     and    ppa2.report_type = 'JP_ITWB_ARCH'
5457     and    ppa2.report_qualifier = 'JP'
5458     and    ppa2.report_category = 'ARCHIVE'
5459     and    pjip2.payroll_action_id = ppa2.payroll_action_id
5460     and    pjip2.itax_org_id = g_itax_organization_id
5461     and    pjip2.archive_sequence >= l_archive_sequence_o
5462     and    pjip2.archive_sequence > pjip.archive_sequence);
5463 --
5464   cursor csr_bg_itax_dpnt_ref_type
5465   is
5466   select nvl(hoi.org_information2,'CTR_EE')
5467   from   /* Business Group details */
5468          hr_organization_information hoi
5469   where  hoi.organization_id = g_business_group_id
5470   and    hoi.org_information_context = 'JP_BUSINESS_GROUP_INFO';
5471 --
5472   cursor csr_rep_info
5473   is
5474   select ltrim(rtrim(replace(hoi.org_information1,';',''))) org_cust_proc,
5475          nvl(hoi.org_information2,'Y') dpnt_ref_dec_flag
5476   from   hr_organization_information hoi
5477   where  hoi.organization_id = g_itax_organization_id
5478   and    hoi.org_information_context = 'JP_ITWB_REP_INFO';
5479 --
5480   l_csr_action csr_action%rowtype;
5481 --
5482 begin
5483 --
5484   set_detail_debug(l_detail_debug);
5485 --
5486   if g_debug
5487   and g_detail_debug = 'Y' then
5488     hr_utility.set_location(l_proc,0);
5489   end if;
5490 --
5491   if g_payroll_action_id is null
5492   or g_payroll_action_id <> p_payroll_action_id then
5493   --
5494     if g_debug
5495     and g_detail_debug = 'Y' then
5496       hr_utility.set_location(l_proc,10);
5497       hr_utility.trace('no cache : g_pact_id('||g_payroll_action_id||'),p_pact_id('||p_payroll_action_id||')');
5498     end if;
5499     --
5500     open csr_action;
5501     fetch csr_action into l_csr_action;
5502     if csr_action%notfound then
5503       close csr_action;
5504       fnd_message.set_name('PAY','PAY_34985_INVALID_PAY_ACTION');
5505       fnd_message.raise_error;
5506     end if;
5507     close csr_action;
5508   --
5509     g_payroll_action_id    := p_payroll_action_id;
5510     g_effective_date       := l_csr_action.effective_date;
5511     g_effective_soy        := trunc(g_effective_date,'YYYY');
5512     g_effective_eoy        := add_months(g_effective_soy,12) - 1;
5513     g_effective_som        := trunc(g_effective_date,'MM');
5514     g_effective_eom        := add_months(g_effective_som,1) - 1;
5515     g_business_group_id    := l_csr_action.business_group_id;
5516     g_legislation_code     := l_csr_action.legislation_code;
5517     g_arch_option          := pay_core_utils.get_parameter('ARCHIVE_OPTION',l_csr_action.legislative_parameters);
5518     g_itax_organization_id := fnd_number.canonical_to_number(pay_core_utils.get_parameter('ITAX_ORGANIZATION_ID',l_csr_action.legislative_parameters));
5519     g_payroll_id           := fnd_number.canonical_to_number(pay_core_utils.get_parameter('PAYROLL_ID',l_csr_action.legislative_parameters));
5520     g_assignment_set_id    := fnd_number.canonical_to_number(pay_core_utils.get_parameter('ASSIGNMENT_SET_ID',l_csr_action.legislative_parameters));
5521     g_use_arch             := pay_core_utils.get_parameter('USE_ARCH',l_csr_action.legislative_parameters);
5522     g_upd_force            := pay_core_utils.get_parameter('UPD_FORCE',l_csr_action.legislative_parameters);
5523   --
5524     -- fetch latest pact
5525     g_payroll_action_id_o := null;
5526     open csr_arch_pact;
5527     fetch csr_arch_pact into g_payroll_action_id_o, l_archive_sequence_o;
5528     close csr_arch_pact;
5529   --
5530     if g_debug
5531     and g_detail_debug = 'Y' then
5532       hr_utility.trace('l_archive_sequence_o : '||to_char(l_archive_sequence_o));
5533     end if;
5534   --
5535     open csr_arch_seq;
5536     fetch csr_arch_seq into g_archive_sequence_o;
5537     close csr_arch_seq;
5538   --
5539     g_bg_itax_dpnt_ref_type := null;
5540     open csr_bg_itax_dpnt_ref_type;
5541     fetch csr_bg_itax_dpnt_ref_type into g_bg_itax_dpnt_ref_type;
5542     close csr_bg_itax_dpnt_ref_type;
5543   --
5544     g_org_cust_proc := null;
5545     open csr_rep_info;
5546     fetch csr_rep_info into g_org_cust_proc, g_dpnt_ref_dec_flag;
5547     close csr_rep_info;
5548   --
5549     if nvl(g_dpnt_ref_dec_flag,'X') <> 'N' then
5550      --
5551       g_dpnt_ref_dec_flag := 'Y';
5552      --
5553     end if;
5554   --
5555     g_ass_set_formula_id := null;
5556     g_ass_set_amendment_type := null;
5557     -- support partial criteria in only case update
5558     if g_arch_option <> 'UPDATE' then
5559     --
5560       g_payroll_id := null;
5561       g_assignment_set_id := null;
5562     --
5563     else
5564     --
5565       if g_assignment_set_id is not null then
5566       --
5567         hr_jp_ast_utility_pkg.get_assignment_set_info(g_assignment_set_id,g_ass_set_formula_id,g_ass_set_amendment_type);
5568       --
5569       end if;
5570     --
5571     end if;
5572   --
5573     --set_bon_bal_id;
5574   --
5575     if c_sal_cust_ele_set is not null then
5576     --
5577       c_sal_cust_ele_set_id := hr_jp_id_pkg.element_set_id(c_sal_cust_ele_set,null,'JP');
5578     --
5579     end if;
5580     --
5581     if c_bon_cust_ele_set is not null then
5582     --
5583       c_bon_cust_ele_set_id := hr_jp_id_pkg.element_set_id(c_bon_cust_ele_set,null,'JP');
5584     --
5585     end if;
5586     --
5587     if c_spb_cust_ele_set is not null then
5588     --
5589       c_spb_cust_ele_set_id := hr_jp_id_pkg.element_set_id(c_spb_cust_ele_set,null,'JP');
5590     --
5591     end if;
5592     --
5593     if c_yea_cust_ele_set is not null then
5594     --
5595       c_yea_cust_ele_set_id := hr_jp_id_pkg.element_set_id(c_yea_cust_ele_set,null,'JP');
5596     --
5597     end if;
5598     --
5599     if c_rey_cust_ele_set is not null then
5600     --
5601       c_rey_cust_ele_set_id := hr_jp_id_pkg.element_set_id(c_rey_cust_ele_set,null,'JP');
5602     --
5603     end if;
5604   --
5605   end if;
5606 --
5607   if g_debug then
5608     hr_utility.trace('g_payroll_action_id       : '||to_char(g_payroll_action_id));
5609     hr_utility.trace('g_effective_date          : '||to_char(g_effective_date,'YYYY/MM/DD'));
5610     hr_utility.trace('g_effective_soy           : '||to_char(g_effective_soy,'YYYY/MM/DD'));
5611     hr_utility.trace('g_effective_eoy           : '||to_char(g_effective_eoy,'YYYY/MM/DD'));
5612     hr_utility.trace('g_effective_som           : '||to_char(g_effective_som,'YYYY/MM/DD'));
5613     hr_utility.trace('g_effective_eom           : '||to_char(g_effective_eom,'YYYY/MM/DD'));
5614     hr_utility.trace('g_business_group_id       : '||to_char(g_business_group_id));
5615     hr_utility.trace('g_legislation_code        : '||g_legislation_code);
5616     hr_utility.trace('g_arch_option             : '||g_arch_option);
5617     hr_utility.trace('g_itax_organization_id    : '||to_char(g_itax_organization_id));
5618     hr_utility.trace('g_payroll_id              : '||to_char(g_payroll_id));
5619     hr_utility.trace('g_assignment_set_id       : '||to_char(g_assignment_set_id));
5620     hr_utility.trace('g_use_arch                : '||g_use_arch);
5621     hr_utility.trace('g_upd_force               : '||g_upd_force);
5622     hr_utility.trace('g_payroll_action_id_o     : '||to_char(g_payroll_action_id_o));
5623     hr_utility.trace('g_archive_sequence_o      : '||to_char(g_archive_sequence_o));
5624     hr_utility.trace('g_bg_itax_dpnt_ref_type   : '||g_bg_itax_dpnt_ref_type);
5625     hr_utility.trace('g_org_cust_proc           : '||g_org_cust_proc);
5626     hr_utility.trace('g_dpnt_ref_dec_flag       : '||g_dpnt_ref_dec_flag);
5627     hr_utility.trace('g_ass_set_formula_id      : '||to_char(g_ass_set_formula_id));
5628     hr_utility.trace('g_ass_set_amendment_type  : '||g_ass_set_amendment_type);
5629     hr_utility.trace('c_b_bon_hi_prem_run_db_id : '||to_char(c_b_bon_hi_prem_run_db_id));
5630     hr_utility.trace('c_b_bon_wp_prem_run_db_id : '||to_char(c_b_bon_wp_prem_run_db_id));
5631     hr_utility.trace('c_sal_cust_ele_set_id     : '||to_char(c_sal_cust_ele_set_id));
5632     hr_utility.trace('c_bon_cust_ele_set_id     : '||to_char(c_bon_cust_ele_set_id));
5633     hr_utility.trace('c_spb_cust_ele_set_id     : '||to_char(c_spb_cust_ele_set_id));
5634     hr_utility.trace('c_yea_cust_ele_set_id     : '||to_char(c_yea_cust_ele_set_id));
5635     hr_utility.trace('c_rey_cust_ele_set_id     : '||to_char(c_rey_cust_ele_set_id));
5636   end if;
5637 --
5638   if g_debug
5639   and g_detail_debug = 'Y' then
5640     hr_utility.set_location(l_proc,1000);
5641   end if;
5642 --
5643 end init_pact;
5644 --
5645 -- -------------------------------------------------------------------------
5646 -- rollback_assact
5647 -- -------------------------------------------------------------------------
5648 procedure rollback_assact(
5649   p_assignment_action_id in number)
5650 is
5651 --
5652   l_proc varchar2(80) := c_package||'rollback_assact';
5653 --
5654 begin
5655 --
5656   if g_debug
5657   and g_detail_debug = 'Y' then
5658     hr_utility.set_location(l_proc,0);
5659     hr_utility.trace('p_assignment_action_id : '||to_char(p_assignment_action_id));
5660   end if;
5661 --
5662   delete from pay_action_information
5663   where action_context_id = p_assignment_action_id
5664   and   action_information_category like 'JP_ITWB_%'
5665   and   action_context_type = 'AAP';
5666 --
5667   py_rollback_pkg.rollback_ass_action(p_assignment_action_id);
5668 --
5669   if g_debug
5670   and g_detail_debug = 'Y' then
5671     hr_utility.set_location(l_proc,1000);
5672   end if;
5673 --
5674 end rollback_assact;
5675 --
5676 -- -------------------------------------------------------------------------
5677 -- rollback_pact
5678 -- -------------------------------------------------------------------------
5679 procedure rollback_pact(
5680   p_payroll_action_id in number)
5681 is
5682 --
5683   l_proc varchar2(80) := c_package||'rollback_pact';
5684 --
5685   l_rollback_assact_id number;
5686 --
5687   l_commit_cnt number := 1;
5688   l_rollback_assact_cnt number := 0;
5689 --
5690   -- fetch all status, even no archive
5691   cursor csr_rollback_assact
5692   is
5693   select paa.assignment_action_id
5694   from   pay_assignment_actions paa
5695   where  paa.payroll_action_id = p_payroll_action_id;
5696 --
5697 begin
5698 --
5699   if g_debug
5700   and g_detail_debug = 'Y' then
5701     hr_utility.set_location(l_proc,0);
5702     hr_utility.trace('p_payroll_action_id : '||to_char(p_payroll_action_id));
5703   end if;
5704 --
5705   -- fetch all historical, future assact in the same year
5706   delete from pay_action_information
5707   where action_context_id = p_payroll_action_id
5708   and   action_information_category in ('JP_ITWB_PACT','JP_ITWB_ITAX_ORG')
5709   and   action_context_type = 'PA';
5710 --
5711   -- #2243411 bulk collect bug fix is available from 9.2
5712   open csr_rollback_assact;
5713   loop
5714   --
5715     l_rollback_assact_cnt := l_rollback_assact_cnt + 1;
5716   --
5717     fetch csr_rollback_assact into l_rollback_assact_id;
5718     exit when csr_rollback_assact%notfound;
5719   --
5720     rollback_assact(l_rollback_assact_id);
5721   --
5722     if l_rollback_assact_cnt > g_commit_cnt * l_commit_cnt then
5723     --
5724       commit;
5725     --
5726       l_commit_cnt := l_commit_cnt + 1;
5727     --
5728       if g_debug
5729       and g_detail_debug = 'Y' then
5730         hr_utility.trace('rollback assact commit : '||to_char(l_commit_cnt));
5731       end if;
5732     --
5733     end if;
5734   --
5735   end loop;
5736   close csr_rollback_assact;
5737 --
5738   commit;
5739 --
5740   if g_debug
5741   and g_detail_debug = 'Y' then
5742     hr_utility.trace('rollback assact cnt : '||to_char(l_rollback_assact_cnt));
5743     hr_utility.set_location(l_proc,1000);
5744   end if;
5745 --
5746 end rollback_pact;
5747 --
5748 -- -------------------------------------------------------------------------
5749 -- rollback_all_pact
5750 -- -------------------------------------------------------------------------
5751 procedure rollback_all_pact
5752 is
5753 --
5754   l_proc varchar2(80) := c_package||'rollback_all_pact';
5755 --
5756   l_rollback_pact_id number;
5757 --
5758   l_rollback_pact_cnt number := 0;
5759 --
5760   -- fetch all historical, future pact in the same year
5761   cursor csr_rollback_pact
5762   is
5763   select pjip.payroll_action_id
5764   from   pay_jp_itwb_pact_v pjip
5765   where  pjip.itax_org_id = g_itax_organization_id
5766   and    pjip.effective_date
5767          between g_effective_soy and g_effective_eoy
5768   order by pjip.archive_sequence desc;
5769 --
5770 begin
5771 --
5772   if g_debug
5773   and g_detail_debug = 'Y' then
5774     hr_utility.set_location(l_proc,0);
5775   end if;
5776 --
5777   -- commit will be done for each pact
5778   open csr_rollback_pact;
5779   loop
5780   --
5781     l_rollback_pact_cnt := l_rollback_pact_cnt + 1;
5782   --
5783     fetch csr_rollback_pact into l_rollback_pact_id;
5784     exit when csr_rollback_pact%notfound;
5785   --
5786     rollback_pact(l_rollback_pact_id);
5787   --
5788   end loop;
5789   close csr_rollback_pact;
5790 --
5791   if g_debug
5792   and g_detail_debug = 'Y' then
5793     hr_utility.trace('rollback pact cnt : '||to_char(l_rollback_pact_cnt));
5794     hr_utility.set_location(l_proc,1000);
5795   end if;
5796 --
5797 end rollback_all_pact;
5798 --
5799 -- -------------------------------------------------------------------------
5800 -- archive_pact
5801 -- -------------------------------------------------------------------------
5802 procedure archive_pact(
5803   p_payroll_action_id in number)
5804 is
5805 --
5806   l_proc varchar2(80) := c_package||'archive_pact';
5807 --
5808   l_validate_pact varchar2(1);
5809   l_action_information_id number;
5810   l_object_version_number number;
5811   l_archive_sequence number;
5812 --
5813   cursor csr_validate_pact
5814   is
5815   select 'Y'
5816   from   pay_jp_itwb_pact_v
5817   where  payroll_action_id = p_payroll_action_id;
5818 --
5819   cursor csr_org
5820   is
5821   select /*+ ORDERED */
5822          hoi.org_information1 name,
5823          hoi.org_information2 name_kana,
5824          hoi.org_information6||hoi.org_information7||hoi.org_information8 address,
5825          hoi.org_information9||hoi.org_information10||hoi.org_information11 address_kana,
5826          hoi.org_information12 phone,
5827          hoiw.org_information4 serial1,
5828          hoiw.org_information5 serial2
5829   from   hr_all_organization_units hou,
5830          hr_organization_information hoi,
5831          hr_organization_information hoiw
5832   where  hou.organization_id = g_itax_organization_id
5833   and    hoi.organization_id(+) = hou.organization_id
5834   and    hoi.org_information_context(+) = 'JP_TAX_SWOT_INFO'
5835   and    hoiw.organization_id(+) = hou.organization_id
5836   and    hoiw.org_information_context(+) = 'JP_ITAX_WITHHELD_INFO';
5837 --
5838   l_csr_org csr_org%rowtype;
5839 --
5840 begin
5841 --
5842   if g_debug
5843   and g_detail_debug = 'Y' then
5844     hr_utility.set_location(l_proc,0);
5845   end if;
5846 --
5847   -- no create, update pact in mark for retry.
5848 --
5849   open csr_validate_pact;
5850   fetch csr_validate_pact into l_validate_pact;
5851   --
5852   if csr_validate_pact%notfound then
5853   --
5854     if g_debug
5855     and g_detail_debug = 'Y' then
5856       hr_utility.set_location(l_proc,10);
5857       hr_utility.trace('g_payroll_action_id_o : '||to_char(g_payroll_action_id_o));
5858     end if;
5859   --
5860     if g_payroll_action_id_o is not null then
5861     --
5862       if g_debug
5863       and g_detail_debug = 'Y' then
5864         hr_utility.set_location(l_proc,20);
5865         hr_utility.trace('g_arch_option : '||g_arch_option);
5866       end if;
5867     --
5868       if g_arch_option = 'RENEW' then
5869       --
5870         l_archive_sequence := 1;
5871       --
5872         -- rollback all archive
5873         rollback_all_pact;
5874       --
5875         if g_debug
5876         and g_detail_debug = 'Y' then
5877           hr_utility.set_location(l_proc,30);
5878           hr_utility.trace('rollback all done');
5879         end if;
5880       --
5881       -- add, update case, increment archive sequence to latest
5882       -- (effective date might be less than the latest pact effective date in case update for middle)
5883       else
5884       --
5885         l_archive_sequence := g_archive_sequence_o + 1;
5886       --
5887       end if;
5888     --
5889     else
5890     --
5891       if g_arch_option = 'RENEW' then
5892       --
5893         l_archive_sequence := 1;
5894       --
5895         -- rollback all archive for case no assact
5896         rollback_all_pact;
5897       --
5898       -- irregular case
5899       else
5900       --
5901         -- g_payroll_action_id_o must NOT be null, srs validate
5902         fnd_message.set_name('PAY','PAY_34985_INVALID_PAY_ACTION');
5903         fnd_message.raise_error;
5904       --
5905       end if;
5906     --
5907     end if;
5908   --
5909     -- set g_effective_date (ie. process date) even if case of update
5910     -- so that effective_date will not be latest date in year
5911     pay_jp_itwb_dml_pkg.create_pact(
5912       p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
5913       p_payroll_action_id           => p_payroll_action_id,
5914       p_action_context_type         => 'PA',
5915       p_effective_date              => g_effective_date,
5916       p_action_information_category => 'JP_ITWB_PACT',
5917       p_status                      => g_arch_option,
5918       p_itax_org_id                 => g_itax_organization_id,
5919       p_archive_sequence            => l_archive_sequence,
5920       p_payroll_action_id_o         => g_payroll_action_id_o,
5921       p_object_version_number       => l_object_version_number);
5922   --
5923     if g_debug
5924     and g_detail_debug = 'Y' then
5925       hr_utility.set_location(l_proc,40);
5926       hr_utility.trace('create_pact for p_payroll_action_id : '||to_char(p_payroll_action_id));
5927     end if;
5928   --
5929     if g_arch_option = 'ADD' then
5930     --
5931       pay_jp_itwb_dml_pkg.copy_pai(
5932         p_action_context_id           => p_payroll_action_id,
5933         p_effective_date              => g_effective_date,
5934         p_action_context_id_o         => g_payroll_action_id_o,
5935         p_action_context_type         => 'PA',
5936         p_action_information_category => 'JP_ITWB_ITAX_ORG',
5937         p_action_information_id       => l_action_information_id,
5938         p_object_version_number       => l_object_version_number);
5939     --
5940       if g_debug
5941       and g_detail_debug = 'Y' then
5942         hr_utility.set_location(l_proc,50);
5943         hr_utility.trace('copy itax_org done');
5944         hr_utility.trace('g_payroll_action_id : '||to_char(g_payroll_action_id_o));
5945         hr_utility.trace('p_payroll_action_id : '||to_char(to_char(p_payroll_action_id)));
5946       end if;
5947     --
5948     -- renew, update case
5949     else
5950     --
5951       open csr_org;
5952       fetch csr_org into l_csr_org;
5953       --
5954       if csr_org%notfound then
5955         fnd_message.set_name('PAY','PAY_JP_INVALID_SWOT');
5956         fnd_message.raise_error;
5957       end if;
5958       --
5959       close csr_org;
5960     --
5961       -- itax_org_address max size is 150 x 3 byte < 240 x 2
5962       l_object_version_number := null;
5963       pay_jp_itwb_dml_pkg.create_itax_org(
5964         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
5965         p_payroll_action_id           => p_payroll_action_id,
5966         p_action_context_type         => 'PA',
5967         p_effective_date              => g_effective_date,
5968         p_action_information_category => 'JP_ITWB_ITAX_ORG',
5969         p_itax_org_id                 => g_itax_organization_id,
5970         p_name                        => l_csr_org.name,
5971         p_name_kana                   => l_csr_org.name_kana,
5972         p_address1                    => substr(l_csr_org.address,1,80),
5973         p_address2                    => substr(l_csr_org.address,81,80),
5974         p_address_kana1               => substr(l_csr_org.address_kana,1,80),
5975         p_address_kana2               => substr(l_csr_org.address_kana,81,80),
5976         p_phone                       => l_csr_org.phone,
5977         p_serial1                     => l_csr_org.serial1,
5978         p_serial2                     => l_csr_org.serial2,
5979         p_object_version_number       => l_object_version_number);
5980     --
5981       if g_debug
5982       and g_detail_debug = 'Y' then
5983         hr_utility.set_location(l_proc,60);
5984         hr_utility.trace('create_itax_org for p_payroll_action_id : '||to_char(p_payroll_action_id));
5985       end if;
5986     --
5987     end if;
5988   --
5989   end if;
5990 --
5991   if g_debug
5992   and g_detail_debug = 'Y' then
5993     hr_utility.set_location(l_proc,1000);
5994   end if;
5995 --
5996 end archive_pact;
5997 --
5998 -- -------------------------------------------------------------------------
5999 -- range_cursor
6000 -- -------------------------------------------------------------------------
6001 procedure range_cursor(
6002   p_payroll_action_id in number,
6003   p_sqlstr            out nocopy varchar2)
6004 is
6005 --
6006   l_proc varchar2(80) := c_package||'range_cursor';
6007 --
6008   l_detail_debug varchar2(1) := pay_jp_itwb_archive_pkg.g_detail_debug;
6009 --
6010 begin
6011 --
6012   if g_debug then
6013     hr_utility.set_location(l_proc,0);
6014   end if;
6015 --
6016   init_pact(p_payroll_action_id);
6017   set_detail_debug(l_detail_debug);
6018 --
6019   if g_debug
6020   and g_detail_debug = 'Y' then
6021     hr_utility.set_location(l_proc,10);
6022   end if;
6023 --
6024   archive_pact(p_payroll_action_id);
6025 --
6026   if g_debug
6027   and g_detail_debug = 'Y' then
6028     hr_utility.set_location(l_proc,20);
6029   end if;
6030 --
6031   p_sqlstr :=
6032     'select distinct ppos.person_id
6033      from   pay_payroll_actions ppa,
6034             per_all_people_f pp,
6035             per_periods_of_service ppos
6036      where  ppa.payroll_action_id = :payroll_action_id
6037      and    pp.business_group_id = ppa.business_group_id + 0
6038      and    ppos.person_id = pp.person_id
6039      and    ppos.business_group_id + 0 = pp.business_group_id
6040      and    ppos.date_start <= fnd_date.canonical_to_date(''i_effective_eoy'')
6041      and    nvl(ppos.final_process_date,fnd_date.canonical_to_date(''i_effective_soy'')) >= fnd_date.canonical_to_date(''i_effective_soy'')
6042      order by
6043        ppos.person_id';
6044 --
6045   p_sqlstr := replace(p_sqlstr,'i_effective_soy',fnd_date.date_to_canonical(g_effective_soy));
6046   p_sqlstr := replace(p_sqlstr,'i_effective_eoy',fnd_date.date_to_canonical(g_effective_eoy));
6047 --
6048   if g_debug then
6049     hr_utility.set_location(l_proc,1000);
6050   end if;
6051 --
6052 end range_cursor;
6053 --
6054 -- -------------------------------------------------------------------------
6055 -- assignment_action_creation
6056 -- -------------------------------------------------------------------------
6057 procedure assignment_action_creation(
6058   p_payroll_action_id in number,
6059   p_start_person_id   in number,
6060   p_end_person_id     in number,
6061   p_chunk_number      in number)
6062 is
6063 --
6064   l_proc varchar2(80) := c_package||'assignment_action_creation';
6065 --
6066   l_assignment_action_id number;
6067 --
6068   l_ass_cnt number;
6069   l_person_id number;
6070   l_assignment_id number;
6071   l_ass_tbl_cnt number := 0;
6072 --
6073   l_ass_id_tbl t_number_tbl;
6074   l_ass_id_tbl_cnt number;
6075 --
6076   --
6077   -- include assignment who has been retired at session date
6078   -- even if assignment has been expired at session date.
6079   --
6080   -- exclude assignment who has not been hired yet at session date
6081   -- but the new emp will be added in subsequent process.
6082   -- the assact will be created for the main pact date
6083   -- even if the new emp has not been hired at the main pact date.
6084   --
6085   -- treat rehired multiple assignment
6086   --
6087   cursor csr_proc_ass_new
6088   is
6089   select  /*+ ORDERED */
6090           pa.person_id,
6091           paa.assignment_id
6092   from    pay_payroll_actions ppa,
6093           pay_assignment_actions paa,
6094           per_all_assignments_f pa,
6095           pay_link_input_values_f pliv_itax_org,
6096           pay_link_input_values_f pliv_itax_type,
6097           pay_element_entries_f pee_itax_org,
6098           pay_element_entries_f pee_itax_type,
6099           pay_element_entry_values_f peev_itax_org,
6100           pay_element_entry_values_f peev_itax_type
6101   where   ppa.business_group_id + 0 = g_business_group_id
6102   and     ppa.action_status = 'C'
6103   and     ppa.action_type in ('R', 'Q', 'B', 'I')
6104   and     decode(nvl(ppa.element_set_id,-1),
6105             c_yea_ele_set_id,ppa.date_earned,
6106             c_rey_ele_set_id,ppa.date_earned,ppa.effective_date)
6107           between g_effective_soy and g_effective_eom
6108   and     nvl(ppa.element_type_id,c_yea_itx_elm_id) in (c_yea_itx_elm_id, c_rey_itx_elm_id)
6109   and     decode(nvl(ppa.element_type_id,-1),-1,nvl(ppa.element_set_id,-1),c_sal_ele_set_id) in (
6110             c_sal_ele_set_id,
6111             c_bon_ele_set_id,
6112             c_spb_ele_set_id,
6113             c_yea_ele_set_id,
6114             c_rey_ele_set_id,
6115             c_sal_cust_ele_set_id,
6116             c_bon_cust_ele_set_id,
6117             c_spb_cust_ele_set_id,
6118             c_yea_cust_ele_set_id,
6119             c_rey_cust_ele_set_id,
6120             -1)
6121   and     paa.payroll_action_id = ppa.payroll_action_id
6122   and     paa.action_status = 'C'
6123   and     decode(nvl(ppa.element_type_id,-1),-1,decode(nvl(ppa.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa.assignment_action_id,ppa.action_type),'N'),'Y'),'Y') <> 'N'
6124   and     pa.assignment_id = paa.assignment_id
6125   and     ppa.effective_date
6126           between pa.effective_start_date and pa.effective_end_date
6127   and not exists(
6128     select /*+ ORDERED */
6129            null
6130     from   pay_action_interlocks pai,
6131            pay_assignment_actions paav,
6132            pay_payroll_actions ppav
6133     where  pai.locked_action_id = paa.assignment_action_id
6134     and    paav.assignment_action_id = pai.locking_action_id
6135     and    ppav.payroll_action_id = paav.payroll_action_id
6136     and    ppav.action_type = 'V')
6137   and     pliv_itax_org.input_value_id = c_itx_org_iv_id
6138   and     ppa.effective_date
6139           between pliv_itax_org.effective_start_date and pliv_itax_org.effective_end_date
6140   and     pliv_itax_type.input_value_id = c_itx_type_iv_id
6141   and     ppa.effective_date
6142           between pliv_itax_type.effective_start_date and pliv_itax_type.effective_end_date
6143   and     pee_itax_org.assignment_id = paa.assignment_id
6144   and     pee_itax_org.element_link_id = pliv_itax_org.element_link_id
6145   and     ppa.effective_date
6146           between pee_itax_org.effective_start_date and pee_itax_org.effective_end_date
6147   and     pee_itax_type.assignment_id = paa.assignment_id
6148   and     pee_itax_type.element_link_id = pliv_itax_type.element_link_id
6149   and     ppa.effective_date
6150           between pee_itax_type.effective_start_date and pee_itax_type.effective_end_date
6151   and     peev_itax_org.element_entry_id = pee_itax_org.element_entry_id
6152   and     peev_itax_org.input_value_id = pliv_itax_org.input_value_id
6153   and     peev_itax_org.effective_start_date = pee_itax_org.effective_start_date
6154   and     peev_itax_org.effective_end_date = pee_itax_org.effective_end_date
6155   and     fnd_number.canonical_to_number(decode(peev_itax_org.input_value_id,c_itx_org_iv_id,peev_itax_org.screen_entry_value,null)) = g_itax_organization_id
6156   and     peev_itax_type.element_entry_id = pee_itax_type.element_entry_id
6157   and     peev_itax_type.input_value_id = pliv_itax_type.input_value_id
6158   and     peev_itax_type.effective_start_date = pee_itax_type.effective_start_date
6159   and     peev_itax_type.effective_end_date = pee_itax_type.effective_end_date
6160   and     peev_itax_type.screen_entry_value <> 'E'
6161   and not exists(
6162     select /*+ ORDERED */
6163            null
6164     from   pay_payroll_actions ppa2,
6165            pay_assignment_actions paa2,
6166            pay_link_input_values_f pliv_itax_org2,
6167            pay_link_input_values_f pliv_itax_type2,
6168            pay_element_entries_f pee_itax_org2,
6169            pay_element_entries_f pee_itax_type2,
6170            pay_element_entry_values_f peev_itax_org2,
6171            pay_element_entry_values_f peev_itax_type2
6172     where  ppa2.business_group_id + 0 = g_business_group_id
6173     and    ppa2.action_status = 'C'
6174     and    ppa2.action_type in ('R', 'Q', 'B', 'I')
6175     and    decode(nvl(ppa2.element_set_id,-1),
6176               c_yea_ele_set_id,ppa2.date_earned,
6177               c_rey_ele_set_id,ppa2.date_earned,ppa2.effective_date)
6178            between g_effective_soy and g_effective_eom
6179     and    nvl(ppa2.element_type_id,c_yea_itx_elm_id) in (c_yea_itx_elm_id, c_rey_itx_elm_id)
6180     and    decode(nvl(ppa2.element_type_id,-1),-1,nvl(ppa2.element_set_id,-1),c_sal_ele_set_id) in (
6181              c_sal_ele_set_id,
6182              c_bon_ele_set_id,
6183              c_spb_ele_set_id,
6184              c_yea_ele_set_id,
6185              c_rey_ele_set_id,
6186              c_sal_cust_ele_set_id,
6187              c_bon_cust_ele_set_id,
6188              c_spb_cust_ele_set_id,
6189              c_yea_cust_ele_set_id,
6190              c_rey_cust_ele_set_id,
6191              -1)
6192     and    paa2.payroll_action_id = ppa2.payroll_action_id
6193     and    decode(nvl(ppa2.element_type_id,-1),-1,decode(nvl(ppa2.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa2.assignment_action_id,ppa2.action_type),'N'),'Y'),'Y') <> 'N'
6194     and    paa2.action_status = 'C'
6195     and not exists(
6196       select /*+ ORDERED */
6197              null
6198       from   pay_action_interlocks pai2,
6199              pay_assignment_actions paav2,
6200              pay_payroll_actions ppav2
6201       where  pai2.locked_action_id = paa2.assignment_action_id
6202       and    paav2.assignment_action_id = pai2.locking_action_id
6203       and    ppav2.payroll_action_id = paav2.payroll_action_id
6204       and    ppav2.action_type = 'V')
6205     and     pliv_itax_org2.input_value_id = c_itx_org_iv_id
6206     and     ppa2.effective_date
6207             between pliv_itax_org2.effective_start_date and pliv_itax_org2.effective_end_date
6208     and     pliv_itax_type2.input_value_id = c_itx_type_iv_id
6209     and     ppa2.effective_date
6210             between pliv_itax_type2.effective_start_date and pliv_itax_type2.effective_end_date
6211     and     pee_itax_org2.assignment_id = paa2.assignment_id
6212     and     pee_itax_org2.element_link_id = pliv_itax_org2.element_link_id
6213     and     ppa2.effective_date
6214             between pee_itax_org2.effective_start_date and pee_itax_org2.effective_end_date
6215     and     pee_itax_type2.assignment_id = paa2.assignment_id
6216     and     pee_itax_type2.element_link_id = pliv_itax_type2.element_link_id
6217     and     ppa2.effective_date
6218             between pee_itax_type2.effective_start_date and pee_itax_type2.effective_end_date
6219     and     peev_itax_org2.element_entry_id = pee_itax_org2.element_entry_id
6220     and     peev_itax_org2.input_value_id = pliv_itax_org2.input_value_id
6221     and     peev_itax_org2.effective_start_date = pee_itax_org2.effective_start_date
6222     and     peev_itax_org2.effective_end_date = pee_itax_org2.effective_end_date
6223     and     fnd_number.canonical_to_number(decode(peev_itax_org2.input_value_id,c_itx_org_iv_id,peev_itax_org2.screen_entry_value,null)) = g_itax_organization_id
6224     and     peev_itax_type2.element_entry_id = pee_itax_type2.element_entry_id
6225     and     peev_itax_type2.input_value_id = pliv_itax_type2.input_value_id
6226     and     peev_itax_type2.effective_start_date = pee_itax_type2.effective_start_date
6227     and     peev_itax_type2.effective_end_date = pee_itax_type2.effective_end_date
6228     and     peev_itax_type2.screen_entry_value <> 'E'
6229     and     paa2.assignment_id = paa.assignment_id
6230     and     paa2.action_sequence > paa.action_sequence)
6231   order by pa.person_id;
6232 --
6233   cursor csr_proc_ass_add
6234   is
6235   select /*+ ORDERED */
6236          larch_v.person_id,
6237          larch_v.assignment_id
6238   from   (select /*+ ORDERED */
6239                  pa.assignment_id,
6240                  pa.person_id,
6241                  ppa.effective_date
6242           from   pay_payroll_actions ppa,
6243                  pay_assignment_actions paa,
6244                  per_all_assignments_f pa,
6245                  pay_link_input_values_f pliv_itax_org,
6246                  pay_link_input_values_f pliv_itax_type,
6247                  pay_element_entries_f pee_itax_org,
6248                  pay_element_entries_f pee_itax_type,
6249                  pay_element_entry_values_f peev_itax_org,
6250                  pay_element_entry_values_f peev_itax_type
6251           where  ppa.business_group_id + 0 = g_business_group_id
6252           and    ppa.action_status = 'C'
6253           and    ppa.action_type in ('R', 'Q', 'B', 'I')
6254          and     decode(nvl(ppa.element_set_id,-1),
6255                    c_yea_ele_set_id,ppa.date_earned,
6256                    c_rey_ele_set_id,ppa.date_earned,ppa.effective_date)
6257                  between g_effective_soy and g_effective_eom
6258           and    nvl(ppa.element_type_id,c_yea_itx_elm_id) in (c_yea_itx_elm_id, c_rey_itx_elm_id)
6259           and    decode(nvl(ppa.element_type_id,-1),-1,nvl(ppa.element_set_id,-1),c_sal_ele_set_id) in (
6260                    c_sal_ele_set_id,
6261                    c_bon_ele_set_id,
6262                    c_spb_ele_set_id,
6263                    c_yea_ele_set_id,
6264                    c_rey_ele_set_id,
6265                    c_sal_cust_ele_set_id,
6266                    c_bon_cust_ele_set_id,
6267                    c_spb_cust_ele_set_id,
6268                    c_yea_cust_ele_set_id,
6269                    c_rey_cust_ele_set_id,
6270                    -1)
6271           and    paa.payroll_action_id = ppa.payroll_action_id
6272           and    decode(nvl(ppa.element_type_id,-1),-1,decode(nvl(ppa.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa.assignment_action_id,ppa.action_type),'N'),'Y'),'Y') <> 'N'
6273           and    paa.action_status = 'C'
6274           and not exists(
6275             select /*+ ORDERED */
6276                    null
6277             from   pay_action_interlocks pai,
6278                    pay_assignment_actions paav,
6279                    pay_payroll_actions ppav
6280             where  pai.locked_action_id = paa.assignment_action_id
6281             and    paav.assignment_action_id = pai.locking_action_id
6282             and    ppav.payroll_action_id = paav.payroll_action_id
6283             and    ppav.action_type = 'V')
6284           and    pa.assignment_id = paa.assignment_id
6285           and    ppa.effective_date
6286                  between pa.effective_start_date and pa.effective_end_date
6287           and    pliv_itax_org.input_value_id = c_itx_org_iv_id
6288           and    ppa.effective_date
6289                  between pliv_itax_org.effective_start_date and pliv_itax_org.effective_end_date
6290           and    pliv_itax_type.input_value_id = c_itx_type_iv_id
6291           and    ppa.effective_date
6292                  between pliv_itax_type.effective_start_date and pliv_itax_type.effective_end_date
6293           and    pee_itax_org.assignment_id = paa.assignment_id
6294           and    pee_itax_org.element_link_id = pliv_itax_org.element_link_id
6295           and    ppa.effective_date
6296                  between pee_itax_org.effective_start_date and pee_itax_org.effective_end_date
6297           and    pee_itax_type.assignment_id = paa.assignment_id
6298           and    pee_itax_type.element_link_id = pliv_itax_type.element_link_id
6299           and    ppa.effective_date
6300                  between pee_itax_type.effective_start_date and pee_itax_type.effective_end_date
6301           and    peev_itax_org.element_entry_id = pee_itax_org.element_entry_id
6302           and    peev_itax_org.input_value_id = pliv_itax_org.input_value_id
6303           and    peev_itax_org.effective_start_date = pee_itax_org.effective_start_date
6304           and    peev_itax_org.effective_end_date = pee_itax_org.effective_end_date
6305           and    fnd_number.canonical_to_number(decode(peev_itax_org.input_value_id,c_itx_org_iv_id,peev_itax_org.screen_entry_value,null)) = g_itax_organization_id
6306           and    peev_itax_type.element_entry_id = pee_itax_type.element_entry_id
6307           and    peev_itax_type.input_value_id = pliv_itax_type.input_value_id
6308           and    peev_itax_type.effective_start_date = pee_itax_type.effective_start_date
6309           and    peev_itax_type.effective_end_date = pee_itax_type.effective_end_date
6310           and    peev_itax_type.screen_entry_value <> 'E'
6311           and    not exists(
6312             select /*+ ORDERED */
6313                    null
6314             from   pay_payroll_actions ppa2,
6315                    pay_assignment_actions paa2,
6316                    pay_link_input_values_f pliv_itax_org2,
6317                    pay_link_input_values_f pliv_itax_type2,
6318                    pay_element_entries_f pee_itax_org2,
6319                    pay_element_entries_f pee_itax_type2,
6320                    pay_element_entry_values_f peev_itax_org2,
6321                    pay_element_entry_values_f peev_itax_type2
6322             where  ppa2.business_group_id + 0 = g_business_group_id
6323             and    ppa2.action_status = 'C'
6324             and    ppa2.action_type in ('R', 'Q', 'B', 'I')
6325             and    decode(nvl(ppa2.element_set_id,-1),
6326                      c_yea_ele_set_id,ppa2.date_earned,
6327                      c_rey_ele_set_id,ppa2.date_earned,ppa2.effective_date)
6328                    between g_effective_soy and g_effective_eom
6329             and    nvl(ppa2.element_type_id,c_yea_itx_elm_id) in (c_yea_itx_elm_id, c_rey_itx_elm_id)
6330             and    decode(nvl(ppa2.element_type_id,-1),-1,nvl(ppa2.element_set_id,-1),c_sal_ele_set_id) in (
6331                      c_sal_ele_set_id,
6332                      c_bon_ele_set_id,
6333                      c_spb_ele_set_id,
6334                      c_yea_ele_set_id,
6335                      c_rey_ele_set_id,
6336                      c_sal_cust_ele_set_id,
6337                      c_bon_cust_ele_set_id,
6338                      c_spb_cust_ele_set_id,
6339                      c_yea_cust_ele_set_id,
6340                      c_rey_cust_ele_set_id,
6341                      -1)
6342             and    paa2.payroll_action_id = ppa2.payroll_action_id
6343             and    decode(nvl(ppa2.element_type_id,-1),-1,decode(nvl(ppa2.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa2.assignment_action_id,ppa2.action_type),'N'),'Y'),'Y') <> 'N'
6344             and    paa2.action_status = 'C'
6345             and not exists(
6346               select /*+ ORDERED */
6347                      null
6348               from   pay_action_interlocks pai2,
6349                      pay_assignment_actions paav2,
6350                      pay_payroll_actions ppav2
6351               where  pai2.locked_action_id = paa2.assignment_action_id
6352               and    paav2.assignment_action_id = pai2.locking_action_id
6353               and    ppav2.payroll_action_id = paav2.payroll_action_id
6354               and    ppav2.action_type = 'V')
6355             and    pliv_itax_org2.input_value_id = c_itx_org_iv_id
6356             and    ppa2.effective_date
6357                    between pliv_itax_org2.effective_start_date and pliv_itax_org2.effective_end_date
6358             and    pliv_itax_type2.input_value_id = c_itx_type_iv_id
6359             and    ppa2.effective_date
6360                    between pliv_itax_type2.effective_start_date and pliv_itax_type2.effective_end_date
6361             and    pee_itax_org2.assignment_id = paa2.assignment_id
6362             and    pee_itax_org2.element_link_id = pliv_itax_org2.element_link_id
6363             and    ppa2.effective_date
6364                    between pee_itax_org2.effective_start_date and pee_itax_org2.effective_end_date
6365             and    pee_itax_type2.assignment_id = paa2.assignment_id
6366             and    pee_itax_type2.element_link_id = pliv_itax_type2.element_link_id
6367             and    ppa2.effective_date
6368                    between pee_itax_type2.effective_start_date and pee_itax_type2.effective_end_date
6369             and    peev_itax_org2.element_entry_id = pee_itax_org2.element_entry_id
6370             and    peev_itax_org2.input_value_id = pliv_itax_org2.input_value_id
6371             and    peev_itax_org2.effective_start_date = pee_itax_org2.effective_start_date
6372             and    peev_itax_org2.effective_end_date = pee_itax_org2.effective_end_date
6373             and    fnd_number.canonical_to_number(decode(peev_itax_org2.input_value_id,c_itx_org_iv_id,peev_itax_org2.screen_entry_value,null)) = g_itax_organization_id
6374             and    peev_itax_type2.element_entry_id = pee_itax_type2.element_entry_id
6375             and    peev_itax_type2.input_value_id = pliv_itax_type2.input_value_id
6376             and    peev_itax_type2.effective_start_date = pee_itax_type2.effective_start_date
6377             and    peev_itax_type2.effective_end_date = pee_itax_type2.effective_end_date
6378             and    peev_itax_type2.screen_entry_value <> 'E'
6379             and    paa2.assignment_id = paa.assignment_id
6380             and    paa2.action_sequence > paa.action_sequence)) larch_v,
6381          pay_jp_itwb_assact_v pjia,
6382          pay_assignment_actions paa_o,
6383          pay_assignment_actions lpaa,
6384          pay_payroll_actions lppa
6385   where  pjia.assignment_id (+) = larch_v.assignment_id
6386   and    pjia.effective_date (+)
6387          between g_effective_soy and g_effective_som - 1
6388   and    paa_o.assignment_action_id (+) = pjia.assignment_action_id
6389   and    lpaa.assignment_action_id (+) = pjia.proc_assignment_action_id
6390   and    lppa.payroll_action_id (+) = lpaa.payroll_action_id
6391   and    decode(nvl(paa_o.assignment_action_id,-1),-1,g_effective_eom,larch_v.effective_date)
6392          between nvl(add_months(trunc(lppa.effective_date,'MM'),1),g_effective_eom) and g_effective_eom
6393   and    not exists(
6394     select /*+ ORDERED */
6395            null
6396     from   pay_jp_itwb_assact_v pjia2,
6397            pay_assignment_actions paa_o2
6398     where  pjia2.assignment_id = larch_v.assignment_id
6399     and    pjia2.effective_date
6400            between g_effective_soy and g_effective_som - 1
6401     and    paa_o2.assignment_action_id = pjia2.assignment_action_id
6402     and    paa_o2.action_sequence > paa_o.action_sequence)
6403   order by larch_v.person_id;
6404 --
6405   cursor csr_proc_ass_upd
6406   is
6407   select /*+ ORDERED */
6408          larch_v.person_id,
6409          larch_v.assignment_id,
6410          decode(nvl(paa_o.assignment_action_id,-1),-1,g_effective_date,larch_v.effective_date) effective_date
6411   from   (select /*+ ORDERED */
6412                  pa.assignment_id,
6413                  pa.person_id,
6414                  ppa.effective_date
6415           from   pay_payroll_actions ppa,
6416                  pay_assignment_actions paa,
6417                  per_all_assignments_f pa,
6418                  pay_link_input_values_f pliv_itax_org,
6419                  pay_link_input_values_f pliv_itax_type,
6420                  pay_element_entries_f pee_itax_org,
6421                  pay_element_entries_f pee_itax_type,
6422                  pay_element_entry_values_f peev_itax_org,
6423                  pay_element_entry_values_f peev_itax_type
6424           where  ppa.business_group_id + 0 = g_business_group_id
6425           and    ppa.action_status = 'C'
6426           and    ppa.action_type in ('R', 'Q', 'B', 'I')
6427           and    decode(nvl(ppa.element_set_id,-1),
6428                    c_yea_ele_set_id,ppa.date_earned,
6429                    c_rey_ele_set_id,ppa.date_earned,ppa.effective_date)
6430                  between g_effective_som and g_effective_eom
6431           and    nvl(ppa.element_type_id,c_yea_itx_elm_id) in (c_yea_itx_elm_id, c_rey_itx_elm_id)
6432           and    decode(nvl(ppa.element_type_id,-1),-1,nvl(ppa.element_set_id,-1),c_sal_ele_set_id) in (
6433                    c_sal_ele_set_id,
6434                    c_bon_ele_set_id,
6435                    c_spb_ele_set_id,
6436                    c_yea_ele_set_id,
6437                    c_rey_ele_set_id,
6438                    c_sal_cust_ele_set_id,
6439                    c_bon_cust_ele_set_id,
6440                    c_spb_cust_ele_set_id,
6441                    c_yea_cust_ele_set_id,
6442                    c_rey_cust_ele_set_id,
6443                    -1)
6444           and    paa.payroll_action_id = ppa.payroll_action_id
6445           and    decode(nvl(ppa.element_type_id,-1),-1,decode(nvl(ppa.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa.assignment_action_id,ppa.action_type),'N'),'Y'),'Y') <> 'N'
6446           and    paa.action_status = 'C'
6447           and not exists(
6448             select /*+ ORDERED */
6449                    null
6450             from   pay_action_interlocks pai,
6451                    pay_assignment_actions paav,
6452                    pay_payroll_actions ppav
6453             where  pai.locked_action_id = paa.assignment_action_id
6454             and    paav.assignment_action_id = pai.locking_action_id
6455             and    ppav.payroll_action_id = paav.payroll_action_id
6456             and    ppav.action_type = 'V')
6457           and    pa.assignment_id = paa.assignment_id
6458           and    pa.payroll_id = nvl(g_payroll_id,pa.payroll_id)
6459           and    ppa.effective_date
6460                  between pa.effective_start_date and pa.effective_end_date
6461           and    pliv_itax_org.input_value_id = c_itx_org_iv_id
6462           and    ppa.effective_date
6463                  between pliv_itax_org.effective_start_date and pliv_itax_org.effective_end_date
6464           and    pliv_itax_type.input_value_id = c_itx_type_iv_id
6465           and    ppa.effective_date
6466                  between pliv_itax_type.effective_start_date and pliv_itax_type.effective_end_date
6467           and    pee_itax_org.assignment_id = paa.assignment_id
6468           and    pee_itax_org.element_link_id = pliv_itax_org.element_link_id
6469           and    ppa.effective_date
6470                  between pee_itax_org.effective_start_date and pee_itax_org.effective_end_date
6471           and    pee_itax_type.assignment_id = paa.assignment_id
6472           and    pee_itax_type.element_link_id = pliv_itax_type.element_link_id
6473           and    ppa.effective_date
6474                  between pee_itax_type.effective_start_date and pee_itax_type.effective_end_date
6475           and    peev_itax_org.element_entry_id = pee_itax_org.element_entry_id
6476           and    peev_itax_org.input_value_id = pliv_itax_org.input_value_id
6477           and    peev_itax_org.effective_start_date = pee_itax_org.effective_start_date
6478           and    peev_itax_org.effective_end_date = pee_itax_org.effective_end_date
6479           and    fnd_number.canonical_to_number(decode(peev_itax_org.input_value_id,c_itx_org_iv_id,peev_itax_org.screen_entry_value,null)) = g_itax_organization_id
6480           and    peev_itax_type.element_entry_id = pee_itax_type.element_entry_id
6481           and    peev_itax_type.input_value_id = pliv_itax_type.input_value_id
6482           and    peev_itax_type.effective_start_date = pee_itax_type.effective_start_date
6483           and    peev_itax_type.effective_end_date = pee_itax_type.effective_end_date
6484           and    peev_itax_type.screen_entry_value <> 'E'
6485           and    not exists(
6486             select /*+ ORDERED */
6487                    null
6488             from   pay_payroll_actions ppa2,
6489                    pay_assignment_actions paa2,
6490                    per_all_assignments_f pa2,
6491                    pay_link_input_values_f pliv_itax_org2,
6492                    pay_link_input_values_f pliv_itax_type2,
6493                    pay_element_entries_f pee_itax_org2,
6494                    pay_element_entries_f pee_itax_type2,
6495                    pay_element_entry_values_f peev_itax_org2,
6496                    pay_element_entry_values_f peev_itax_type2
6497             where  ppa2.business_group_id + 0 = g_business_group_id
6498             and    ppa2.action_status = 'C'
6499             and    ppa2.action_type in ('R', 'Q', 'B', 'I')
6500             and    decode(nvl(ppa2.element_set_id,-1),
6501                      c_yea_ele_set_id,ppa2.date_earned,
6502                      c_rey_ele_set_id,ppa2.date_earned,ppa2.effective_date)
6503                    between g_effective_som and g_effective_eom
6504             and    nvl(ppa2.element_type_id,c_yea_itx_elm_id) in (c_yea_itx_elm_id, c_rey_itx_elm_id)
6505             and    decode(nvl(ppa2.element_type_id,-1),-1,nvl(ppa2.element_set_id,-1),c_sal_ele_set_id) in (
6506                      c_sal_ele_set_id,
6507                      c_bon_ele_set_id,
6508                      c_spb_ele_set_id,
6509                      c_yea_ele_set_id,
6510                      c_rey_ele_set_id,
6511                      c_sal_cust_ele_set_id,
6512                      c_bon_cust_ele_set_id,
6513                      c_spb_cust_ele_set_id,
6514                      c_yea_cust_ele_set_id,
6515                      c_rey_cust_ele_set_id,
6516                      -1)
6517             and    paa2.payroll_action_id = ppa2.payroll_action_id
6518             and    decode(nvl(ppa2.element_type_id,-1),-1,decode(nvl(ppa2.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa2.assignment_action_id,ppa2.action_type),'N'),'Y'),'Y') <> 'N'
6519             and    paa2.action_status = 'C'
6520             and not exists(
6521               select /*+ ORDERED */
6522                      null
6523               from   pay_action_interlocks pai2,
6524                      pay_assignment_actions paav2,
6525                      pay_payroll_actions ppav2
6526               where  pai2.locked_action_id = paa2.assignment_action_id
6527               and    paav2.assignment_action_id = pai2.locking_action_id
6528               and    ppav2.payroll_action_id = paav2.payroll_action_id
6529               and    ppav2.action_type = 'V')
6530             and    pa2.assignment_id = paa2.assignment_id
6531             and    pa2.payroll_id = nvl(g_payroll_id,pa2.payroll_id)
6532             and    ppa2.effective_date
6533                    between pa2.effective_start_date and pa2.effective_end_date
6534             and    pliv_itax_org2.input_value_id = c_itx_org_iv_id
6535             and    ppa2.effective_date
6536                    between pliv_itax_org2.effective_start_date and pliv_itax_org2.effective_end_date
6537             and    pliv_itax_type2.input_value_id = c_itx_type_iv_id
6538             and    ppa2.effective_date
6539                    between pliv_itax_type2.effective_start_date and pliv_itax_type2.effective_end_date
6540             and    pee_itax_org2.assignment_id = paa2.assignment_id
6541             and    pee_itax_org2.element_link_id = pliv_itax_org2.element_link_id
6542             and    ppa2.effective_date
6543                    between pee_itax_org2.effective_start_date and pee_itax_org2.effective_end_date
6544             and    pee_itax_type2.assignment_id = paa2.assignment_id
6545             and    pee_itax_type2.element_link_id = pliv_itax_type2.element_link_id
6546             and    ppa2.effective_date
6547                    between pee_itax_type2.effective_start_date and pee_itax_type2.effective_end_date
6548             and    peev_itax_org2.element_entry_id = pee_itax_org2.element_entry_id
6549             and    peev_itax_org2.input_value_id = pliv_itax_org2.input_value_id
6550             and    peev_itax_org2.effective_start_date = pee_itax_org2.effective_start_date
6551             and    peev_itax_org2.effective_end_date = pee_itax_org2.effective_end_date
6552             and    fnd_number.canonical_to_number(decode(peev_itax_org2.input_value_id,c_itx_org_iv_id,peev_itax_org2.screen_entry_value,null)) = g_itax_organization_id
6553             and    peev_itax_type2.element_entry_id = pee_itax_type2.element_entry_id
6554             and    peev_itax_type2.input_value_id = pliv_itax_type2.input_value_id
6555             and    peev_itax_type2.effective_start_date = pee_itax_type2.effective_start_date
6556             and    peev_itax_type2.effective_end_date = pee_itax_type2.effective_end_date
6557             and    peev_itax_type2.screen_entry_value <> 'E'
6558             and    paa2.assignment_id = paa.assignment_id
6559             and    paa2.action_sequence > paa.action_sequence)) larch_v,
6560          pay_jp_itwb_assact_v pjia,
6561          pay_assignment_actions paa_o
6562   where  pjia.assignment_id (+) = larch_v.assignment_id
6563   and    pjia.effective_date (+)
6564          between g_effective_soy and g_effective_eoy
6565   and    paa_o.assignment_action_id (+) = pjia.assignment_action_id
6566   and    not exists(
6567     select /*+ ORDERED */
6568            null
6569     from   pay_jp_itwb_assact_v pjia2,
6570            pay_assignment_actions paa_o2
6571     where  pjia2.assignment_id = larch_v.assignment_id
6572     and    pjia2.effective_date
6573            between g_effective_soy and g_effective_eoy
6574     and    paa_o2.assignment_action_id = pjia2.assignment_action_id
6575     and    paa_o2.action_sequence > paa_o.action_sequence)
6576   order by larch_v.person_id;
6577 --
6578   cursor csr_proc_hasa_upd
6579   is
6580   select /*+ ORDERED */
6581          larch_v.person_id,
6582          larch_v.assignment_id,
6583          decode(nvl(paa_o.assignment_action_id,-1),-1,g_effective_date,larch_v.effective_date) effective_date,
6584          hasa.include_or_exclude
6585   from   (select /*+ ORDERED */
6586                  pa.assignment_id,
6587                  pa.person_id,
6588                  ppa.effective_date
6589           from   pay_payroll_actions ppa,
6590                  pay_assignment_actions paa,
6591                  per_all_assignments_f pa,
6592                  pay_link_input_values_f pliv_itax_org,
6593                  pay_link_input_values_f pliv_itax_type,
6594                  pay_element_entries_f pee_itax_org,
6595                  pay_element_entries_f pee_itax_type,
6596                  pay_element_entry_values_f peev_itax_org,
6597                  pay_element_entry_values_f peev_itax_type
6598           where  ppa.business_group_id + 0 = g_business_group_id
6599           and    ppa.action_status = 'C'
6600           and    ppa.action_type in ('R', 'Q', 'B', 'I')
6601          and     decode(nvl(ppa.element_set_id,-1),
6602                    c_yea_ele_set_id,ppa.date_earned,
6603                    c_rey_ele_set_id,ppa.date_earned,ppa.effective_date)
6604                  between g_effective_som and g_effective_eom
6605           and    nvl(ppa.element_type_id,c_yea_itx_elm_id) in (c_yea_itx_elm_id, c_rey_itx_elm_id)
6606           and    decode(nvl(ppa.element_type_id,-1),-1,nvl(ppa.element_set_id,-1),c_sal_ele_set_id) in (
6607                    c_sal_ele_set_id,
6608                    c_bon_ele_set_id,
6609                    c_spb_ele_set_id,
6610                    c_yea_ele_set_id,
6611                    c_rey_ele_set_id,
6612                    c_sal_cust_ele_set_id,
6613                    c_bon_cust_ele_set_id,
6614                    c_spb_cust_ele_set_id,
6615                    c_yea_cust_ele_set_id,
6616                    c_rey_cust_ele_set_id,
6617                    -1)
6618           and    paa.payroll_action_id = ppa.payroll_action_id
6619           and    decode(nvl(ppa.element_type_id,-1),-1,decode(nvl(ppa.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa.assignment_action_id,ppa.action_type),'N'),'Y'),'Y') <> 'N'
6620           and    paa.action_status = 'C'
6621           and not exists(
6622             select /*+ ORDERED */
6623                    null
6624             from   pay_action_interlocks pai,
6625                    pay_assignment_actions paav,
6626                    pay_payroll_actions ppav
6627             where  pai.locked_action_id = paa.assignment_action_id
6628             and    paav.assignment_action_id = pai.locking_action_id
6629             and    ppav.payroll_action_id = paav.payroll_action_id
6630             and    ppav.action_type = 'V')
6631           and    pa.assignment_id = paa.assignment_id
6632           and    pa.payroll_id = nvl(g_payroll_id,pa.payroll_id)
6633           and    ppa.effective_date
6634                  between pa.effective_start_date and pa.effective_end_date
6635           and    pliv_itax_org.input_value_id = c_itx_org_iv_id
6636           and    ppa.effective_date
6637                  between pliv_itax_org.effective_start_date and pliv_itax_org.effective_end_date
6638           and    pliv_itax_type.input_value_id = c_itx_type_iv_id
6639           and    ppa.effective_date
6640                  between pliv_itax_type.effective_start_date and pliv_itax_type.effective_end_date
6641           and    pee_itax_org.assignment_id = paa.assignment_id
6642           and    pee_itax_org.element_link_id = pliv_itax_org.element_link_id
6643           and    ppa.effective_date
6644                  between pee_itax_org.effective_start_date and pee_itax_org.effective_end_date
6645           and    pee_itax_type.assignment_id = paa.assignment_id
6646           and    pee_itax_type.element_link_id = pliv_itax_type.element_link_id
6647           and    ppa.effective_date
6648                  between pee_itax_type.effective_start_date and pee_itax_type.effective_end_date
6649           and    peev_itax_org.element_entry_id = pee_itax_org.element_entry_id
6650           and    peev_itax_org.input_value_id = pliv_itax_org.input_value_id
6651           and    peev_itax_org.effective_start_date = pee_itax_org.effective_start_date
6652           and    peev_itax_org.effective_end_date = pee_itax_org.effective_end_date
6653           and    fnd_number.canonical_to_number(decode(peev_itax_org.input_value_id,c_itx_org_iv_id,peev_itax_org.screen_entry_value,null)) = g_itax_organization_id
6654           and    peev_itax_type.element_entry_id = pee_itax_type.element_entry_id
6655           and    peev_itax_type.input_value_id = pliv_itax_type.input_value_id
6656           and    peev_itax_type.effective_start_date = pee_itax_type.effective_start_date
6657           and    peev_itax_type.effective_end_date = pee_itax_type.effective_end_date
6658           and    peev_itax_type.screen_entry_value <> 'E'
6659           and    not exists(
6660             select /*+ ORDERED */
6661                    null
6662             from   pay_payroll_actions ppa2,
6663                    pay_assignment_actions paa2,
6664                    per_all_assignments_f pa2,
6665                    pay_link_input_values_f pliv_itax_org2,
6666                    pay_link_input_values_f pliv_itax_type2,
6667                    pay_element_entries_f pee_itax_org2,
6668                    pay_element_entries_f pee_itax_type2,
6669                    pay_element_entry_values_f peev_itax_org2,
6670                    pay_element_entry_values_f peev_itax_type2
6671             where  ppa2.business_group_id + 0 = g_business_group_id
6672             and    ppa2.action_status = 'C'
6673             and    ppa2.action_type in ('R', 'Q', 'B', 'I')
6674             and    decode(nvl(ppa2.element_set_id,-1),
6675                      c_yea_ele_set_id,ppa2.date_earned,
6676                      c_rey_ele_set_id,ppa2.date_earned,ppa2.effective_date)
6677                    between g_effective_som and g_effective_eom
6678             and    nvl(ppa2.element_type_id,c_yea_itx_elm_id) in (c_yea_itx_elm_id, c_rey_itx_elm_id)
6679             and    decode(nvl(ppa2.element_type_id,-1),-1,nvl(ppa2.element_set_id,-1),c_sal_ele_set_id) in (
6680                      c_sal_ele_set_id,
6681                      c_bon_ele_set_id,
6682                      c_spb_ele_set_id,
6683                      c_yea_ele_set_id,
6684                      c_rey_ele_set_id,
6685                      c_sal_cust_ele_set_id,
6686                      c_bon_cust_ele_set_id,
6687                      c_spb_cust_ele_set_id,
6688                      c_yea_cust_ele_set_id,
6689                      c_rey_cust_ele_set_id,
6690                      -1)
6691             and    paa2.payroll_action_id = ppa2.payroll_action_id
6692             and    decode(nvl(ppa2.element_type_id,-1),-1,decode(nvl(ppa2.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa2.assignment_action_id,ppa2.action_type),'N'),'Y'),'Y') <> 'N'
6693             and    paa2.action_status = 'C'
6694             and not exists(
6695               select /*+ ORDERED */
6696                      null
6697               from   pay_action_interlocks pai2,
6698                      pay_assignment_actions paav2,
6699                      pay_payroll_actions ppav2
6700               where  pai2.locked_action_id = paa2.assignment_action_id
6701               and    paav2.assignment_action_id = pai2.locking_action_id
6702               and    ppav2.payroll_action_id = paav2.payroll_action_id
6703               and    ppav2.action_type = 'V')
6704             and    pa2.assignment_id = paa2.assignment_id
6705             and    pa2.payroll_id = nvl(g_payroll_id,pa2.payroll_id)
6706             and    ppa2.effective_date
6707                    between pa2.effective_start_date and pa2.effective_end_date
6708             and    pliv_itax_org2.input_value_id = c_itx_org_iv_id
6709             and    ppa2.effective_date
6710                    between pliv_itax_org2.effective_start_date and pliv_itax_org2.effective_end_date
6711             and    pliv_itax_type2.input_value_id = c_itx_type_iv_id
6712             and    ppa2.effective_date
6713                    between pliv_itax_type2.effective_start_date and pliv_itax_type2.effective_end_date
6714             and    pee_itax_org2.assignment_id = paa2.assignment_id
6715             and    pee_itax_org2.element_link_id = pliv_itax_org2.element_link_id
6716             and    ppa2.effective_date
6717                    between pee_itax_org2.effective_start_date and pee_itax_org2.effective_end_date
6718             and    pee_itax_type2.assignment_id = paa2.assignment_id
6719             and    pee_itax_type2.element_link_id = pliv_itax_type2.element_link_id
6720             and    ppa2.effective_date
6721                    between pee_itax_type2.effective_start_date and pee_itax_type2.effective_end_date
6722             and    peev_itax_org2.element_entry_id = pee_itax_org2.element_entry_id
6723             and    peev_itax_org2.input_value_id = pliv_itax_org2.input_value_id
6724             and    peev_itax_org2.effective_start_date = pee_itax_org2.effective_start_date
6725             and    peev_itax_org2.effective_end_date = pee_itax_org2.effective_end_date
6726             and    fnd_number.canonical_to_number(decode(peev_itax_org2.input_value_id,c_itx_org_iv_id,peev_itax_org2.screen_entry_value,null)) = g_itax_organization_id
6727             and    peev_itax_type2.element_entry_id = pee_itax_type2.element_entry_id
6728             and    peev_itax_type2.input_value_id = pliv_itax_type2.input_value_id
6729             and    peev_itax_type2.effective_start_date = pee_itax_type2.effective_start_date
6730             and    peev_itax_type2.effective_end_date = pee_itax_type2.effective_end_date
6731             and    peev_itax_type2.screen_entry_value <> 'E'
6732             and    paa2.assignment_id = paa.assignment_id
6733             and    paa2.action_sequence > paa.action_sequence)) larch_v,
6734          hr_assignment_set_amendments hasa,
6735          pay_jp_itwb_assact_v pjia,
6736          pay_assignment_actions paa_o
6737   where  to_number(decode(nvl(to_char(g_ass_set_formula_id),'-1'),'-1',
6738            decode(nvl(g_ass_set_amendment_type,'X'),'I',hasa.assignment_id,larch_v.assignment_id),
6739            larch_v.assignment_id)) = larch_v.assignment_id
6740   and    hasa.assignment_set_id (+) = g_assignment_set_id
6741   and    hasa.assignment_id (+) = larch_v.assignment_id
6742   and    nvl(hasa.include_or_exclude,'I') <> 'E'
6743   and    pjia.assignment_id (+) = larch_v.assignment_id
6744   and    pjia.effective_date (+)
6745          between g_effective_soy and g_effective_eoy
6746   and    paa_o.assignment_action_id (+) = pjia.assignment_action_id
6747   and    not exists(
6748     select /*+ ORDERED */
6749            null
6750     from   pay_jp_itwb_assact_v pjia2,
6751            pay_assignment_actions paa_o2
6752     where  pjia2.assignment_id = larch_v.assignment_id
6753     and    pjia2.effective_date
6754            between g_effective_soy and g_effective_eoy
6755     and    paa_o2.assignment_action_id = pjia2.assignment_action_id
6756     and    paa_o2.action_sequence > paa_o.action_sequence)
6757   order by larch_v.person_id;
6758 --
6759   l_csr_proc_ass_new csr_proc_ass_new%rowtype;
6760   --l_csr_proc_hasa csr_proc_hasa%rowtype;
6761   l_csr_proc_ass_add csr_proc_ass_add%rowtype;
6762   l_csr_proc_ass_upd csr_proc_ass_upd%rowtype;
6763   l_csr_proc_hasa_upd csr_proc_hasa_upd%rowtype;
6764 --
6765   l_ass_valid boolean;
6766 --
6767   l_error_code number;
6768   l_error_mesg varchar2(100);
6769   l_assact_step number;
6770 --
6771 begin
6772 --
6773   if g_debug
6774   and g_detail_debug = 'Y' then
6775     l_assact_step := 0;
6776     hr_utility.set_location(l_proc,0);
6777   end if;
6778 --
6779   -- need set for multiple ranges.
6780   init_pact(p_payroll_action_id);
6781 --
6782   if g_debug
6783   and g_detail_debug = 'Y' then
6784     l_assact_step := 1;
6785     hr_utility.set_location(l_proc,10);
6786     hr_utility.trace('g_per_ind_tbl.count : '||to_char(g_per_ind_tbl.count));
6787     hr_utility.trace('g_ass_tbl.count     : '||to_char(g_ass_tbl.count));
6788   end if;
6789 --
6790   if g_per_ind_tbl.count = 0
6791   or g_ass_tbl.count = 0 then
6792   --
6793     if g_debug
6794     and g_detail_debug = 'Y' then
6795       l_assact_step := 2;
6796       hr_utility.set_location(l_proc,20);
6797       hr_utility.trace('g_arch_option : '||g_arch_option);
6798     end if;
6799   --
6800     g_per_ind_tbl.delete;
6801     g_ass_tbl.delete;
6802   --
6803     if g_arch_option = 'UPDATE' then
6804     --
6805       if g_debug
6806       and g_detail_debug = 'Y' then
6807         l_assact_step := 3;
6808         hr_utility.set_location(l_proc,30);
6809         hr_utility.trace('g_arch_option : '||g_arch_option);
6810       end if;
6811     --
6812       if g_assignment_set_id is not null
6813       and g_ass_set_amendment_type is not null
6814       and g_ass_set_amendment_type <> 'N' then
6815       --
6816         if g_debug
6817         and g_detail_debug = 'Y' then
6818           l_assact_step := 4;
6819           hr_utility.set_location(l_proc,40);
6820           hr_utility.trace('g_arch_option : '||g_arch_option);
6821         end if;
6822       --
6823         -- #2243411 bulk collect bug fix is available from 9.2
6824         open csr_proc_hasa_upd;
6825         loop
6826         --
6827           fetch csr_proc_hasa_upd into l_csr_proc_hasa_upd;
6828           exit when csr_proc_hasa_upd%notfound;
6829         --
6830           l_ass_tbl_cnt := l_ass_tbl_cnt + 1;
6831           g_ass_tbl(l_ass_tbl_cnt).person_id          := l_csr_proc_hasa_upd.person_id;
6832           g_ass_tbl(l_ass_tbl_cnt).assignment_id      := l_csr_proc_hasa_upd.assignment_id;
6833           g_ass_tbl(l_ass_tbl_cnt).effective_date     := l_csr_proc_hasa_upd.effective_date;
6834           g_ass_tbl(l_ass_tbl_cnt).include_or_exclude := l_csr_proc_hasa_upd.include_or_exclude;
6835         --
6836         end loop;
6837         close csr_proc_hasa_upd;
6838       --
6839         if g_debug
6840         and g_detail_debug = 'Y' then
6841           l_assact_step := 5;
6842           hr_utility.set_location(l_proc,50);
6843         end if;
6844       --
6845       else
6846       --
6847         if g_debug
6848         and g_detail_debug = 'Y' then
6849           l_assact_step := 6;
6850           hr_utility.set_location(l_proc,60);
6851         end if;
6852       --
6853         -- #2243411 bulk collect bug fix is available from 9.2
6854         open csr_proc_ass_upd;
6855         loop
6856         --
6857           fetch csr_proc_ass_upd into l_csr_proc_ass_upd;
6858           exit when csr_proc_ass_upd%notfound;
6859         --
6860           l_ass_tbl_cnt := l_ass_tbl_cnt + 1;
6861           g_ass_tbl(l_ass_tbl_cnt).person_id          := l_csr_proc_ass_upd.person_id;
6862           g_ass_tbl(l_ass_tbl_cnt).assignment_id      := l_csr_proc_ass_upd.assignment_id;
6863           g_ass_tbl(l_ass_tbl_cnt).effective_date     := l_csr_proc_ass_upd.effective_date;
6864           g_ass_tbl(l_ass_tbl_cnt).include_or_exclude := null;
6865         --
6866         end loop;
6867         close csr_proc_ass_upd;
6868       --
6869         if g_debug
6870         and g_detail_debug = 'Y' then
6871           l_assact_step := 7;
6872         end if;
6873       --
6874       end if;
6875     --
6876       if g_debug
6877       and g_detail_debug = 'Y' then
6878         l_assact_step := 8;
6879         hr_utility.set_location(l_proc,70);
6880         hr_utility.trace('g_ass_tbl.count : '||to_char(g_ass_tbl.count));
6881         hr_utility.trace('l_ass_tbl_cnt   : '||to_char(l_ass_tbl_cnt));
6882       end if;
6883     --
6884     elsif g_arch_option = 'ADD' then
6885     --
6886       if g_debug
6887       and g_detail_debug = 'Y' then
6888         l_assact_step := 9;
6889       end if;
6890     --
6891       -- #2243411 bulk collect bug fix is available from 9.2
6892       open csr_proc_ass_add;
6893       loop
6894       --
6895         fetch csr_proc_ass_add into l_csr_proc_ass_add;
6896         exit when csr_proc_ass_add%notfound;
6897       --
6898         l_ass_tbl_cnt := l_ass_tbl_cnt + 1;
6899         g_ass_tbl(l_ass_tbl_cnt).person_id          := l_csr_proc_ass_add.person_id;
6900         g_ass_tbl(l_ass_tbl_cnt).assignment_id      := l_csr_proc_ass_add.assignment_id;
6901         g_ass_tbl(l_ass_tbl_cnt).effective_date     := null;
6902         g_ass_tbl(l_ass_tbl_cnt).include_or_exclude := null;
6903       --
6904       end loop;
6905       close csr_proc_ass_add;
6906     --
6907       if g_debug
6908       and g_detail_debug = 'Y' then
6909         l_assact_step := 10;
6910         hr_utility.set_location(l_proc,80);
6911         hr_utility.trace('g_ass_tbl.count : '||to_char(g_ass_tbl.count));
6912         hr_utility.trace('l_ass_tbl_cnt   : '||to_char(l_ass_tbl_cnt));
6913       end if;
6914     --
6915     else
6916     --
6917       if g_debug
6918       and g_detail_debug = 'Y' then
6919         l_assact_step := 11;
6920       end if;
6921     --
6922       -- assignment set is only support for update mode
6923       --if g_assignment_set_id is not null
6924       --and g_ass_set_amendment_type is not null
6925       --and g_ass_set_amendment_type <> 'N' then
6926       ----
6927       --  -- #2243411 bulk collect bug fix is available from 9.2
6928       --  open csr_proc_hasa;
6929       --  loop
6930       --  --
6931       --    fetch csr_proc_hasa into l_csr_proc_hasa;
6932       --    exit when csr_proc_hasa%notfound;
6933       --  --
6934       --    l_ass_tbl_cnt := l_ass_tbl_cnt + 1;
6935       --    g_ass_tbl(l_ass_tbl_cnt).person_id          := l_csr_proc_hasa.person_id;
6936       --    g_ass_tbl(l_ass_tbl_cnt).assignment_id      := l_csr_proc_hasa.assignment_id;
6937       --    g_ass_tbl(l_ass_tbl_cnt).effective_date     := g_effective_date;
6938       --    g_ass_tbl(l_ass_tbl_cnt).include_or_exclude := l_csr_proc_hasa.include_or_exclude;
6939       --  --
6940       --  end loop;
6941       --  close csr_proc_hasa;
6942       ----
6943       --else
6944       --
6945         -- #2243411 bulk collect bug fix is available from 9.2
6946         open csr_proc_ass_new;
6947         loop
6948         --
6949           fetch csr_proc_ass_new into l_csr_proc_ass_new;
6950           exit when csr_proc_ass_new%notfound;
6951         --
6952           l_ass_tbl_cnt := l_ass_tbl_cnt + 1;
6953           g_ass_tbl(l_ass_tbl_cnt).person_id          := l_csr_proc_ass_new.person_id;
6954           g_ass_tbl(l_ass_tbl_cnt).assignment_id      := l_csr_proc_ass_new.assignment_id;
6955           g_ass_tbl(l_ass_tbl_cnt).effective_date     := null;
6956           g_ass_tbl(l_ass_tbl_cnt).include_or_exclude := null;
6957         --
6958         end loop;
6959         close csr_proc_ass_new;
6960       --
6961       --end if;
6962       --
6963       if g_debug
6964       and g_detail_debug = 'Y' then
6965         l_assact_step := 12;
6966         hr_utility.set_location(l_proc,90);
6967         hr_utility.trace('g_ass_tbl.count : '||to_char(g_ass_tbl.count));
6968         hr_utility.trace('l_ass_tbl_cnt   : '||to_char(l_ass_tbl_cnt));
6969       end if;
6970     --
6971     end if;
6972   --
6973     if g_debug
6974     and g_detail_debug = 'Y' then
6975       l_assact_step := 13;
6976       hr_utility.set_location(l_proc,100);
6977       hr_utility.trace('g_ass_tbl.count : '||to_char(g_ass_tbl.count));
6978     end if;
6979   --
6980     if g_ass_tbl.count > 0 then
6981     --
6982       if g_debug
6983       and g_detail_debug = 'Y' then
6984         l_assact_step := 14;
6985       end if;
6986     --
6987       <<loop_ass_tbl>>
6988       for i in 1..g_ass_tbl.count loop
6989       --
6990         if (l_person_id is not null
6991            and l_person_id = g_ass_tbl(i).person_id) then
6992         --
6993           l_person_id     := g_ass_tbl(i).person_id;
6994           l_assignment_id := g_ass_tbl(i).assignment_id;
6995           l_ass_cnt       := l_ass_cnt + 1;
6996         --
6997         else
6998         --
6999           l_person_id     := g_ass_tbl(i).person_id;
7000           l_assignment_id := g_ass_tbl(i).assignment_id;
7001           l_ass_cnt       := 1;
7002         --
7003         end if;
7004       --
7005         -- override if person_id is same (sort by person_id)
7006         g_per_ind_tbl(l_person_id).person_id     := l_person_id;
7007         g_per_ind_tbl(l_person_id).assignment_id := l_assignment_id;
7008         g_per_ind_tbl(l_person_id).ass_cnt       := l_ass_cnt;
7009       --
7010         g_ass_ind_tbl(l_assignment_id).person_id          := g_ass_tbl(i).person_id;
7011         g_ass_ind_tbl(l_assignment_id).assignment_id      := g_ass_tbl(i).assignment_id;
7012         g_ass_ind_tbl(l_assignment_id).effective_date     := g_ass_tbl(i).effective_date;
7013         g_ass_ind_tbl(l_assignment_id).include_or_exclude := g_ass_tbl(i).include_or_exclude;
7014       --
7015       end loop loop_ass_tbl;
7016     --
7017       if g_debug
7018       and g_detail_debug = 'Y' then
7019         l_assact_step := 15;
7020       end if;
7021     --
7022     else
7023     --
7024       hr_utility.trace('g_ass_tbl.count is 0 : '||to_char(g_ass_tbl.count));
7025     --
7026       if g_debug
7027       and g_detail_debug = 'Y' then
7028         l_assact_step := 16;
7029       end if;
7030     --
7031     end if;
7032   --
7033     if g_debug
7034     and g_detail_debug = 'Y' then
7035       l_assact_step := 17;
7036     end if;
7037   --
7038   end if;
7039 --
7040   if g_debug
7041   and g_detail_debug = 'Y' then
7042   --
7043     l_assact_step := 18;
7044     hr_utility.set_location(l_proc,110);
7045     hr_utility.trace('p_start_person_id : '||to_char(p_start_person_id));
7046     hr_utility.trace('p_end_person_id   : '||to_char(p_end_person_id));
7047   --
7048     hr_utility.trace('g_ass_tbl.count     : '||to_char(g_ass_tbl.count));
7049     hr_utility.trace('g_per_ind_tbl.count : '||to_char(g_per_ind_tbl.count));
7050   --
7051     if g_ass_tbl.count > 0 then
7052       hr_utility.trace('g_ass_tbl.first                      : '||to_char(g_ass_tbl.first));
7053       hr_utility.trace('g_ass_tbl.last                       : '||to_char(g_ass_tbl.last));
7054       hr_utility.trace('g_ass_tbl(g_ass_tbl.first).person_id : '||to_char(g_ass_tbl(g_ass_tbl.first).person_id));
7055       hr_utility.trace('g_ass_tbl(g_ass_tbl.last).person_id  : '||to_char(g_ass_tbl(g_ass_tbl.last).person_id));
7056     end if;
7057   --
7058     if g_per_ind_tbl.count > 0 then
7059       hr_utility.trace('g_per_ind_tbl.first                          : '||to_char(g_per_ind_tbl.first));
7060       hr_utility.trace('g_per_ind_tbl.last                           : '||to_char(g_per_ind_tbl.last));
7061       hr_utility.trace('g_per_ind_tbl(g_per_ind_tbl.first).person_id : '||to_char(g_per_ind_tbl(g_per_ind_tbl.first).person_id));
7062       hr_utility.trace('g_per_ind_tbl(g_per_ind_tbl.last).person_id  : '||to_char(g_per_ind_tbl(g_per_ind_tbl.last).person_id));
7063     end if;
7064   --
7065   end if;
7066 --
7067   if (g_per_ind_tbl.count > 0
7068      and g_ass_tbl.count > 0) then
7069   --
7070     if g_debug
7071     and g_detail_debug = 'Y' then
7072       l_assact_step := 19;
7073       hr_utility.set_location(l_proc,120);
7074     end if;
7075   --
7076     <<loop_per_tbl>>
7077     for j in p_start_person_id..p_end_person_id loop
7078     --
7079       l_person_id := null;
7080       l_ass_id_tbl_cnt := 0;
7081       l_ass_id_tbl.delete;
7082     --
7083       -- check if g_per_ind_tbl exist
7084       begin
7085       --
7086         l_person_id := g_per_ind_tbl(j).person_id;
7087       --
7088       exception
7089       when no_data_found then
7090       --
7091         null;
7092       --
7093       end;
7094     --
7095       if g_debug
7096       and g_detail_debug = 'Y' then
7097         l_assact_step := 20;
7098       end if;
7099     --
7100       -- skip out of range
7101       if l_person_id is not null then
7102       --
7103         if g_debug
7104         and g_detail_debug = 'Y' then
7105           l_assact_step := 21;
7106         end if;
7107       --
7108         -- case same person_id
7109         if g_per_ind_tbl(j).ass_cnt > 1 then
7110         --
7111           if g_debug
7112           and g_detail_debug = 'Y' then
7113             l_assact_step := 22;
7114           end if;
7115         --
7116           <<loop_imp_ass_tbl>>
7117           for s in 1..g_ass_tbl.count loop
7118           --
7119             if g_ass_tbl(s).person_id = g_per_ind_tbl(j).person_id then
7120             --
7121               l_ass_id_tbl_cnt := l_ass_id_tbl_cnt + 1;
7122               l_ass_id_tbl(l_ass_id_tbl_cnt) := g_ass_tbl(s).assignment_id;
7123             --
7124               if l_ass_id_tbl_cnt = g_per_ind_tbl(j).ass_cnt then
7125                 exit loop_imp_ass_tbl;
7126               end if;
7127             --
7128             end if;
7129           --
7130           end loop loop_imp_ass_tbl;
7131         --
7132         else
7133         --
7134           if g_debug
7135           and g_detail_debug = 'Y' then
7136             l_assact_step := 23;
7137           end if;
7138         --
7139           l_ass_id_tbl_cnt := l_ass_id_tbl_cnt + 1;
7140           l_ass_id_tbl(l_ass_id_tbl_cnt) := g_per_ind_tbl(j).assignment_id;
7141         --
7142         end if;
7143       --
7144         if g_debug
7145         and g_detail_debug = 'Y' then
7146           l_assact_step := 24;
7147           hr_utility.trace('j person_id        : '||to_char(j));
7148           hr_utility.trace('l_ass_id_tbl_cnt   : '||to_char(l_ass_id_tbl_cnt));
7149           hr_utility.trace('l_ass_id_tbl.count : '||to_char(l_ass_id_tbl.count));
7150         end if;
7151       --
7152         if l_ass_id_tbl.count > 0 then
7153         --
7154           if g_debug
7155           and g_detail_debug = 'Y' then
7156             l_assact_step := 25;
7157           end if;
7158         --
7159           <<loop_proc_ass_tbl>>
7160           for t in 1..l_ass_id_tbl.count loop
7161           --
7162             l_ass_valid := true;
7163           --
7164             if g_ass_set_formula_id is not null
7165             and g_ass_ind_tbl(l_ass_id_tbl(t)).include_or_exclude is null then
7166             --
7167               if g_debug
7168               and g_detail_debug = 'Y' then
7169                 l_assact_step := 26;
7170               end if;
7171             --
7172               l_ass_valid := hr_jp_ast_utility_pkg.formula_validate(
7173                 p_formula_id     => g_ass_set_formula_id,
7174                 p_assignment_id  => g_ass_ind_tbl(l_ass_id_tbl(t)).assignment_id,
7175                 p_effective_date => g_ass_ind_tbl(l_ass_id_tbl(t)).effective_date,
7176                 p_populate_fs    => true);
7177             --
7178             end if;
7179           --
7180             if g_debug
7181             and g_detail_debug = 'Y' then
7182               l_assact_step := 27;
7183             end if;
7184           --
7185             -- create assact for each archive process in s1ame year
7186             -- to solve issue that assact is required for new/end assignment even if
7187             -- assignment does not exist at the process time, which is previous design,
7188             -- create assact for one year
7189             --
7190             if l_ass_valid then
7191             --
7192               if g_debug
7193               and g_detail_debug = 'Y' then
7194                 l_assact_step := 28;
7195               end if;
7196             --
7197               select pay_assignment_actions_s.nextval
7198               into   l_assignment_action_id
7199               from   dual;
7200             --
7201               if g_debug
7202               and g_detail_debug = 'Y' then
7203                 l_assact_step := 29;
7204               end if;
7205             --
7206               hr_nonrun_asact.insact(
7207                 lockingactid => l_assignment_action_id,
7208                 assignid     => g_ass_ind_tbl(l_ass_id_tbl(t)).assignment_id,
7209                 pactid       => p_payroll_action_id,
7210                 chunk        => p_chunk_number,
7211                 greid        => null);
7212             --
7213               if g_debug
7214               and g_detail_debug = 'Y' then
7215                 l_assact_step := 30;
7216                 hr_utility.set_location(l_proc,130);
7217                 hr_utility.trace('person_id     : '||to_char(g_ass_ind_tbl(l_ass_id_tbl(t)).person_id));
7218                 hr_utility.trace('assignment_id : '||to_char(g_ass_ind_tbl(l_ass_id_tbl(t)).assignment_id));
7219               end if;
7220             --
7221             end if;
7222           --
7223           end loop loop_proc_ass_tbl;
7224         --
7225         else
7226         --
7227           if g_debug
7228           and g_detail_debug = 'Y' then
7229             l_assact_step := 31;
7230           end if;
7231         --
7232           hr_utility.trace('l_ass_id_tbl.count is 0 : '||to_char(l_ass_id_tbl.count));
7233         --
7234         end if;
7235       --
7236         if g_debug
7237         and g_detail_debug = 'Y' then
7238           l_assact_step := 32;
7239         end if;
7240       --
7241       end if;
7242     --
7243       if g_debug
7244       and g_detail_debug = 'Y' then
7245         l_assact_step := 33;
7246       end if;
7247     --
7248     end loop loop_per_tbl;
7249   --
7250     if g_debug
7251     and g_detail_debug = 'Y' then
7252       l_assact_step := 34;
7253     end if;
7254   --
7255   else
7256   --
7257     if g_debug
7258     and g_detail_debug = 'Y' then
7259       l_assact_step := 35;
7260       hr_utility.set_location(l_proc,140);
7261     end if;
7262   --
7263     hr_utility.trace('g_per_ind_tbl.count is 0 : '||to_char(g_per_ind_tbl.count));
7264     hr_utility.trace('g_ass_tbl.count is 0     : '||to_char(g_ass_tbl.count));
7265   --
7266   end if;
7267 --
7268   if g_debug
7269   and g_detail_debug = 'Y' then
7270     l_assact_step := 1000;
7271     hr_utility.trace('assact_step : '||to_char(l_assact_step));
7272     hr_utility.set_location(l_proc,1000);
7273   end if;
7274 --
7275 exception
7276 when others then
7277 --
7278   l_error_code := sqlcode;
7279   l_error_mesg := substrb(sqlerrm,1,100);
7280 --
7281   hr_utility.trace('assignment_action_creation error : '||l_error_code||' : '||l_error_mesg);
7282 --
7283   if g_debug
7284   and g_detail_debug = 'Y' then
7285     hr_utility.trace('assact_step : '||to_char(l_assact_step));
7286   end if;
7287 --
7288   raise;
7289 --
7290 end assignment_action_creation;
7291 --
7292 -- -------------------------------------------------------------------------
7293 -- log_wng_tbl
7294 -- -------------------------------------------------------------------------
7295 procedure log_wng_tbl
7296 is
7297 --
7298   l_proc varchar2(80) := c_package||'log_wng_tbl';
7299 --
7300 begin
7301 --
7302   if g_debug
7303   and g_detail_debug = 'Y' then
7304     hr_utility.set_location(l_proc,0);
7305   end if;
7306 --
7307   if g_wng_tbl.count > 0
7308   and g_wng_tbl_cnt > 0 then
7309   --
7310     for i in 0..g_wng_tbl_cnt - 1 loop
7311     --
7312       if i = 0 then
7313       --
7314         fnd_file.put_line(fnd_file.log,'-----------------------------------------------------------------------------');
7315         fnd_file.put_line(fnd_file.log,'error / warning');
7316         fnd_file.put_line(fnd_file.log,'-----------------------------------------------------------------------------');
7317       --
7318       end if;
7319     --
7320       fnd_file.put_line(fnd_file.log,g_wng_tbl(i).employee_number||' ('||to_char(g_wng_tbl(i).assignment_id)||') : '||g_wng_tbl(i).message_text);
7321     --
7322     end loop;
7323   --
7324   end if;
7325 --
7326   if g_debug
7327   and g_detail_debug = 'Y' then
7328     hr_utility.set_location(l_proc,1000);
7329   end if;
7330 --
7331 end log_wng_tbl;
7332 --
7333 -- -------------------------------------------------------------------------
7334 -- archinit
7335 -- -------------------------------------------------------------------------
7336 procedure archinit(
7337   p_payroll_action_id in number)
7338 is
7339 --
7340   l_proc varchar2(80) := c_package||'archinit';
7341 --
7342   l_assignment_id number;
7343 --
7344   l_data_tbl t_data_tbl;
7345 --
7346   l_prev_jobs pay_jp_wic_pkg.t_prev_jobs;
7347 --
7348   l_data_tbl_cnt number := 0;
7349   l_bon_tbl_cnt number := 0;
7350   l_yea_tbl_cnt number := 0;
7351 --
7352   l_sal_assignment_action_id number;
7353   l_sal_date_earned date;
7354   l_bon_assignment_action_id number;
7355   l_yea_assignment_action_id number;
7356 --
7357   l_nres_flag_eev varchar2(60);
7358 --
7359   l_data_sal_act_mth1_tbl t_number_tbl;
7360   l_data_sal_act_mth2_tbl t_number_tbl;
7361   l_data_sal_act_mth3_tbl t_number_tbl;
7362   l_data_sal_act_mth4_tbl t_number_tbl;
7363   l_data_sal_act_mth5_tbl t_number_tbl;
7364   l_data_sal_act_mth6_tbl t_number_tbl;
7365   l_data_sal_act_mth7_tbl t_number_tbl;
7366   l_data_sal_act_mth8_tbl t_number_tbl;
7367   l_data_sal_act_mth9_tbl t_number_tbl;
7368   l_data_sal_act_mth10_tbl t_number_tbl;
7369   l_data_sal_act_mth11_tbl t_number_tbl;
7370   l_data_sal_act_mth12_tbl t_number_tbl;
7371 --
7372   l_mth1_tbl_cnt number;
7373   l_mth2_tbl_cnt number;
7374   l_mth3_tbl_cnt number;
7375   l_mth4_tbl_cnt number;
7376   l_mth5_tbl_cnt number;
7377   l_mth6_tbl_cnt number;
7378   l_mth7_tbl_cnt number;
7379   l_mth8_tbl_cnt number;
7380   l_mth9_tbl_cnt number;
7381   l_mth10_tbl_cnt number;
7382   l_mth11_tbl_cnt number;
7383   l_mth12_tbl_cnt number;
7384 --
7385   cursor csr_data_ass_new
7386   is
7387   select /*+ ORDERED */
7388          v.person_id,
7389          v.assignment_id,
7390          v.organization_id,
7391          v.job_id,
7392          v.payroll_id,
7393          v.location_id,
7394          v.arch_assignment_action_id,
7395          v.proc_assignment_action_id,
7396          v.action_sequence,
7397          v.effective_date,
7398          v.date_earned,
7399          v.proc_type,
7400          v.dpnt_ref_type,
7401          v.employee_number,
7402          v.last_name_kana,
7403          v.first_name_kana,
7404          v.last_name,
7405          v.first_name,
7406          v.full_name_kana,
7407          v.full_name,
7408          nvl(padr.address_id,padc.address_id) address_id,
7409          decode(padr.address_id,null,padc.postal_code,padr.postal_code) postal_code,
7410          decode(padr.address_id,null,padc.town_or_city,padr.town_or_city) district_code,
7411          decode(padr.address_id,null,
7412            padc.address_line1||padc.address_line2||padc.address_line3,
7413            padr.address_line1||padr.address_line2||padr.address_line3) address,
7414          decode(padr.address_id,null,
7415            padc.region_1||padc.region_2||padc.region_3,
7416            padr.region_1||padr.region_2||padr.region_3) address_kana,
7417          decode(decode(padr.address_id,null,padc.country,padr.country),'JP','0','1') address_jp,
7418          decode(padr.address_id,null,
7419            padc.telephone_number_1,padr.telephone_number_1) phone1,
7420          decode(padr.address_id,null,
7421            padc.telephone_number_2,padr.telephone_number_2) phone2,
7422          v.hire_date,
7423          v.termination_date,
7424          v.leaving_reason,
7425          v.sex,
7426          v.birth_date,
7427          hou.name organization_name,
7428          pjb.name job_name,
7429          v.payroll_name,
7430          hlc.location_code
7431   from   (select /*+ ORDERED */
7432                  pp.person_id,
7433                  proc_v.assignment_id,
7434                  pa.organization_id,
7435                  pa.job_id,
7436                  proc_v.payroll_id,
7437                  pa.location_id,
7438                  proc_v.arch_assignment_action_id,
7439                  proc_v.proc_assignment_action_id,
7440                  proc_v.action_sequence,
7441                  proc_v.effective_date,
7442                  proc_v.date_earned,
7443                  proc_v.proc_type,
7444                  nvl(nvl(ppy.prl_information1,g_bg_itax_dpnt_ref_type),'CTR_EE') dpnt_ref_type,
7445                  pp.employee_number,
7446                  pp.last_name last_name_kana,
7447                  pp.first_name first_name_kana,
7448                  pp.per_information18 last_name,
7449                  pp.per_information19 first_name,
7450                  pp.last_name||' '||pp.first_name full_name_kana,
7451                  pp.per_information18||' '||pp.per_information19 full_name,
7452                  ppos.date_start hire_date,
7453                  ppos.actual_termination_date termination_date,
7454                  ppos.leaving_reason,
7455                  pp.sex,
7456                  pp.date_of_birth birth_date,
7457                  ppy.payroll_name
7458           from   (select /*+ ORDERED
7459                              USE_NL(PAA, PPA)
7460                              INDEX(PAA PAY_ASSIGNMENT_ACTIONS_N1)
7461                              INDEX(PPA PAY_PAYROLL_ACTIONS_PK) */
7462                          paa_arch.assignment_action_id arch_assignment_action_id,
7463                          paa.assignment_id,
7464                          paa.assignment_action_id proc_assignment_action_id,
7465                          paa.action_sequence,
7466                          ppa.effective_date,
7467                          ppa.date_earned,
7468                          ppa.payroll_id,
7469                          decode(nvl(ppa.element_type_id,-1),
7470                            c_yea_itx_elm_id,'YEA',
7471                            c_rey_itx_elm_id,'REY',
7472                            -1,decode(nvl(ppa.element_set_id,-1),
7473                                 c_sal_ele_set_id,'SAL',
7474                                 c_bon_ele_set_id,'BON',
7475                                 c_spb_ele_set_id,'SPB',
7476                                 c_yea_ele_set_id,'YEA',
7477                                 c_rey_ele_set_id,'REY',
7478                                 c_sal_cust_ele_set_id,'SAL',
7479                                 c_bon_cust_ele_set_id,'BON',
7480                                 c_spb_cust_ele_set_id,'SPB',
7481                                 c_yea_cust_ele_set_id,'YEA',
7482                                 c_rey_cust_ele_set_id,'REY',
7483                                 -1,pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa.assignment_action_id,ppa.action_type),null),null) proc_type,
7484                          ppa.element_set_id
7485                   from   pay_payroll_actions ppa_arch,
7486                          pay_assignment_actions paa_arch,
7487                          pay_assignment_actions paa,
7488                          pay_payroll_actions ppa,
7489                          pay_link_input_values_f pliv_itax_org,
7490                          pay_link_input_values_f pliv_itax_type,
7491                          pay_element_entries_f pee_itax_org,
7492                          pay_element_entries_f pee_itax_type,
7493                          pay_element_entry_values_f peev_itax_org,
7494                          pay_element_entry_values_f peev_itax_type
7495                   where  ppa_arch.payroll_action_id = p_payroll_action_id
7496                   and    paa_arch.payroll_action_id = ppa_arch.payroll_action_id
7497                   and    paa.assignment_id = paa_arch.assignment_id
7498                   and    paa.action_status = 'C'
7499                   and    ppa.payroll_action_id = paa.payroll_action_id
7500                   and    ppa.action_status = 'C'
7501                   and    ppa.action_type in ('R','Q','B','I')
7502                   and    decode(nvl(ppa.element_set_id,-1),
7503                            c_yea_ele_set_id,ppa.date_earned,
7504                            c_rey_ele_set_id,ppa.date_earned,ppa.effective_date)
7505                          between g_effective_soy and g_effective_eom
7506                   and    nvl(ppa.element_type_id,c_yea_itx_elm_id) in (c_yea_itx_elm_id, c_rey_itx_elm_id)
7507                   and    decode(nvl(ppa.element_type_id,-1),-1,nvl(ppa.element_set_id,-1),c_sal_ele_set_id) in (
7508                            c_sal_ele_set_id,
7509                            c_bon_ele_set_id,
7510                            c_spb_ele_set_id,
7511                            c_yea_ele_set_id,
7512                            c_rey_ele_set_id,
7513                            c_sal_cust_ele_set_id,
7514                            c_bon_cust_ele_set_id,
7515                            c_spb_cust_ele_set_id,
7516                            c_yea_cust_ele_set_id,
7517                            c_rey_cust_ele_set_id,
7518                            -1)
7519                   and    decode(nvl(ppa.element_type_id,-1),-1,decode(nvl(ppa.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa.assignment_action_id,ppa.action_type),'N'),'Y'),'Y') <> 'N'
7520                   and not exists(
7521                     select /*+ ORDERED */
7522                            null
7523                     from   pay_action_interlocks pai,
7524                            pay_assignment_actions paav,
7525                            pay_payroll_actions ppav
7526                     where  pai.locked_action_id = paa.assignment_action_id
7527                     and    paav.assignment_action_id = pai.locking_action_id
7528                     and    ppav.payroll_action_id = paav.payroll_action_id
7529                     and    ppav.action_type = 'V')
7530                   and    pliv_itax_org.input_value_id = c_itx_org_iv_id
7531                   and    ppa.effective_date
7532                          between pliv_itax_org.effective_start_date and pliv_itax_org.effective_end_date
7533                   and    pliv_itax_type.input_value_id = c_itx_type_iv_id
7534                   and    ppa.effective_date
7535                          between pliv_itax_type.effective_start_date and pliv_itax_type.effective_end_date
7536                   and    pee_itax_org.assignment_id = paa.assignment_id
7537                   and    pee_itax_org.element_link_id = pliv_itax_org.element_link_id
7538                   and    ppa.effective_date
7539                          between pee_itax_org.effective_start_date and pee_itax_org.effective_end_date
7540                   and    pee_itax_type.assignment_id = paa.assignment_id
7541                   and    pee_itax_type.element_link_id = pliv_itax_type.element_link_id
7542                   and    ppa.effective_date
7543                          between pee_itax_type.effective_start_date and pee_itax_type.effective_end_date
7544                   and    peev_itax_org.element_entry_id = pee_itax_org.element_entry_id
7545                   and    peev_itax_org.input_value_id = pliv_itax_org.input_value_id
7546                   and    peev_itax_org.effective_start_date = pee_itax_org.effective_start_date
7547                   and    peev_itax_org.effective_end_date = pee_itax_org.effective_end_date
7548                   and    fnd_number.canonical_to_number(decode(peev_itax_org.input_value_id,c_itx_org_iv_id,peev_itax_org.screen_entry_value,null)) = g_itax_organization_id
7549                   and    peev_itax_type.element_entry_id = pee_itax_type.element_entry_id
7550                   and    peev_itax_type.input_value_id = pliv_itax_type.input_value_id
7551                   and    peev_itax_type.effective_start_date = pee_itax_type.effective_start_date
7552                   and    peev_itax_type.effective_end_date = pee_itax_type.effective_end_date
7553                   and    peev_itax_type.screen_entry_value <> 'E'
7554                /* --this part was removed for redundant validation
7555                   --and not exists(
7556                   --  select /*+ ORDERED */
7557                   --         null
7558                   --  from   pay_payroll_actions ppa2,
7559                   --         pay_assignment_actions paa2,
7560                   --         pay_link_input_values_f pliv_itax_org2,
7561                   --         pay_link_input_values_f pliv_itax_type2,
7562                   --         pay_element_entries_f pee_itax_org2,
7563                   --         pay_element_entries_f pee_itax_type2,
7564                   --         pay_element_entry_values_f peev_itax_org2,
7565                   --         pay_element_entry_values_f peev_itax_type2
7566                   --  where  ppa2.action_status = 'C'
7567                   --  and    ppa2.action_type in ('R','Q')
7568                   --  and    ppa2.effective_date
7569                   --         between g_effective_som and g_effective_eom
7570                   --  and    ppa2.payroll_id = ppa.payroll_id
7571                   --  and    trunc(ppa2.effective_date,'MM') = trunc(ppa.effective_date,'MM')
7572                   --  and    nvl(ppa2.element_set_id,-1) = nvl(ppa.element_set_id,-1)
7573                   --  and    nvl(ppa2.element_set_id,-1) in (
7574                   --           c_sal_ele_set_id,
7575                   --           c_sal_cust_ele_set_id,
7576                   --           -1)
7577                   --  and    decode(nvl(ppa2.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa2.assignment_action_id,ppa2.action_type),'N'),'SAL') = 'SAL'
7578                   --  and    paa2.payroll_action_id = ppa2.payroll_action_id
7579                   --  and    paa2.assignment_id = paa.assignment_id
7580                   --  and    paa2.action_status = 'C'
7581                   --  and not exists(
7582                   --    select /*+ ORDERED */
7583                   --           null
7584                   --    from   pay_action_interlocks pai2,
7585                   --           pay_assignment_actions paav2,
7586                   --           pay_payroll_actions ppav2
7587                   --    where  pai2.locked_action_id = paa2.assignment_action_id
7588                   --    and    paav2.assignment_action_id = pai2.locking_action_id
7589                   --    and    ppav2.payroll_action_id = paav2.payroll_action_id
7590                   --    and    ppav2.action_type = 'V')
7591                   --  and    pliv_itax_org2.input_value_id = c_itx_org_iv_id
7592                   --  and    ppa2.effective_date
7593                   --         between pliv_itax_org2.effective_start_date and pliv_itax_org2.effective_end_date
7594                   --  and    pliv_itax_type2.input_value_id = c_itx_type_iv_id
7595                   --  and    ppa2.effective_date
7596                   --         between pliv_itax_type2.effective_start_date and pliv_itax_type2.effective_end_date
7597                   --  and    pee_itax_org2.assignment_id = paa2.assignment_id
7598                   --  and    pee_itax_org2.element_link_id = pliv_itax_org2.element_link_id
7599                   --  and    ppa2.effective_date
7600                   --         between pee_itax_org2.effective_start_date and pee_itax_org2.effective_end_date
7601                   --  and    pee_itax_type2.assignment_id = paa2.assignment_id
7602                   --  and    pee_itax_type2.element_link_id = pliv_itax_type2.element_link_id
7603                   --  and    ppa2.effective_date
7604                   --         between pee_itax_type2.effective_start_date and pee_itax_type2.effective_end_date
7605                   --  and    peev_itax_org2.element_entry_id = pee_itax_org2.element_entry_id
7606                   --  and    peev_itax_org2.input_value_id = pliv_itax_org2.input_value_id
7607                   --  and    peev_itax_org2.effective_start_date = pee_itax_org2.effective_start_date
7608                   --  and    peev_itax_org2.effective_end_date = pee_itax_org2.effective_end_date
7609                   --  and    fnd_number.canonical_to_number(decode(peev_itax_org2.input_value_id,c_itx_org_iv_id,peev_itax_org2.screen_entry_value,null)) = g_itax_organization_id
7610                   --  and    peev_itax_type2.element_entry_id = pee_itax_type2.element_entry_id
7611                   --  and    peev_itax_type2.input_value_id = pliv_itax_type2.input_value_id
7612                   --  and    peev_itax_type2.effective_start_date = pee_itax_type2.effective_start_date
7613                   --  and    peev_itax_type2.effective_end_date = pee_itax_type2.effective_end_date
7614                   --  and    peev_itax_type2.screen_entry_value <> 'E'
7615                   --  and    paa2.action_sequence > paa.action_sequence) */
7616                  ) proc_v,
7617                  per_all_assignments_f pa,
7618                  per_all_people_f pp,
7619                  per_periods_of_service ppos,
7620                  pay_all_payrolls_f ppy
7621           where  pa.assignment_id = proc_v.assignment_id
7622           and    proc_v.effective_date
7623                  between pa.effective_start_date and pa.effective_end_date
7624           and    pp.person_id = pa.person_id
7625           and    proc_v.effective_date
7626                  between pp.effective_start_date and pp.effective_end_date
7627           and    ppos.period_of_service_id = pa.period_of_service_id
7628           and    ppy.payroll_id = proc_v.payroll_id
7629           and    proc_v.effective_date
7630                  between ppy.effective_start_date and ppy.effective_end_date) v,
7631          per_jobs_vl pjb,
7632          hr_all_organization_units_vl hou,
7633          hr_locations_all_vl hlc,
7634          per_addresses padr,
7635          per_addresses padc
7636   where  pjb.job_id (+) = v.job_id
7637   and    v.effective_date
7638          between pjb.date_from (+) and nvl(pjb.date_to(+), hr_api.g_eot)
7639   and    hou.organization_id (+) = v.organization_id
7640   and    v.effective_date
7641          between hou.date_from (+) and nvl(hou.date_to(+), hr_api.g_eot)
7642   and    hlc.location_id (+) = v.location_id
7643   and    padr.person_id (+) = v.person_id
7644   and    padr.address_type (+) = 'JP_R'
7645   and    nvl(v.termination_date, v.effective_date)
7646          between padr.date_from (+) and nvl(padr.date_to(+), hr_api.g_eot)
7647   and    padc.person_id (+) = v.person_id
7648   and    padc.address_type (+) = 'JP_C'
7649   and    nvl(v.termination_date, v.effective_date)
7650          between padc.date_from (+) and nvl(padc.date_to(+), hr_api.g_eot)
7651   order by
7652     v.assignment_id,
7653     v.action_sequence;
7654     -- balance adjustment is not sequenced process but no comparison key so used as fuzzy sequence
7655 --
7656   cursor csr_data_ass_add
7657   is
7658   select /*+ ORDERED */
7659          proc_v.assignment_id,
7660          proc_v.payroll_id,
7661          proc_v.arch_assignment_action_id,
7662          proc_v.proc_assignment_action_id,
7663          proc_v.action_sequence,
7664          proc_v.effective_date,
7665          proc_v.date_earned,
7666          proc_v.proc_type,
7667          nvl(nvl(ppy.prl_information1,g_bg_itax_dpnt_ref_type),'CTR_EE') dpnt_ref_type,
7668          proc_v.larch_assignment_action_id
7669   from   (select /*+ ORDERED
7670                      USE_NL(PAA, PPA)
7671                      INDEX(PAA PAY_ASSIGNMENT_ACTIONS_N1)
7672                      INDEX(PPA PAY_PAYROLL_ACTIONS_PK) */
7673                  larch_v.arch_assignment_action_id,
7674                  paa.assignment_id,
7675                  ppa.payroll_id,
7676                  paa.assignment_action_id proc_assignment_action_id,
7677                  paa.action_sequence,
7678                  ppa.effective_date,
7679                  ppa.date_earned,
7680                  decode(nvl(ppa.element_type_id,-1),
7681                    c_yea_itx_elm_id,'YEA',
7682                    c_rey_itx_elm_id,'REY',
7683                    -1,decode(nvl(ppa.element_set_id,-1),
7684                         c_sal_ele_set_id,'SAL',
7685                         c_bon_ele_set_id,'BON',
7686                         c_spb_ele_set_id,'SPB',
7687                         c_yea_ele_set_id,'YEA',
7688                         c_rey_ele_set_id,'REY',
7689                         c_sal_cust_ele_set_id,'SAL',
7690                         c_bon_cust_ele_set_id,'BON',
7691                         c_spb_cust_ele_set_id,'SPB',
7692                         c_yea_cust_ele_set_id,'YEA',
7693                         c_rey_cust_ele_set_id,'REY',
7694                         -1,pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa.assignment_action_id,ppa.action_type),null),null) proc_type,
7695                  larch_v.larch_assignment_action_id larch_assignment_action_id,
7696                  ppa.element_set_id
7697           from   (select /*+ ORDERED */
7698                          paa_arch.assignment_action_id arch_assignment_action_id,
7699                          paa_arch.assignment_id,
7700                          pjia.assignment_action_id larch_assignment_action_id,
7701                          lppa.effective_date lproc_effective_date
7702                   from   pay_payroll_actions ppa_arch,
7703                          pay_assignment_actions paa_arch,
7704                          pay_jp_itwb_assact_v pjia,
7705                          pay_assignment_actions paa_o,
7706                          pay_assignment_actions lpaa,
7707                          pay_payroll_actions lppa
7708                   where  ppa_arch.payroll_action_id = p_payroll_action_id
7709                   and    paa_arch.payroll_action_id = ppa_arch.payroll_action_id
7710                   and    pjia.assignment_id (+) = paa_arch.assignment_id
7711                   and    pjia.effective_date (+)
7712                          between g_effective_soy and g_effective_som - 1
7713                   and    paa_o.assignment_action_id (+) = pjia.assignment_action_id
7714                   and    lpaa.assignment_action_id (+) = pjia.proc_assignment_action_id
7715                   and    lppa.payroll_action_id (+) = lpaa.payroll_action_id
7716                   and    not exists(
7717                            select /*+ ORDERED */
7718                                   null
7719                            from   pay_jp_itwb_assact_v pjia2,
7720                                   pay_assignment_actions paa_o2
7721                            where  pjia2.assignment_id = pjia.assignment_id
7722                            and    pjia2.effective_date
7723                                   between g_effective_soy and g_effective_som - 1
7724                            and    paa_o2.assignment_action_id = pjia2.assignment_action_id
7725                            and    paa_o2.action_sequence > paa_o.action_sequence)) larch_v,
7726                  pay_assignment_actions paa,
7727                  pay_payroll_actions ppa,
7728                  pay_link_input_values_f pliv_itax_org,
7729                  pay_link_input_values_f pliv_itax_type,
7730                  pay_element_entries_f pee_itax_org,
7731                  pay_element_entries_f pee_itax_type,
7732                  pay_element_entry_values_f peev_itax_org,
7733                  pay_element_entry_values_f peev_itax_type
7734           where  paa.assignment_id = larch_v.assignment_id
7735           and    paa.action_status = 'C'
7736           and    ppa.payroll_action_id = paa.payroll_action_id
7737           and    ppa.action_status = 'C'
7738           and    ppa.action_type in ('R','Q','B','I')
7739           and    decode(nvl(ppa.element_set_id,-1),
7740                    c_yea_ele_set_id,ppa.date_earned,
7741                    c_rey_ele_set_id,ppa.date_earned,ppa.effective_date)
7742                  between decode(nvl(larch_v.larch_assignment_action_id,-1),
7743                            -1,g_effective_soy,
7744                            add_months(trunc(larch_v.lproc_effective_date,'MM'),1)) and g_effective_eom
7745           and    nvl(ppa.element_type_id,c_yea_itx_elm_id) in (c_yea_itx_elm_id, c_rey_itx_elm_id)
7746           and    decode(nvl(ppa.element_type_id,-1),-1,nvl(ppa.element_set_id,-1),c_sal_ele_set_id) in (
7747                    c_sal_ele_set_id,
7748                    c_bon_ele_set_id,
7749                    c_spb_ele_set_id,
7750                    c_yea_ele_set_id,
7751                    c_rey_ele_set_id,
7752                    c_sal_cust_ele_set_id,
7753                    c_bon_cust_ele_set_id,
7754                    c_spb_cust_ele_set_id,
7755                    c_yea_cust_ele_set_id,
7756                    c_rey_cust_ele_set_id,
7757                    -1)
7758           and    decode(nvl(ppa.element_type_id,-1),-1,decode(nvl(ppa.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa.assignment_action_id,ppa.action_type),'N'),'Y'),'Y') <> 'N'
7759           and not exists(
7760             select /*+ ORDERED */
7761                    null
7762             from   pay_action_interlocks pai,
7763                    pay_assignment_actions paav,
7764                    pay_payroll_actions ppav
7765             where  pai.locked_action_id = paa.assignment_action_id
7766             and    paav.assignment_action_id = pai.locking_action_id
7767             and    ppav.payroll_action_id = paav.payroll_action_id
7768             and    ppav.action_type = 'V')
7769           and    pliv_itax_org.input_value_id = c_itx_org_iv_id
7770           and    ppa.effective_date
7771                  between pliv_itax_org.effective_start_date and pliv_itax_org.effective_end_date
7772           and    pliv_itax_type.input_value_id = c_itx_type_iv_id
7773           and    ppa.effective_date
7774                  between pliv_itax_type.effective_start_date and pliv_itax_type.effective_end_date
7775           and    pee_itax_org.assignment_id = paa.assignment_id
7776           and    pee_itax_org.element_link_id = pliv_itax_org.element_link_id
7777           and    ppa.effective_date
7778                  between pee_itax_org.effective_start_date and pee_itax_org.effective_end_date
7779           and    pee_itax_type.assignment_id = paa.assignment_id
7780           and    pee_itax_type.element_link_id = pliv_itax_type.element_link_id
7781           and    ppa.effective_date
7782                  between pee_itax_type.effective_start_date and pee_itax_type.effective_end_date
7783           and    peev_itax_org.element_entry_id = pee_itax_org.element_entry_id
7784           and    peev_itax_org.input_value_id = pliv_itax_org.input_value_id
7785           and    peev_itax_org.effective_start_date = pee_itax_org.effective_start_date
7786           and    peev_itax_org.effective_end_date = pee_itax_org.effective_end_date
7787           and    fnd_number.canonical_to_number(decode(peev_itax_org.input_value_id,c_itx_org_iv_id,peev_itax_org.screen_entry_value,null)) = g_itax_organization_id
7788           and    peev_itax_type.element_entry_id = pee_itax_type.element_entry_id
7789           and    peev_itax_type.input_value_id = pliv_itax_type.input_value_id
7790           and    peev_itax_type.effective_start_date = pee_itax_type.effective_start_date
7791           and    peev_itax_type.effective_end_date = pee_itax_type.effective_end_date
7792           and    peev_itax_type.screen_entry_value <> 'E'
7793        /* --this part was removed for redundant validation
7794           --and not exists(
7795           --  select /*+ ORDERED */
7796           --         null
7797           --  from   pay_assignment_actions paa2,
7798           --         pay_payroll_actions ppa2,
7799           --         pay_link_input_values_f pliv_itax_org2,
7800           --         pay_link_input_values_f pliv_itax_type2,
7801           --         pay_element_entries_f pee_itax_org2,
7802           --         pay_element_entries_f pee_itax_type2,
7803           --         pay_element_entry_values_f peev_itax_org2,
7804           --         pay_element_entry_values_f peev_itax_type2
7805           --  where  paa2.assignment_id = paa.assignment_id
7806           --  and    paa2.action_status = 'C'
7807           --  and    ppa2.payroll_action_id = paa2.payroll_action_id
7808           --  and    ppa2.action_status = 'C'
7809           --  and    ppa2.action_type in ('R','Q')
7810           --  and    ppa2.effective_date
7811           --         between g_effective_som and g_effective_eom
7812           --  and    ppa2.payroll_id = ppa.payroll_id
7813           --  and    trunc(ppa2.effective_date,'MM') = trunc(ppa.effective_date,'MM')
7814           --  and    nvl(ppa2.element_set_id,-1) = nvl(ppa.element_set_id,-1)
7815           --  and    nvl(ppa2.element_set_id,-1) in (
7816           --           c_sal_ele_set_id,
7817           --           c_sal_cust_ele_set_id,
7818           --           -1)
7819           --  and    decode(nvl(ppa2.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa2.assignment_action_id,ppa2.action_type),'N'),'SAL') = 'SAL'
7820           --  and not exists(
7821           --    select /*+ ORDERED */
7822           --           null
7823           --    from   pay_action_interlocks pai2,
7824           --           pay_assignment_actions paav2,
7825           --           pay_payroll_actions ppav2
7826           --    where  pai2.locked_action_id = paa2.assignment_action_id
7827           --    and    paav2.assignment_action_id = pai2.locking_action_id
7828           --    and    ppav2.payroll_action_id = paav2.payroll_action_id
7829           --    and    ppav2.action_type = 'V')
7830           --  and    pliv_itax_org2.input_value_id = c_itx_org_iv_id
7831           --  and    ppa2.effective_date
7832           --         between pliv_itax_org2.effective_start_date and pliv_itax_org2.effective_end_date
7833           --  and    pliv_itax_type2.input_value_id = c_itx_type_iv_id
7834           --  and    ppa2.effective_date
7835           --         between pliv_itax_type2.effective_start_date and pliv_itax_type2.effective_end_date
7836           --  and    pee_itax_org2.assignment_id = paa2.assignment_id
7837           --  and    pee_itax_org2.element_link_id = pliv_itax_org2.element_link_id
7838           --  and    ppa2.effective_date
7839           --         between pee_itax_org2.effective_start_date and pee_itax_org2.effective_end_date
7840           --  and    pee_itax_type2.assignment_id = paa2.assignment_id
7841           --  and    pee_itax_type2.element_link_id = pliv_itax_type2.element_link_id
7842           --  and    ppa2.effective_date
7843           --         between pee_itax_type2.effective_start_date and pee_itax_type2.effective_end_date
7844           --  and    peev_itax_org2.element_entry_id = pee_itax_org2.element_entry_id
7845           --  and    peev_itax_org2.input_value_id = pliv_itax_org2.input_value_id
7846           --  and    peev_itax_org2.effective_start_date = pee_itax_org2.effective_start_date
7847           --  and    peev_itax_org2.effective_end_date = pee_itax_org2.effective_end_date
7848           --  and    fnd_number.canonical_to_number(decode(peev_itax_org2.input_value_id,c_itx_org_iv_id,peev_itax_org2.screen_entry_value,null)) = g_itax_organization_id
7849           --  and    peev_itax_type2.element_entry_id = pee_itax_type2.element_entry_id
7850           --  and    peev_itax_type2.input_value_id = pliv_itax_type2.input_value_id
7851           --  and    peev_itax_type2.effective_start_date = pee_itax_type2.effective_start_date
7852           --  and    peev_itax_type2.effective_end_date = pee_itax_type2.effective_end_date
7853           --  and    peev_itax_type2.screen_entry_value <> 'E'
7854           --  and    paa2.action_sequence > paa.action_sequence) */
7855          ) proc_v,
7856          pay_all_payrolls_f ppy
7857   where  ppy.payroll_id = proc_v.payroll_id
7858   and    proc_v.effective_date
7859          between ppy.effective_start_date and ppy.effective_end_date
7860   order by
7861     proc_v.assignment_id,
7862     proc_v.action_sequence;
7863     -- balance adjustment is not sequenced process but no comparison key so used as fuzzy sequence
7864 --
7865   cursor csr_data_ass_upd
7866   is
7867   select /*+ ORDERED */
7868          v.person_id,
7869          v.assignment_id,
7870          v.organization_id,
7871          v.job_id,
7872          v.payroll_id,
7873          v.location_id,
7874          v.arch_assignment_action_id,
7875          v.proc_assignment_action_id,
7876          v.larch_assignment_action_id,
7877          v.lproc_assignment_action_date,
7878          v.action_sequence,
7879          v.effective_date,
7880          v.date_earned,
7881          v.proc_type,
7882          v.dpnt_ref_type,
7883          v.employee_number,
7884          v.last_name_kana,
7885          v.first_name_kana,
7886          v.last_name,
7887          v.first_name,
7888          v.full_name_kana,
7889          v.full_name,
7890          nvl(padr.address_id,padc.address_id) address_id,
7891          decode(padr.address_id,null,padc.postal_code,padr.postal_code) postal_code,
7892          decode(padr.address_id,null,padc.town_or_city,padr.town_or_city) district_code,
7893          decode(padr.address_id,null,
7894            padc.address_line1||padc.address_line2||padc.address_line3,
7895            padr.address_line1||padr.address_line2||padr.address_line3) address,
7896          decode(padr.address_id,null,
7897            padc.region_1||padc.region_2||padc.region_3,
7898            padr.region_1||padr.region_2||padr.region_3) address_kana,
7899          decode(decode(padr.address_id,null,padc.country,padr.country),'JP','0','1') address_jp,
7900          decode(padr.address_id,null,
7901            padc.telephone_number_1,padr.telephone_number_1) phone1,
7902          decode(padr.address_id,null,
7903            padc.telephone_number_2,padr.telephone_number_2) phone2,
7904          v.hire_date,
7905          v.termination_date,
7906          v.leaving_reason,
7907          v.sex,
7908          v.birth_date,
7909          hou.name organization_name,
7910          pjb.name job_name,
7911          v.payroll_name,
7912          hlc.location_code
7913   from   (select  /*+ ORDERED */
7914                   pp.person_id,
7915                   proc_v.assignment_id,
7916                   pa.organization_id,
7917                   pa.job_id,
7918                   proc_v.payroll_id,
7919                   pa.location_id,
7920                   proc_v.arch_assignment_action_id,
7921                   proc_v.proc_assignment_action_id,
7922                   proc_v.larch_assignment_action_id,
7923                   proc_v.lproc_assignment_action_date,
7924                   proc_v.action_sequence,
7925                   proc_v.effective_date,
7926                   proc_v.date_earned,
7927                   proc_v.proc_type,
7928                   nvl(nvl(ppy.prl_information1,g_bg_itax_dpnt_ref_type),'CTR_EE') dpnt_ref_type,
7929                   pp.employee_number,
7930                   pp.last_name last_name_kana,
7931                   pp.first_name first_name_kana,
7932                   pp.per_information18 last_name,
7933                   pp.per_information19 first_name,
7934                   pp.last_name||' '||pp.first_name full_name_kana,
7935                   pp.per_information18||' '||pp.per_information19 full_name,
7936                   ppos.date_start hire_date,
7937                   ppos.actual_termination_date termination_date,
7938                   ppos.leaving_reason,
7939                   pp.sex,
7940                   pp.date_of_birth birth_date,
7941                   ppy.payroll_name
7942           from    (select /*+ ORDERED
7943                               USE_NL(PAA, PPA)
7944                               INDEX(PAA PAY_ASSIGNMENT_ACTIONS_N1)
7945                               INDEX(PPA PAY_PAYROLL_ACTIONS_PK) */
7946                           larch_v.arch_assignment_action_id arch_assignment_action_id,
7947                           paa.assignment_id,
7948                           paa.assignment_action_id proc_assignment_action_id,
7949                           paa.action_sequence,
7950                           ppa.effective_date,
7951                           ppa.date_earned,
7952                           ppa.payroll_id,
7953                           decode(nvl(ppa.element_type_id,-1),
7954                             c_yea_itx_elm_id,'YEA',
7955                             c_rey_itx_elm_id,'REY',
7956                             -1,decode(nvl(ppa.element_set_id,-1),
7957                                  c_sal_ele_set_id,'SAL',
7958                                  c_bon_ele_set_id,'BON',
7959                                  c_spb_ele_set_id,'SPB',
7960                                  c_yea_ele_set_id,'YEA',
7961                                  c_rey_ele_set_id,'REY',
7962                                  c_sal_cust_ele_set_id,'SAL',
7963                                  c_bon_cust_ele_set_id,'BON',
7964                                  c_spb_cust_ele_set_id,'SPB',
7965                                  c_yea_cust_ele_set_id,'YEA',
7966                                  c_rey_cust_ele_set_id,'REY',
7967                                  -1,pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa.assignment_action_id,ppa.action_type),null),null) proc_type,
7968                           larch_v.larch_assignment_action_id,
7969                           larch_v.lproc_assignment_action_date,
7970                           ppa.element_set_id
7971                    from   (select /*+ ORDERED */
7972                                   paa_arch.assignment_action_id arch_assignment_action_id,
7973                                   paa_arch.assignment_id,
7974                                   pjia.assignment_action_id larch_assignment_action_id,
7975                                   decode(nvl(ppa_proc.element_set_id,-1),
7976                                     c_yea_ele_set_id,ppa_proc.date_earned,
7977                                     c_rey_ele_set_id,ppa_proc.date_earned,ppa_proc.effective_date) lproc_assignment_action_date
7978                            from   pay_payroll_actions ppa_arch,
7979                                   pay_assignment_actions paa_arch,
7980                                   pay_jp_itwb_assact_v pjia,
7981                                   pay_assignment_actions paa_o,
7982                                   pay_assignment_actions paa_proc,
7983                                   pay_payroll_actions ppa_proc
7984                            where  ppa_arch.payroll_action_id = p_payroll_action_id
7985                            and    paa_arch.payroll_action_id = ppa_arch.payroll_action_id
7986                            and    pjia.assignment_id (+) = paa_arch.assignment_id
7987                            and    pjia.effective_date (+)
7988                                   between g_effective_soy and g_effective_eoy
7989                            and    paa_o.assignment_action_id (+) = pjia.assignment_action_id
7990                            and    paa_proc.assignment_action_id (+) = pjia.proc_assignment_action_id
7991                            and    ppa_proc.payroll_action_id (+) = paa_proc.payroll_action_id
7992                            and    not exists(
7993                                     select /*+ ORDERED */
7994                                            null
7995                                     from   pay_jp_itwb_assact_v pjia2,
7996                                            pay_assignment_actions paa_o2
7997                                     where  pjia2.effective_date
7998                                            between g_effective_soy and g_effective_eoy
7999                                     and    pjia2.assignment_id = paa_o.assignment_id
8000                                     and    paa_o2.assignment_action_id = pjia2.assignment_action_id
8001                                     and    paa_o2.action_sequence > paa_o.action_sequence)) larch_v,
8002                           pay_assignment_actions paa,
8003                           pay_payroll_actions ppa,
8004                           pay_link_input_values_f pliv_itax_org,
8005                           pay_link_input_values_f pliv_itax_type,
8006                           pay_element_entries_f pee_itax_org,
8007                           pay_element_entries_f pee_itax_type,
8008                           pay_element_entry_values_f peev_itax_org,
8009                           pay_element_entry_values_f peev_itax_type
8010                    where  paa.assignment_id = larch_v.assignment_id
8011                    and    paa.action_status = 'C'
8012                    and    ppa.payroll_action_id = paa.payroll_action_id
8013                    and    ppa.action_status = 'C'
8014                    and    ppa.action_type in ('R','Q','B','I')
8015                    and    decode(nvl(ppa.element_set_id,-1),
8016                             c_yea_ele_set_id,ppa.date_earned,
8017                             c_rey_ele_set_id,ppa.date_earned,ppa.effective_date)
8018                           between g_effective_som and g_effective_eom
8019                    and    nvl(ppa.element_type_id,c_yea_itx_elm_id) in (c_yea_itx_elm_id, c_rey_itx_elm_id)
8020                    and    decode(nvl(ppa.element_type_id,-1),-1,nvl(ppa.element_set_id,-1),c_sal_ele_set_id) in (
8021                             c_sal_ele_set_id,
8022                             c_bon_ele_set_id,
8023                             c_spb_ele_set_id,
8024                             c_yea_ele_set_id,
8025                             c_rey_ele_set_id,
8026                             c_sal_cust_ele_set_id,
8027                             c_bon_cust_ele_set_id,
8028                             c_spb_cust_ele_set_id,
8029                             c_yea_cust_ele_set_id,
8030                             c_rey_cust_ele_set_id,
8031                             -1)
8032                    and    decode(nvl(ppa.element_type_id,-1),-1,decode(nvl(ppa.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa.assignment_action_id,ppa.action_type),'N'),'Y'),'Y') <> 'N'
8033                    and not exists(
8034                      select /*+ ORDERED */
8035                             null
8036                      from   pay_action_interlocks pai,
8037                             pay_assignment_actions paav,
8038                             pay_payroll_actions ppav
8039                      where  pai.locked_action_id = paa.assignment_action_id
8040                      and    paav.assignment_action_id = pai.locking_action_id
8041                      and    ppav.payroll_action_id = paav.payroll_action_id
8042                      and    ppav.action_type = 'V')
8043                    and    pliv_itax_org.input_value_id = c_itx_org_iv_id
8044                    and    ppa.effective_date
8045                           between pliv_itax_org.effective_start_date and pliv_itax_org.effective_end_date
8046                    and    pliv_itax_type.input_value_id = c_itx_type_iv_id
8047                    and    ppa.effective_date
8048                           between pliv_itax_type.effective_start_date and pliv_itax_type.effective_end_date
8049                    and    pee_itax_org.assignment_id = paa.assignment_id
8050                    and    pee_itax_org.element_link_id = pliv_itax_org.element_link_id
8051                    and    ppa.effective_date
8052                           between pee_itax_org.effective_start_date and pee_itax_org.effective_end_date
8053                    and    pee_itax_type.assignment_id = paa.assignment_id
8054                    and    pee_itax_type.element_link_id = pliv_itax_type.element_link_id
8055                    and    ppa.effective_date
8056                           between pee_itax_type.effective_start_date and pee_itax_type.effective_end_date
8057                    and    peev_itax_org.element_entry_id = pee_itax_org.element_entry_id
8058                    and    peev_itax_org.input_value_id = pliv_itax_org.input_value_id
8059                    and    peev_itax_org.effective_start_date = pee_itax_org.effective_start_date
8060                    and    peev_itax_org.effective_end_date = pee_itax_org.effective_end_date
8061                    and    fnd_number.canonical_to_number(decode(peev_itax_org.input_value_id,c_itx_org_iv_id,peev_itax_org.screen_entry_value,null)) = g_itax_organization_id
8062                    and    peev_itax_type.element_entry_id = pee_itax_type.element_entry_id
8063                    and    peev_itax_type.input_value_id = pliv_itax_type.input_value_id
8064                    and    peev_itax_type.effective_start_date = pee_itax_type.effective_start_date
8065                    and    peev_itax_type.effective_end_date = pee_itax_type.effective_end_date
8066                    and    peev_itax_type.screen_entry_value <> 'E'
8067                 /* --this part was removed for redundant validation
8068                    --and not exists(
8069                    --  select /*+ ORDERED */
8070                    --         null
8071                    --  from   pay_assignment_actions paa2,
8072                    --         pay_payroll_actions ppa2,
8073                    --         pay_link_input_values_f pliv_itax_org2,
8074                    --         pay_link_input_values_f pliv_itax_type2,
8075                    --         pay_element_entries_f pee_itax_org2,
8076                    --         pay_element_entries_f pee_itax_type2,
8077                    --         pay_element_entry_values_f peev_itax_org2,
8078                    --         pay_element_entry_values_f peev_itax_type2
8079                    --  where  paa2.assignment_id = paa.assignment_id
8080                    --  and    paa2.action_status = 'C'
8081                    --  and    ppa2.payroll_action_id = paa2.payroll_action_id
8082                    --  and    ppa2.action_status = 'C'
8083                    --  and    ppa2.action_type in ('R','Q')
8084                    --  and    ppa2.effective_date
8085                    --         between g_effective_som and g_effective_eom
8086                    --  and    ppa2.payroll_id = ppa.payroll_id
8087                    --  and    trunc(ppa2.effective_date,'MM') = trunc(ppa.effective_date,'MM')
8088                    --  and    nvl(ppa2.element_set_id,-1) = nvl(ppa.element_set_id,-1)
8089                    --  and    nvl(ppa2.element_set_id,-1) in (
8090                    --           c_sal_ele_set_id,
8091                    --           c_sal_cust_ele_set_id,
8092                    --           -1)
8093                    --  and    decode(nvl(ppa2.element_set_id,-1),-1,nvl(pay_jp_itwb_archive_pkg.get_fuzzy_proc_type(paa2.assignment_action_id,ppa2.action_type),'N'),'SAL') = 'SAL'
8094                    --  and not exists(
8095                    --    select /*+ ORDERED */
8096                    --           null
8097                    --    from   pay_action_interlocks pai2,
8098                    --           pay_assignment_actions paav2,
8099                    --           pay_payroll_actions ppav2
8100                    --    where  pai2.locked_action_id = paa2.assignment_action_id
8101                    --    and    paav2.assignment_action_id = pai2.locking_action_id
8102                    --    and    ppav2.payroll_action_id = paav2.payroll_action_id
8103                    --    and    ppav2.action_type = 'V')
8104                    --  and    pliv_itax_org2.input_value_id = c_itx_org_iv_id
8105                    --  and    ppa2.effective_date
8106                    --         between pliv_itax_org2.effective_start_date and pliv_itax_org2.effective_end_date
8107                    --  and    pliv_itax_type2.input_value_id = c_itx_type_iv_id
8108                    --  and    ppa2.effective_date
8109                    --         between pliv_itax_type2.effective_start_date and pliv_itax_type2.effective_end_date
8110                    --  and    pee_itax_org2.assignment_id = paa2.assignment_id
8111                    --  and    pee_itax_org2.element_link_id = pliv_itax_org2.element_link_id
8112                    --  and    ppa2.effective_date
8113                    --         between pee_itax_org2.effective_start_date and pee_itax_org2.effective_end_date
8114                    --  and    pee_itax_type2.assignment_id = paa2.assignment_id
8115                    --  and    pee_itax_type2.element_link_id = pliv_itax_type2.element_link_id
8116                    --  and    ppa2.effective_date
8117                    --         between pee_itax_type2.effective_start_date and pee_itax_type2.effective_end_date
8118                    --  and    peev_itax_org2.element_entry_id = pee_itax_org2.element_entry_id
8119                    --  and    peev_itax_org2.input_value_id = pliv_itax_org2.input_value_id
8120                    --  and    peev_itax_org2.effective_start_date = pee_itax_org2.effective_start_date
8121                    --  and    peev_itax_org2.effective_end_date = pee_itax_org2.effective_end_date
8122                    --  and    fnd_number.canonical_to_number(decode(peev_itax_org2.input_value_id,c_itx_org_iv_id,peev_itax_org2.screen_entry_value,null)) = g_itax_organization_id
8123                    --  and    peev_itax_type2.element_entry_id = pee_itax_type2.element_entry_id
8124                    --  and    peev_itax_type2.input_value_id = pliv_itax_type2.input_value_id
8125                    --  and    peev_itax_type2.effective_start_date = pee_itax_type2.effective_start_date
8126                    --  and    peev_itax_type2.effective_end_date = pee_itax_type2.effective_end_date
8127                    --  and    peev_itax_type2.screen_entry_value <> 'E'
8128                    --  and    paa2.action_sequence > paa.action_sequence) */
8129                   ) proc_v,
8130                   per_all_assignments_f pa,
8131                   per_all_people_f pp,
8132                   per_periods_of_service ppos,
8133                   pay_all_payrolls_f ppy
8134           where   pa.assignment_id = proc_v.assignment_id
8135           and     proc_v.effective_date
8136                   between pa.effective_start_date and pa.effective_end_date
8137           and     pp.person_id = pa.person_id
8138           and     proc_v.effective_date
8139                   between pp.effective_start_date and pp.effective_end_date
8140           and     ppos.period_of_service_id = pa.period_of_service_id
8141           and     ppy.payroll_id = proc_v.payroll_id
8142           and     proc_v.effective_date
8143                   between ppy.effective_start_date and ppy.effective_end_date) v,
8144          per_jobs_vl pjb,
8145          hr_all_organization_units_vl hou,
8146          hr_locations_all_vl hlc,
8147          per_addresses padr,
8148          per_addresses padc
8149   where  pjb.job_id (+) = v.job_id
8150   and    v.effective_date
8151          between pjb.date_from (+) and nvl(pjb.date_to (+), hr_api.g_eot)
8152   and    hou.organization_id (+) = v.organization_id
8153   and    v.effective_date
8154          between hou.date_from (+) and nvl(hou.date_to (+), hr_api.g_eot)
8155   and    hlc.location_id (+) = v.location_id
8156   and    padr.person_id (+) = v.person_id
8157   and    padr.address_type (+) = 'JP_R'
8158   and    nvl(v.termination_date, v.effective_date)
8159          between padr.date_from (+) and nvl(padr.date_to(+), hr_api.g_eot)
8160   and    padc.person_id (+) = v.person_id
8161   and    padc.address_type (+) = 'JP_C'
8162   and    nvl(v.termination_date, v.effective_date)
8163          between padc.date_from (+) and nvl(padc.date_to(+), hr_api.g_eot)
8164   order by
8165     v.assignment_id,
8166     v.action_sequence;
8167     -- balance adjustment is not sequenced process but no comparison key so used as fuzzy sequence
8168 --
8169   cursor csr_data_ass_add_info(
8170     p_assignment_id  in number,
8171     p_effective_date in date)
8172   is
8173   select /*+ ORDERED */
8174          v.person_id,
8175          v.assignment_id,
8176          v.organization_id,
8177          v.job_id,
8178          v.payroll_id,
8179          v.location_id,
8180          v.employee_number,
8181          v.last_name_kana,
8182          v.first_name_kana,
8183          v.last_name,
8184          v.first_name,
8185          v.full_name_kana,
8186          v.full_name,
8187          nvl(padr.address_id,padc.address_id) address_id,
8188          decode(padr.address_id,null,padc.postal_code,padr.postal_code) postal_code,
8189          decode(padr.address_id,null,padc.town_or_city,padr.town_or_city) district_code,
8190          decode(padr.address_id,null,
8191            padc.address_line1||padc.address_line2||padc.address_line3,
8192            padr.address_line1||padr.address_line2||padr.address_line3) address,
8193          decode(padr.address_id,null,
8194            padc.region_1||padc.region_2||padc.region_3,
8195            padr.region_1||padr.region_2||padr.region_3) address_kana,
8196          decode(decode(padr.address_id,null,padc.country,padr.country),'JP','0','1') address_jp,
8197          decode(padr.address_id,null,
8198            padc.telephone_number_1,padr.telephone_number_1) phone1,
8199          decode(padr.address_id,null,
8200            padc.telephone_number_2,padr.telephone_number_2) phone2,
8201          v.date_start hire_date,
8202          v.actual_termination_date termination_date,
8203          v.leaving_reason,
8204          v.sex,
8205          v.date_of_birth birth_date,
8206          hou.name organization_name,
8207          pjb.name job_name,
8208          ppy.payroll_name,
8209          hlc.location_code
8210   from   (select /*+ ORDERED */
8211                  pa.assignment_id,
8212                  pp.person_id,
8213                  ppos.actual_termination_date,
8214                  pa.payroll_id,
8215                  pa.job_id,
8216                  pa.organization_id,
8217                  pa.location_id,
8218                  pp.employee_number,
8219                  pp.last_name last_name_kana,
8220                  pp.first_name first_name_kana,
8221                  pp.per_information18 last_name,
8222                  pp.per_information19 first_name,
8223                  pp.last_name||' '||pp.first_name full_name_kana,
8224                  pp.per_information18||' '||pp.per_information19 full_name,
8225                  ppos.date_start,
8226                  ppos.leaving_reason,
8227                  pp.sex,
8228                  pp.date_of_birth
8229           from   per_all_assignments_f pa,
8230                  per_all_people_f pp,
8231                  per_periods_of_service ppos
8232           where  pa.assignment_id = p_assignment_id
8233           and    p_effective_date
8234                  between pa.effective_start_date and pa.effective_end_date
8235           and    pp.person_id = pa.person_id
8236           and    p_effective_date
8237                  between pp.effective_start_date and pp.effective_end_date
8238           and    ppos.period_of_service_id = pa.period_of_service_id) v,
8239          per_addresses padr,
8240          per_addresses padc,
8241          pay_all_payrolls_f ppy,
8242          per_jobs_vl pjb,
8243          hr_all_organization_units_vl hou,
8244          hr_locations_all_vl hlc
8245   where  padr.person_id (+) = v.person_id
8246   and    padr.address_type (+) = 'JP_R'
8247   and    nvl(v.actual_termination_date, p_effective_date)
8248          between padr.date_from (+) and nvl(padr.date_to(+), hr_api.g_eot)
8249   and    padc.person_id (+) = v.person_id
8250   and    padc.address_type (+) = 'JP_C'
8251   and    nvl(v.actual_termination_date, p_effective_date)
8252          between padc.date_from (+) and nvl(padc.date_to(+), hr_api.g_eot)
8253   and    ppy.payroll_id = v.payroll_id
8254   and    p_effective_date
8255          between ppy.effective_start_date and ppy.effective_end_date
8256   and    pjb.job_id (+) = v.job_id
8257   and    p_effective_date
8258          between pjb.date_from (+) and nvl(pjb.date_to (+), hr_api.g_eot)
8259   and    hou.organization_id (+) = v.organization_id
8260   and    p_effective_date
8261          between hou.date_from (+) and nvl(hou.date_to (+), hr_api.g_eot)
8262   and    hlc.location_id (+) = v.location_id;
8263 --
8264   cursor csr_ass_bon(
8265     p_arch_assignment_action_id_o in number)
8266   is
8267   select col_cnt1,
8268          col_cnt2,
8269          col_cnt3,
8270          col_cnt4,
8271          col_cnt5,
8272          col_cnt6,
8273          col_cnt7,
8274          col_cnt8,
8275          col_cnt9,
8276          col_cnt10,
8277          col_cnt11,
8278          col_cnt12,
8279          col_cnt13,
8280          col_cnt14,
8281          col_cnt15
8282   from   pay_jp_itwb_bon_act_id_v
8283   where  assignment_action_id = p_arch_assignment_action_id_o;
8284 --
8285   cursor csr_ass_bon_exc(
8286     p_arch_assignment_action_id_o in number)
8287   is
8288   select decode(sign(to_number(to_char(nvl(pyjibae.col_cnt1,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt1) col_cnt1,
8289          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt2,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt2) col_cnt2,
8290          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt3,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt3) col_cnt3,
8291          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt4,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt4) col_cnt4,
8292          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt5,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt5) col_cnt5,
8293          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt6,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt6) col_cnt6,
8294          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt7,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt7) col_cnt7,
8295          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt8,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt8) col_cnt8,
8296          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt9,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt9) col_cnt9,
8297          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt10,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt10) col_cnt10,
8298          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt11,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt11) col_cnt11,
8299          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt12,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt12) col_cnt12,
8300          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt13,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt13) col_cnt13,
8301          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt14,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt14) col_cnt14,
8302          decode(sign(to_number(to_char(nvl(pyjibae.col_cnt15,g_effective_som),'MM')) - to_number(to_char(g_effective_som,'MM'))),0,null,pyjibai.col_cnt15) col_cnt15
8303   from   pay_jp_itwb_bon_act_id_v pyjibai,
8304          pay_jp_itwb_bon_act_efd_v pyjibae
8305   where  pyjibai.assignment_action_id = p_arch_assignment_action_id_o
8306   and    pyjibae.assignment_action_id = pyjibai.assignment_action_id
8307   and    pyjibae.effective_date = pyjibai.effective_date;
8308 --
8309   l_csr_data_ass_new csr_data_ass_new%rowtype;
8310   l_csr_data_ass_add csr_data_ass_add%rowtype;
8311   l_csr_data_ass_upd csr_data_ass_upd%rowtype;
8312   l_csr_data_ass_add_info csr_data_ass_add_info%rowtype;
8313   l_csr_ass_bon csr_ass_bon%rowtype;
8314   l_csr_ass_bon_exc csr_ass_bon_exc%rowtype;
8315 --
8316   l_error_code number;
8317   l_error_mesg varchar2(100);
8318   l_archini_step number;
8319 --
8320 begin
8321 --
8322   if g_debug then
8323     l_archini_step := 0;
8324     hr_utility.set_location(l_proc,0);
8325   end if;
8326 --
8327   g_per_ind_tbl.delete;
8328   g_ass_tbl.delete;
8329   g_body_tbl.delete;
8330 --
8331   g_data_pay_tbl.delete;
8332   g_data_sal_tbl.delete;
8333   g_data_bon_tbl.delete;
8334   g_data_yea_tbl.delete;
8335   g_data_pjob_ind_tbl.delete;
8336   g_data_pjob_tbl.delete;
8337   g_data_dpnt_tbl.delete;
8338 --
8339   g_data_sal_ass_pay_tbl.delete;
8340   g_data_bon_ass_pay_tbl.delete;
8341   g_arch_sal_ass_pay_tbl.delete;
8342   g_arch_bon_ass_pay_tbl.delete;
8343 --
8344   g_data_sal_ass_pay_ind_tbl.delete;
8345   g_data_bon_ass_pay_ind_tbl.delete;
8346   g_arch_sal_ass_pay_ind_tbl.delete;
8347   g_arch_bon_ass_pay_ind_tbl.delete;
8348 --
8349   g_data_item_act_sal_ern_tbl.delete;
8350   g_data_item_act_sal_dct_tbl.delete;
8351   g_data_item_act_bon_ern_tbl.delete;
8352   g_data_item_act_bon_dct_tbl.delete;
8353   g_data_item_act_wrk_tbl.delete;
8354 --
8355   g_item_info_ind_tbl.delete;
8356   g_item_info_sal_ern_tbl.delete;
8357   g_item_info_sal_dct_tbl.delete;
8358   g_item_info_bon_ern_tbl.delete;
8359   g_item_info_bon_dct_tbl.delete;
8360   g_item_info_wrk_tbl.delete;
8361   g_data_item_tbl.delete;
8362 --
8363   g_wng_tbl.delete;
8364   g_yea_wic_tbl.delete;
8365 --
8366   g_data_sal_tbl(0).null_dummy := -1;
8367   g_data_bon_tbl(0).null_dummy := -1;
8368   g_data_item_tbl(0).null_dummy := -1;
8369   g_data_yea_tbl(0).null_dummy := -1;
8370 --
8371   if g_debug
8372   and g_detail_debug = 'Y' then
8373     l_archini_step := 1;
8374   end if;
8375   --
8376   -- invoke for mark for retry.
8377   init_pact(p_payroll_action_id);
8378 --
8379   if g_debug
8380   and g_detail_debug = 'Y' then
8381     l_archini_step := 2;
8382     hr_utility.set_location(l_proc,10);
8383     hr_utility.trace('p_payroll_action_id : '||to_char(p_payroll_action_id));
8384   end if;
8385 --
8386   -- -----------------------------------
8387   -- RENEW
8388   -- -----------------------------------
8389   if g_arch_option = 'RENEW' then
8390   --
8391     if g_debug
8392     and g_detail_debug = 'Y' then
8393       l_archini_step := 3;
8394       hr_utility.set_location(l_proc,20);
8395     end if;
8396   --
8397     open csr_data_ass_new;
8398     loop
8399     --
8400       fetch csr_data_ass_new into l_csr_data_ass_new;
8401       exit when csr_data_ass_new%notfound;
8402     --
8403       -- increment l_data_tbl_cnt for each assignment
8404       if l_assignment_id is null
8405       or l_assignment_id <> l_csr_data_ass_new.assignment_id then
8406       --
8407         if g_debug
8408         and g_detail_debug = 'Y' then
8409           l_archini_step := 4;
8410         end if;
8411       --
8412         -- set data for the latest action (the last record) of the previous assignment
8413         -- set data after exit loop for the last record
8414         if l_data_tbl_cnt > 0 then
8415         --
8416           if g_debug
8417           and g_detail_debug = 'Y' then
8418             l_archini_step := 5;
8419           end if;
8420         --
8421           l_data_tbl(l_data_tbl_cnt).emp_si_itax_org_id        := pay_jp_balance_pkg.get_entry_value_number(c_itx_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8422           l_data_tbl(l_data_tbl_cnt).emp_si_itax_type          := pay_jp_balance_pkg.get_entry_value_char(c_itx_type_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8423           l_data_tbl(l_data_tbl_cnt).emp_si_hi_org_id          := pay_jp_balance_pkg.get_entry_value_number(c_hi_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8424           l_data_tbl(l_data_tbl_cnt).emp_si_hi_number          := pay_jp_balance_pkg.get_entry_value_char(c_hi_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8425           l_data_tbl(l_data_tbl_cnt).emp_si_wp_org_id          := pay_jp_balance_pkg.get_entry_value_number(c_wp_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8426           l_data_tbl(l_data_tbl_cnt).emp_si_wp_number          := pay_jp_balance_pkg.get_entry_value_char(c_wp_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8427           l_data_tbl(l_data_tbl_cnt).emp_si_wpf_org_id         := pay_jp_balance_pkg.get_entry_value_number(c_wpf_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8428           l_data_tbl(l_data_tbl_cnt).emp_si_wpf_number         := pay_jp_balance_pkg.get_entry_value_char(c_wpf_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8429           l_data_tbl(l_data_tbl_cnt).emp_si_ei_org_id          := pay_jp_balance_pkg.get_entry_value_number(c_ei_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8430           l_data_tbl(l_data_tbl_cnt).emp_si_ei_number          := pay_jp_balance_pkg.get_entry_value_char(c_ei_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8431           --
8432           l_nres_flag_eev                                      := pay_jp_balance_pkg.get_entry_value_char(c_nres_flag_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8433           l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date    := pay_jp_balance_pkg.get_entry_value_date(c_nres_start_date_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8434           l_data_tbl(l_data_tbl_cnt).emp_si_projected_res_date := pay_jp_balance_pkg.get_entry_value_date(c_projected_res_date_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8435           --
8436           if g_debug
8437           and g_detail_debug = 'Y' then
8438             l_archini_step := 6;
8439           end if;
8440           --
8441           if l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date is not null then
8442           --
8443             if g_debug
8444             and g_detail_debug = 'Y' then
8445               l_archini_step := 7;
8446             end if;
8447           --
8448             if l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date <= l_data_tbl(l_data_tbl_cnt).assact_effective_date
8449             and nvl(l_data_tbl(l_data_tbl_cnt).emp_si_projected_res_date,l_data_tbl(l_data_tbl_cnt).assact_effective_date + 1) > l_data_tbl(l_data_tbl_cnt).assact_effective_date then
8450             --
8451               l_data_tbl(l_data_tbl_cnt).emp_si_nres_flag := 'Y';
8452             --
8453             end if;
8454           --
8455           else
8456           --
8457             if g_debug
8458             and g_detail_debug = 'Y' then
8459               l_archini_step := 8;
8460             end if;
8461           --
8462             if nvl(l_nres_flag_eev,'N') = 'Y' then
8463             --
8464               l_data_tbl(l_data_tbl_cnt).emp_si_nres_flag := 'Y';
8465             --
8466             end if;
8467           --
8468           end if;
8469         --
8470           if g_debug
8471           and g_detail_debug = 'Y' then
8472             l_archini_step := 9;
8473           end if;
8474         --
8475           -- latest yea for assignment (ie. yea exist)
8476           if l_yea_assignment_action_id is not null then
8477           --
8478             if g_debug
8479             and g_detail_debug = 'Y' then
8480               l_archini_step := 10;
8481             end if;
8482           --
8483             l_data_tbl(l_data_tbl_cnt).yea_act := l_yea_assignment_action_id;
8484           --
8485             if g_debug
8486             and g_detail_debug = 'Y' then
8487               l_archini_step := 11;
8488             end if;
8489           --
8490             -- set g_data_yea_tbl based on l_data_tbl(l_data_tbl_cnt).yea_act
8491             -- called set_yea_wic_tbl, set g_yea_wic_tbl based on l_data_tbl(l_data_tbl_cnt).yea_act
8492             set_data_yea_tbl(
8493               p_assignment_action_id => l_yea_assignment_action_id,
8494               p_assignment_id        => l_assignment_id,
8495               p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
8496               p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
8497               p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
8498               p_payroll_id           => l_data_tbl(l_data_tbl_cnt).assact_payroll_id,
8499               p_proc_type            => l_data_tbl(l_data_tbl_cnt).assact_proc_type);
8500           --
8501           end if;
8502         --
8503           if g_debug
8504           and g_detail_debug = 'Y' then
8505             l_archini_step := 12;
8506           end if;
8507           --
8508           -- latest sal for assignment, use to get dpnt info and use to set pay tbl
8509           if l_sal_assignment_action_id is not null then
8510           --
8511             if g_debug
8512             and g_detail_debug = 'Y' then
8513               l_archini_step := 13;
8514             end if;
8515           --
8516             l_data_tbl(l_data_tbl_cnt).sal_act := l_sal_assignment_action_id;
8517             l_data_tbl(l_data_tbl_cnt).sal_erd := l_sal_date_earned;
8518           --
8519           end if;
8520         --
8521           if g_debug
8522           and g_detail_debug = 'Y' then
8523             l_archini_step := 14;
8524           end if;
8525         --
8526           -- latest bon for assignment, use to set pay tbl
8527           if l_bon_assignment_action_id is not null then
8528           --
8529             if g_debug
8530             and g_detail_debug = 'Y' then
8531               l_archini_step := 15;
8532             end if;
8533           --
8534             l_data_tbl(l_data_tbl_cnt).bon_act := l_bon_assignment_action_id;
8535           --
8536           end if;
8537         --
8538           if g_debug
8539           and g_detail_debug = 'Y' then
8540             l_archini_step := 16;
8541           end if;
8542         --
8543           -- need to set g_yea_wic_tbl.prev_jobs for yea, rey before here (ie. by above set_data_yea_tbl)
8544           -- otherwise set l_prev_jobs for latest sal, bon
8545           if l_data_tbl(l_data_tbl_cnt).assact_proc_type = 'YEA'
8546           or l_data_tbl(l_data_tbl_cnt).assact_proc_type = 'REY' then
8547           --
8548             if g_debug
8549             and g_detail_debug = 'Y' then
8550               l_archini_step := 17;
8551             end if;
8552           --
8553             if g_yea_wic_tbl.count > 0 then
8554             --
8555               l_prev_jobs := g_yea_wic_tbl(l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id).prev_jobs;
8556             --
8557             end if;
8558           --
8559             if g_debug
8560             and g_detail_debug = 'Y' then
8561               l_archini_step := 18;
8562             end if;
8563           --
8564           else
8565           --
8566             if g_debug
8567             and g_detail_debug = 'Y' then
8568               l_archini_step := 19;
8569             end if;
8570           --
8571             pay_jp_wic_pkg.get_prev_jobs(
8572               p_assignment_id        => l_assignment_id,
8573               p_action_sequence      => l_data_tbl(l_data_tbl_cnt).assact_action_sequence,
8574               p_business_group_id    => g_business_group_id,
8575               p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
8576               p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
8577               p_itax_organization_id => l_data_tbl(l_data_tbl_cnt).emp_si_itax_org_id,
8578               p_person_id            => l_data_tbl(l_data_tbl_cnt).emp_person_id,
8579               p_prev_jobs            => l_prev_jobs);
8580           --
8581             if g_debug
8582             and g_detail_debug = 'Y' then
8583               l_archini_step := 20;
8584             end if;
8585           --
8586           end if;
8587         --
8588           if g_debug
8589           and g_detail_debug = 'Y' then
8590             l_archini_step := 21;
8591           end if;
8592         --
8593           if l_prev_jobs.count > 0 then
8594           --
8595             l_data_tbl(l_data_tbl_cnt).pjob_cnt := l_prev_jobs.count;
8596           --
8597           end if;
8598         --
8599           -- set g_data_pjob_ind_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
8600           -- set g_data_pjob_tbl based on g_data_pjob_ind_tbl.rec_ind1-15
8601           set_data_pjob_tbl(
8602             p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
8603             p_assignment_id        => l_assignment_id,
8604             p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
8605             p_prev_jobs            => l_prev_jobs);
8606         --
8607           if g_debug
8608           and g_detail_debug = 'Y' then
8609             l_archini_step := 22;
8610           end if;
8611         --
8612           -- set g_data_dpnt_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
8613           -- called set_yea_wic_tbl
8614           set_data_dpnt_tbl(
8615             p_assignment_action_id     => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
8616             p_assignment_id            => l_assignment_id,
8617             p_employee_number          => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
8618             p_effective_date           => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
8619             p_date_earned              => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
8620             p_proc_type                => l_data_tbl(l_data_tbl_cnt).assact_proc_type,
8621             p_dpnt_ref_type            => l_data_tbl(l_data_tbl_cnt).assact_dpnt_ref_type,
8622             p_sal_assignment_action_id => l_data_tbl(l_data_tbl_cnt).sal_act,
8623             p_sal_date_earned          => l_data_tbl(l_data_tbl_cnt).sal_erd);
8624         --
8625           if g_debug
8626           and g_detail_debug = 'Y' then
8627             l_archini_step := 23;
8628           end if;
8629         --
8630           -- set g_data_cust_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
8631           set_data_cust_tbl(
8632             p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
8633             p_assignment_id        => l_assignment_id,
8634             p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
8635             p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
8636             p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned);
8637         --
8638           if g_debug
8639           and g_detail_debug = 'Y' then
8640             l_archini_step := 24;
8641           end if;
8642         --
8643         end if;
8644       --
8645         if g_debug
8646         and g_detail_debug = 'Y' then
8647           l_archini_step := 25;
8648         end if;
8649       --
8650         if l_bon_tbl_cnt > 15 then
8651         --
8652           if g_debug
8653           and g_detail_debug = 'Y' then
8654             l_archini_step := 26;
8655           end if;
8656         --
8657           g_wng_tbl(g_wng_tbl_cnt).assignment_id   := l_assignment_id;
8658           g_wng_tbl(g_wng_tbl_cnt).employee_number := l_data_tbl(l_data_tbl_cnt).emp_employee_number;
8659           g_wng_tbl(g_wng_tbl_cnt).message_text    := fnd_message.get_string('PAY','PAY_JP_ITWB_BON_OVER');
8660         --
8661           g_wng_tbl_cnt := g_wng_tbl_cnt + 1;
8662         --
8663         end if;
8664       --
8665         if g_debug
8666         and g_detail_debug = 'Y' then
8667           l_archini_step := 27;
8668         end if;
8669       --
8670       -- initialize
8671       --
8672         l_assignment_id := l_csr_data_ass_new.assignment_id;
8673         l_sal_assignment_action_id := null;
8674         l_sal_date_earned := null;
8675         l_bon_assignment_action_id := null;
8676         l_yea_assignment_action_id := null;
8677         --l_prev_jobs := null;
8678         l_prev_jobs.delete;
8679       --
8680         g_data_sal_ass_pay_tbl.delete;
8681         g_data_bon_ass_pay_tbl.delete;
8682         g_arch_sal_ass_pay_tbl.delete;
8683         g_arch_bon_ass_pay_tbl.delete;
8684       --
8685         g_data_sal_ass_pay_ind_tbl.delete;
8686         g_data_bon_ass_pay_ind_tbl.delete;
8687         g_arch_sal_ass_pay_ind_tbl.delete;
8688         g_arch_bon_ass_pay_ind_tbl.delete;
8689       --
8690         l_data_sal_act_mth1_tbl.delete;
8691         l_data_sal_act_mth2_tbl.delete;
8692         l_data_sal_act_mth3_tbl.delete;
8693         l_data_sal_act_mth4_tbl.delete;
8694         l_data_sal_act_mth5_tbl.delete;
8695         l_data_sal_act_mth6_tbl.delete;
8696         l_data_sal_act_mth7_tbl.delete;
8697         l_data_sal_act_mth8_tbl.delete;
8698         l_data_sal_act_mth9_tbl.delete;
8699         l_data_sal_act_mth10_tbl.delete;
8700         l_data_sal_act_mth11_tbl.delete;
8701         l_data_sal_act_mth12_tbl.delete;
8702       --
8703         l_mth1_tbl_cnt := 0;
8704         l_mth2_tbl_cnt := 0;
8705         l_mth3_tbl_cnt := 0;
8706         l_mth4_tbl_cnt := 0;
8707         l_mth5_tbl_cnt := 0;
8708         l_mth6_tbl_cnt := 0;
8709         l_mth7_tbl_cnt := 0;
8710         l_mth8_tbl_cnt := 0;
8711         l_mth9_tbl_cnt := 0;
8712         l_mth10_tbl_cnt := 0;
8713         l_mth11_tbl_cnt := 0;
8714         l_mth12_tbl_cnt := 0;
8715       --
8716         l_bon_tbl_cnt := 0;
8717         l_yea_tbl_cnt := 0;
8718       --
8719         l_data_tbl_cnt := l_data_tbl_cnt + 1;
8720       --
8721       end if;
8722     --
8723     -- initialize
8724     --
8725       g_data_item_act_sal_ern_tbl.delete;
8726       g_data_item_act_sal_dct_tbl.delete;
8727       g_data_item_act_bon_ern_tbl.delete;
8728       g_data_item_act_bon_dct_tbl.delete;
8729       g_data_item_act_wrk_tbl.delete;
8730     --
8731       if g_debug
8732       and g_detail_debug = 'Y' then
8733         l_archini_step := 28;
8734       end if;
8735     --
8736       -- override record to latest info (increment l_data_tbl_cnt when assignment is changed, so set final action info.)
8737       -- because 15 sequenced bonus record must be picked, cursor is ordered by action sequence, not desc.
8738       --
8739       l_data_tbl(l_data_tbl_cnt).arch_assignment_action_id := l_csr_data_ass_new.arch_assignment_action_id;
8740       l_data_tbl(l_data_tbl_cnt).assact_assignment_id      := l_csr_data_ass_new.assignment_id;
8741       l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id := l_csr_data_ass_new.proc_assignment_action_id;
8742       l_data_tbl(l_data_tbl_cnt).assact_action_sequence    := l_csr_data_ass_new.action_sequence;
8743       l_data_tbl(l_data_tbl_cnt).assact_effective_date     := l_csr_data_ass_new.effective_date;
8744       l_data_tbl(l_data_tbl_cnt).assact_date_earned        := l_csr_data_ass_new.date_earned;
8745       l_data_tbl(l_data_tbl_cnt).assact_proc_type          := l_csr_data_ass_new.proc_type;
8746       l_data_tbl(l_data_tbl_cnt).assact_dpnt_ref_type      := l_csr_data_ass_new.dpnt_ref_type;
8747       --
8748       l_data_tbl(l_data_tbl_cnt).assact_organization_id  := l_csr_data_ass_new.organization_id;
8749       l_data_tbl(l_data_tbl_cnt).assact_job_id           := l_csr_data_ass_new.job_id;
8750       l_data_tbl(l_data_tbl_cnt).assact_payroll_id       := l_csr_data_ass_new.payroll_id;
8751       l_data_tbl(l_data_tbl_cnt).assact_location_id      := l_csr_data_ass_new.location_id;
8752       l_data_tbl(l_data_tbl_cnt).assact_termination_date := l_csr_data_ass_new.termination_date;
8753       l_data_tbl(l_data_tbl_cnt).assact_leaving_reason   := l_csr_data_ass_new.leaving_reason;
8754       --
8755       l_data_tbl(l_data_tbl_cnt).emp_person_id       := l_csr_data_ass_new.person_id;
8756       l_data_tbl(l_data_tbl_cnt).emp_employee_number := l_csr_data_ass_new.employee_number;
8757       l_data_tbl(l_data_tbl_cnt).emp_last_name       := l_csr_data_ass_new.last_name;
8758       l_data_tbl(l_data_tbl_cnt).emp_first_name      := l_csr_data_ass_new.first_name;
8759       l_data_tbl(l_data_tbl_cnt).emp_last_name_kana  := l_csr_data_ass_new.last_name_kana;
8760       l_data_tbl(l_data_tbl_cnt).emp_first_name_kana := l_csr_data_ass_new.first_name_kana;
8761       l_data_tbl(l_data_tbl_cnt).emp_sex             := l_csr_data_ass_new.sex;
8762       l_data_tbl(l_data_tbl_cnt).emp_birth_date      := l_csr_data_ass_new.birth_date;
8763       --
8764       l_data_tbl(l_data_tbl_cnt).emp_add_address_id    := l_csr_data_ass_new.address_id;
8765       l_data_tbl(l_data_tbl_cnt).emp_add_address_jp    := l_csr_data_ass_new.address_jp;
8766       l_data_tbl(l_data_tbl_cnt).emp_add_postal_code   := l_csr_data_ass_new.postal_code;
8767       l_data_tbl(l_data_tbl_cnt).emp_add_district_code := l_csr_data_ass_new.district_code;
8768       l_data_tbl(l_data_tbl_cnt).emp_add_address       := l_csr_data_ass_new.address;
8769       l_data_tbl(l_data_tbl_cnt).emp_add_address_kana  := l_csr_data_ass_new.address_kana;
8770       l_data_tbl(l_data_tbl_cnt).emp_add_phone1        := l_csr_data_ass_new.phone1;
8771       l_data_tbl(l_data_tbl_cnt).emp_add_phone2        := l_csr_data_ass_new.phone2;
8772       --
8773       l_data_tbl(l_data_tbl_cnt).emp_ass_hire_date         := l_csr_data_ass_new.hire_date;
8774       l_data_tbl(l_data_tbl_cnt).emp_ass_organization_name := l_csr_data_ass_new.organization_name;
8775       l_data_tbl(l_data_tbl_cnt).emp_ass_job_name          := l_csr_data_ass_new.job_name;
8776       l_data_tbl(l_data_tbl_cnt).emp_ass_payroll_name      := l_csr_data_ass_new.payroll_name;
8777       l_data_tbl(l_data_tbl_cnt).emp_ass_location_name     := l_csr_data_ass_new.location_code;
8778     --
8779       if g_debug
8780       and g_detail_debug = 'Y' then
8781         l_archini_step := 29;
8782       end if;
8783     --
8784       if l_csr_data_ass_new.proc_type = 'SAL' then
8785       --
8786         if g_debug
8787         and g_detail_debug = 'Y' then
8788           l_archini_step := 30;
8789         end if;
8790       --
8791         -- separate for effective date base
8792         if to_char(l_csr_data_ass_new.effective_date,'MM') = '01' then
8793         --
8794           l_data_sal_act_mth1_tbl(l_mth1_tbl_cnt) := l_csr_data_ass_new.proc_assignment_action_id;
8795           l_mth1_tbl_cnt := l_mth1_tbl_cnt + 1;
8796         --
8797           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth1 := l_csr_data_ass_new.proc_assignment_action_id;
8798           l_data_tbl(l_data_tbl_cnt).act_mth1_tbl := l_data_sal_act_mth1_tbl;
8799         --
8800         elsif to_char(l_csr_data_ass_new.effective_date,'MM') = '02' then
8801         --
8802           l_data_sal_act_mth2_tbl(l_mth2_tbl_cnt) := l_csr_data_ass_new.proc_assignment_action_id;
8803           l_mth2_tbl_cnt := l_mth2_tbl_cnt + 1;
8804         --
8805           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth2 := l_csr_data_ass_new.proc_assignment_action_id;
8806           l_data_tbl(l_data_tbl_cnt).act_mth2_tbl := l_data_sal_act_mth2_tbl;
8807         --
8808         elsif to_char(l_csr_data_ass_new.effective_date,'MM') = '03' then
8809         --
8810           l_data_sal_act_mth3_tbl(l_mth3_tbl_cnt) := l_csr_data_ass_new.proc_assignment_action_id;
8811           l_mth3_tbl_cnt := l_mth3_tbl_cnt + 1;
8812         --
8813           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth3 := l_csr_data_ass_new.proc_assignment_action_id;
8814           l_data_tbl(l_data_tbl_cnt).act_mth3_tbl := l_data_sal_act_mth3_tbl;
8815         --
8816         elsif to_char(l_csr_data_ass_new.effective_date,'MM') = '04' then
8817         --
8818           l_data_sal_act_mth4_tbl(l_mth4_tbl_cnt) := l_csr_data_ass_new.proc_assignment_action_id;
8819           l_mth4_tbl_cnt := l_mth4_tbl_cnt + 1;
8820         --
8821           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth4 := l_csr_data_ass_new.proc_assignment_action_id;
8822           l_data_tbl(l_data_tbl_cnt).act_mth4_tbl := l_data_sal_act_mth4_tbl;
8823         --
8824         elsif to_char(l_csr_data_ass_new.effective_date,'MM') = '05' then
8825         --
8826           l_data_sal_act_mth5_tbl(l_mth5_tbl_cnt) := l_csr_data_ass_new.proc_assignment_action_id;
8827           l_mth5_tbl_cnt := l_mth5_tbl_cnt + 1;
8828         --
8829           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth5 := l_csr_data_ass_new.proc_assignment_action_id;
8830           l_data_tbl(l_data_tbl_cnt).act_mth5_tbl := l_data_sal_act_mth5_tbl;
8831         --
8832         elsif to_char(l_csr_data_ass_new.effective_date,'MM') = '06' then
8833         --
8834           l_data_sal_act_mth6_tbl(l_mth6_tbl_cnt) := l_csr_data_ass_new.proc_assignment_action_id;
8835           l_mth6_tbl_cnt := l_mth6_tbl_cnt + 1;
8836         --
8837           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth6 := l_csr_data_ass_new.proc_assignment_action_id;
8838           l_data_tbl(l_data_tbl_cnt).act_mth6_tbl := l_data_sal_act_mth6_tbl;
8839         --
8840         elsif to_char(l_csr_data_ass_new.effective_date,'MM') = '07' then
8841         --
8842           l_data_sal_act_mth7_tbl(l_mth7_tbl_cnt) := l_csr_data_ass_new.proc_assignment_action_id;
8843           l_mth7_tbl_cnt := l_mth7_tbl_cnt + 1;
8844         --
8845           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth7 := l_csr_data_ass_new.proc_assignment_action_id;
8846           l_data_tbl(l_data_tbl_cnt).act_mth7_tbl := l_data_sal_act_mth7_tbl;
8847         --
8848         elsif to_char(l_csr_data_ass_new.effective_date,'MM') = '08' then
8849         --
8850           l_data_sal_act_mth8_tbl(l_mth8_tbl_cnt) := l_csr_data_ass_new.proc_assignment_action_id;
8851           l_mth8_tbl_cnt := l_mth8_tbl_cnt + 1;
8852         --
8853           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth8 := l_csr_data_ass_new.proc_assignment_action_id;
8854           l_data_tbl(l_data_tbl_cnt).act_mth8_tbl := l_data_sal_act_mth8_tbl;
8855         --
8856         elsif to_char(l_csr_data_ass_new.effective_date,'MM') = '09' then
8857         --
8858           l_data_sal_act_mth9_tbl(l_mth9_tbl_cnt) := l_csr_data_ass_new.proc_assignment_action_id;
8859           l_mth9_tbl_cnt := l_mth9_tbl_cnt + 1;
8860         --
8861           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth9 := l_csr_data_ass_new.proc_assignment_action_id;
8862           l_data_tbl(l_data_tbl_cnt).act_mth9_tbl := l_data_sal_act_mth9_tbl;
8863         --
8864         elsif to_char(l_csr_data_ass_new.effective_date,'MM') = '10' then
8865         --
8866           l_data_sal_act_mth10_tbl(l_mth10_tbl_cnt) := l_csr_data_ass_new.proc_assignment_action_id;
8867           l_mth10_tbl_cnt := l_mth10_tbl_cnt + 1;
8868         --
8869           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth10 := l_csr_data_ass_new.proc_assignment_action_id;
8870           l_data_tbl(l_data_tbl_cnt).act_mth10_tbl := l_data_sal_act_mth10_tbl;
8871         --
8872         elsif to_char(l_csr_data_ass_new.effective_date,'MM') = '11' then
8873         --
8874           l_data_sal_act_mth11_tbl(l_mth11_tbl_cnt) := l_csr_data_ass_new.proc_assignment_action_id;
8875           l_mth11_tbl_cnt := l_mth11_tbl_cnt + 1;
8876         --
8877           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth11 := l_csr_data_ass_new.proc_assignment_action_id;
8878           l_data_tbl(l_data_tbl_cnt).act_mth11_tbl := l_data_sal_act_mth11_tbl;
8879         --
8880         elsif to_char(l_csr_data_ass_new.effective_date,'MM') = '12' then
8881         --
8882           l_data_sal_act_mth12_tbl(l_mth12_tbl_cnt) := l_csr_data_ass_new.proc_assignment_action_id;
8883           l_mth12_tbl_cnt := l_mth12_tbl_cnt + 1;
8884         --
8885           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth12 := l_csr_data_ass_new.proc_assignment_action_id;
8886           l_data_tbl(l_data_tbl_cnt).act_mth12_tbl := l_data_sal_act_mth12_tbl;
8887         --
8888         end if;
8889       --
8890         if g_debug
8891         and g_detail_debug = 'Y' then
8892           l_archini_step := 31;
8893         end if;
8894       --
8895         -- set g_data_sal_tbl based on l_data_tbl(l_data_tbl_cnt).sal_act_act_mth1-12 for each month
8896         set_data_sal_tbl(
8897           p_assignment_action_id    => l_csr_data_ass_new.proc_assignment_action_id,
8898           p_assignment_id           => l_csr_data_ass_new.assignment_id,
8899           p_data_ass_effective_date => l_csr_data_ass_new.effective_date,
8900           p_data_ass_date_earned    => l_csr_data_ass_new.date_earned,
8901           p_data_ass_payroll_id     => l_csr_data_ass_new.payroll_id);
8902       --
8903         if g_debug
8904         and g_detail_debug = 'Y' then
8905           l_archini_step := 32;
8906         end if;
8907       --
8908         -- set g_data_sal_ass_pay_tbl on each pay change for each assignment
8909         -- set g_data_pay_tbl based on arch_assignment_action_id
8910         set_data_sal_pay_tbl(
8911           p_assignment_action_id => l_csr_data_ass_new.arch_assignment_action_id,
8912           p_assignment_id        => l_csr_data_ass_new.assignment_id,
8913           p_data_ass_payroll_id  => l_csr_data_ass_new.payroll_id);
8914       --
8915         if g_debug
8916         and g_detail_debug = 'Y' then
8917           l_archini_step := 33;
8918         end if;
8919       --
8920         -- call set_item_info_tbl, set g_item_info_ind_tbl based on ass payroll, data will be extracted from org info and ordered by disp sequence
8921         -- and set item type, item id into g_item_info_xxx_tbl based on g_item_info_ind_tbl.start-end cnt each item type for payroll, ie. sal_ern, sal_dct, bon_ern, bon_dct, wrk
8922         --
8923         -- set g_data_item_ass_xxx_tbl based on item_pk for each assignment, which is set on g_item_info_xxx_tbl
8924         -- call set_data_item_tbl_sal_val, set_data_item_tbl_bon_val to set data into g_data_item_ass_xxx_tbl for each month, cnt
8925         --
8926         -- set g_data_item_tbl based on l_data_tbl(l_data_tbl_cnt).sal_act_act_mth1-12 for each month
8927         set_data_item_tbl(
8928           p_assignment_action_id => l_csr_data_ass_new.proc_assignment_action_id,
8929           p_type                 => 'SAL_ERN',
8930           p_data_ass_payroll_id  => l_csr_data_ass_new.payroll_id,
8931           p_data_ass_date_earned => l_csr_data_ass_new.date_earned);
8932       --
8933         if g_debug
8934         and g_detail_debug = 'Y' then
8935           l_archini_step := 34;
8936         end if;
8937       --
8938         set_data_item_tbl(
8939           p_assignment_action_id => l_csr_data_ass_new.proc_assignment_action_id,
8940           p_type                 => 'SAL_DCT',
8941           p_data_ass_payroll_id  => l_csr_data_ass_new.payroll_id,
8942           p_data_ass_date_earned => l_csr_data_ass_new.date_earned);
8943       --
8944         if g_debug
8945         and g_detail_debug = 'Y' then
8946           l_archini_step := 35;
8947         end if;
8948       --
8949         set_data_item_tbl(
8950           p_assignment_action_id => l_csr_data_ass_new.proc_assignment_action_id,
8951           p_type                 => 'WRK',
8952           p_data_ass_payroll_id  => l_csr_data_ass_new.payroll_id,
8953           p_data_ass_date_earned => l_csr_data_ass_new.date_earned);
8954       --
8955         if g_debug
8956         and g_detail_debug = 'Y' then
8957           l_archini_step := 36;
8958         end if;
8959       --
8960         -- set data for the latest action (the last record) for dependent and use to set pay tbl
8961         l_sal_assignment_action_id := l_csr_data_ass_new.proc_assignment_action_id;
8962         l_sal_date_earned          := l_csr_data_ass_new.date_earned;
8963       --
8964         if g_debug
8965         and g_detail_debug = 'Y' then
8966           l_archini_step := 37;
8967         end if;
8968       --
8969       elsif l_csr_data_ass_new.proc_type = 'BON'
8970       or l_csr_data_ass_new.proc_type = 'SPB' then
8971       --
8972         if g_debug
8973         and g_detail_debug = 'Y' then
8974           l_archini_step := 38;
8975         end if;
8976       --
8977         -- support to store only 15 first records, inconsiderable business case for more over
8978         if l_bon_tbl_cnt < 15 then
8979         --
8980           if g_debug
8981           and g_detail_debug = 'Y' then
8982             l_archini_step := 39;
8983           end if;
8984         --
8985           if l_bon_tbl_cnt = 0 then
8986           --
8987             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt1 := l_csr_data_ass_new.proc_assignment_action_id;
8988           --
8989           elsif l_bon_tbl_cnt = 1 then
8990           --
8991             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt2 := l_csr_data_ass_new.proc_assignment_action_id;
8992           --
8993           elsif l_bon_tbl_cnt = 2 then
8994           --
8995             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt3 := l_csr_data_ass_new.proc_assignment_action_id;
8996           --
8997           elsif l_bon_tbl_cnt = 3 then
8998           --
8999             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt4 := l_csr_data_ass_new.proc_assignment_action_id;
9000           --
9001           elsif l_bon_tbl_cnt = 4 then
9002           --
9003             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt5 := l_csr_data_ass_new.proc_assignment_action_id;
9004           --
9005           elsif l_bon_tbl_cnt = 5 then
9006           --
9007             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt6 := l_csr_data_ass_new.proc_assignment_action_id;
9008           --
9009           elsif l_bon_tbl_cnt = 6 then
9010           --
9011             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt7 := l_csr_data_ass_new.proc_assignment_action_id;
9012           --
9013           elsif l_bon_tbl_cnt = 7 then
9014           --
9015             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt8 := l_csr_data_ass_new.proc_assignment_action_id;
9016           --
9017           elsif l_bon_tbl_cnt = 8 then
9018           --
9019             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt9 := l_csr_data_ass_new.proc_assignment_action_id;
9020           --
9021           elsif l_bon_tbl_cnt = 9 then
9022           --
9023             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt10 := l_csr_data_ass_new.proc_assignment_action_id;
9024           --
9025           elsif l_bon_tbl_cnt = 10 then
9026           --
9027             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt11 := l_csr_data_ass_new.proc_assignment_action_id;
9028           --
9029           elsif l_bon_tbl_cnt = 11 then
9030           --
9031             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt12 := l_csr_data_ass_new.proc_assignment_action_id;
9032           --
9033           elsif l_bon_tbl_cnt = 12 then
9034           --
9035             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt13 := l_csr_data_ass_new.proc_assignment_action_id;
9036           --
9037           elsif l_bon_tbl_cnt = 13 then
9038           --
9039             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt14 := l_csr_data_ass_new.proc_assignment_action_id;
9040           --
9041           elsif l_bon_tbl_cnt = 14 then
9042           --
9043             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt15 := l_csr_data_ass_new.proc_assignment_action_id;
9044           --
9045           end if;
9046         --
9047           if g_debug
9048           and g_detail_debug = 'Y' then
9049             l_archini_step := 40;
9050           end if;
9051         --
9052           -- set g_data_bon_tbl based on l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt1-15 for each cnt
9053           set_data_bon_tbl(
9054             p_assignment_action_id    => l_csr_data_ass_new.proc_assignment_action_id,
9055             p_assignment_id           => l_csr_data_ass_new.assignment_id,
9056             p_data_ass_effective_date => l_csr_data_ass_new.effective_date,
9057             p_data_ass_date_earned    => l_csr_data_ass_new.date_earned,
9058             p_data_ass_payroll_id     => l_csr_data_ass_new.payroll_id,
9059             p_data_ass_proc_type      => l_csr_data_ass_new.proc_type);
9060         --
9061           if g_debug
9062           and g_detail_debug = 'Y' then
9063             l_archini_step := 41;
9064           end if;
9065         --
9066           -- set g_data_bon_ass_pay_tbl on each pay change for each assignment
9067           -- set g_data_pay_tbl based on arch_assignment_action_id
9068           set_data_bon_pay_tbl(
9069             p_assignment_action_id => l_csr_data_ass_new.arch_assignment_action_id,
9070             p_assignment_id        => l_csr_data_ass_new.assignment_id,
9071             p_data_ass_payroll_id  => l_csr_data_ass_new.payroll_id);
9072         --
9073           if g_debug
9074           and g_detail_debug = 'Y' then
9075             l_archini_step := 42;
9076           end if;
9077         --
9078         -- call set_item_info_tbl, set g_item_info_ind_tbl based on ass payroll, data will be extracted from org info and ordered by disp sequence
9079         -- and set item type, item id into g_item_info_xxx_tbl based on g_item_info_ind_tbl.start-end cnt each item type for payroll, ie. sal_ern, sal_dct, bon_ern, bon_dct, wrk
9080         --
9081         -- set g_data_item_ass_xxx_tbl based on item_pk for each assignment, which is set on g_item_info_xxx_tbl
9082         -- call set_data_item_tbl_sal_val, set_data_item_tbl_bon_val to set data into g_data_item_ass_xxx_tbl for each month, cnt
9083         --
9084         -- set g_data_item_tbl based on l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt1-15 for each cnt
9085           set_data_item_tbl(
9086             p_assignment_action_id => l_csr_data_ass_new.proc_assignment_action_id,
9087             p_type                 => 'BON_ERN',
9088             p_data_ass_payroll_id  => l_csr_data_ass_new.payroll_id,
9089             p_data_ass_date_earned => l_csr_data_ass_new.date_earned);
9090         --
9091           if g_debug
9092           and g_detail_debug = 'Y' then
9093             l_archini_step := 43;
9094           end if;
9095         --
9096           set_data_item_tbl(
9097             p_assignment_action_id => l_csr_data_ass_new.proc_assignment_action_id,
9098             p_type                 => 'BON_DCT',
9099             p_data_ass_payroll_id  => l_csr_data_ass_new.payroll_id,
9100             p_data_ass_date_earned => l_csr_data_ass_new.date_earned);
9101         --
9102           if g_debug
9103           and g_detail_debug = 'Y' then
9104             l_archini_step := 44;
9105           end if;
9106         --
9107         end if;
9108       --
9109         if g_debug
9110         and g_detail_debug = 'Y' then
9111           l_archini_step := 45;
9112         end if;
9113       --
9114         -- latest bon for assignment, use to set pay tbl
9115         l_bon_assignment_action_id := l_csr_data_ass_new.proc_assignment_action_id;
9116       --
9117         l_bon_tbl_cnt := l_bon_tbl_cnt + 1;
9118       --
9119         if g_debug
9120         and g_detail_debug = 'Y' then
9121           l_archini_step := 46;
9122         end if;
9123       --
9124       elsif l_csr_data_ass_new.proc_type = 'YEA'
9125       or l_csr_data_ass_new.proc_type = 'REY' then
9126       --
9127         if g_debug
9128         and g_detail_debug = 'Y' then
9129           l_archini_step := 47;
9130         end if;
9131       --
9132         -- set data for the latest action (the last record)
9133         l_yea_assignment_action_id := l_csr_data_ass_new.proc_assignment_action_id;
9134       --
9135         l_yea_tbl_cnt := l_yea_tbl_cnt + 1;
9136       --
9137       end if;
9138     --
9139       if g_debug
9140       and g_detail_debug = 'Y' then
9141         l_archini_step := 48;
9142       end if;
9143     --
9144     end loop;
9145     close csr_data_ass_new;
9146   --
9147     if g_debug
9148     and g_detail_debug = 'Y' then
9149       l_archini_step := 49;
9150       hr_utility.set_location(l_proc,30);
9151       hr_utility.trace('l_data_tbl_cnt   : '||to_char(l_data_tbl_cnt));
9152       hr_utility.trace('l_data_tbl.count : '||to_char(l_data_tbl.count));
9153     end if;
9154   --
9155     -- set data for the last action of the last assignment since set data for the previous assignment in loop
9156     if l_data_tbl_cnt > 0 then
9157     --
9158       if g_debug
9159       and g_detail_debug = 'Y' then
9160         l_archini_step := 50;
9161       end if;
9162     --
9163       l_data_tbl(l_data_tbl_cnt).emp_si_itax_org_id := pay_jp_balance_pkg.get_entry_value_number(c_itx_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9164       l_data_tbl(l_data_tbl_cnt).emp_si_itax_type   := pay_jp_balance_pkg.get_entry_value_char(c_itx_type_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9165       l_data_tbl(l_data_tbl_cnt).emp_si_hi_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_hi_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9166       l_data_tbl(l_data_tbl_cnt).emp_si_hi_number   := pay_jp_balance_pkg.get_entry_value_char(c_hi_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9167       l_data_tbl(l_data_tbl_cnt).emp_si_wp_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_wp_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9168       l_data_tbl(l_data_tbl_cnt).emp_si_wp_number   := pay_jp_balance_pkg.get_entry_value_char(c_wp_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9169       l_data_tbl(l_data_tbl_cnt).emp_si_wpf_org_id  := pay_jp_balance_pkg.get_entry_value_number(c_wpf_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9170       l_data_tbl(l_data_tbl_cnt).emp_si_wpf_number  := pay_jp_balance_pkg.get_entry_value_char(c_wpf_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9171       l_data_tbl(l_data_tbl_cnt).emp_si_ei_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_ei_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9172       l_data_tbl(l_data_tbl_cnt).emp_si_ei_number   := pay_jp_balance_pkg.get_entry_value_char(c_ei_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9173       --
9174       l_nres_flag_eev                                      := pay_jp_balance_pkg.get_entry_value_char(c_nres_flag_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9175       l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date    := pay_jp_balance_pkg.get_entry_value_date(c_nres_start_date_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9176       l_data_tbl(l_data_tbl_cnt).emp_si_projected_res_date := pay_jp_balance_pkg.get_entry_value_date(c_projected_res_date_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9177       --
9178       if g_debug
9179       and g_detail_debug = 'Y' then
9180         l_archini_step := 51;
9181       end if;
9182       --
9183       if l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date is not null then
9184       --
9185         if g_debug
9186         and g_detail_debug = 'Y' then
9187           l_archini_step := 52;
9188         end if;
9189       --
9190         if l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date <= l_data_tbl(l_data_tbl_cnt).assact_effective_date
9191         and nvl(l_data_tbl(l_data_tbl_cnt).emp_si_projected_res_date,l_data_tbl(l_data_tbl_cnt).assact_effective_date + 1) > l_data_tbl(l_data_tbl_cnt).assact_effective_date then
9192         --
9193           l_data_tbl(l_data_tbl_cnt).emp_si_nres_flag := 'Y';
9194         --
9195         end if;
9196       --
9197         if g_debug
9198         and g_detail_debug = 'Y' then
9199           l_archini_step := 53;
9200         end if;
9201       --
9202       else
9203       --
9204         if g_debug
9205         and g_detail_debug = 'Y' then
9206           l_archini_step := 54;
9207         end if;
9208       --
9209         if nvl(l_nres_flag_eev,'N') = 'Y' then
9210         --
9211           l_data_tbl(l_data_tbl_cnt).emp_si_nres_flag := 'Y';
9212         --
9213         end if;
9214       --
9215       end if;
9216     --
9217       if g_debug
9218       and g_detail_debug = 'Y' then
9219         l_archini_step := 55;
9220       end if;
9221     --
9222       -- latest yea for assignment (ie. yea exist)
9223       if l_yea_assignment_action_id is not null then
9224       --
9225         if g_debug
9226         and g_detail_debug = 'Y' then
9227           l_archini_step := 56;
9228         end if;
9229       --
9230         l_data_tbl(l_data_tbl_cnt).yea_act := l_yea_assignment_action_id;
9231       --
9232         if g_debug
9233         and g_detail_debug = 'Y' then
9234           l_archini_step := 57;
9235         end if;
9236       --
9237         -- set g_data_yea_tbl based on l_data_tbl(l_data_tbl_cnt).yea_act
9238         -- called set_yea_wic_tbl, set g_yea_wic_tbl based on l_data_tbl(l_data_tbl_cnt).yea_act
9239         set_data_yea_tbl(
9240           p_assignment_action_id => l_yea_assignment_action_id,
9241           p_assignment_id        => l_assignment_id,
9242           p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
9243           p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
9244           p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
9245           p_payroll_id           => l_data_tbl(l_data_tbl_cnt).assact_payroll_id,
9246           p_proc_type            => l_data_tbl(l_data_tbl_cnt).assact_proc_type);
9247       --
9248         if g_debug
9249         and g_detail_debug = 'Y' then
9250           l_archini_step := 58;
9251         end if;
9252       --
9253       end if;
9254     --
9255       if g_debug
9256       and g_detail_debug = 'Y' then
9257         l_archini_step := 59;
9258       end if;
9259     --
9260       -- latest sal for assignment, use to get dpnt info and use to set pay tbl
9261       if l_sal_assignment_action_id is not null then
9262       --
9263         if g_debug
9264         and g_detail_debug = 'Y' then
9265           l_archini_step := 60;
9266         end if;
9267       --
9268         l_data_tbl(l_data_tbl_cnt).sal_act := l_sal_assignment_action_id;
9269         l_data_tbl(l_data_tbl_cnt).sal_erd := l_sal_date_earned;
9270       --
9271         if g_debug
9272         and g_detail_debug = 'Y' then
9273           l_archini_step := 61;
9274         end if;
9275       --
9276       end if;
9277     --
9278       if g_debug
9279       and g_detail_debug = 'Y' then
9280         l_archini_step := 62;
9281       end if;
9282     --
9283       -- latest bon for assignment, use to set pay tbl
9284       if l_bon_assignment_action_id is not null then
9285       --
9286         l_data_tbl(l_data_tbl_cnt).bon_act := l_bon_assignment_action_id;
9287       --
9288       end if;
9289     --
9290       if g_debug
9291       and g_detail_debug = 'Y' then
9292         l_archini_step := 63;
9293       end if;
9294     --
9295       -- need to set g_yea_wic_tbl.prev_jobs for yea, rey before here (ie. by above set_data_yea_tbl)
9296       -- otherwise set l_prev_jobs for latest sal, bon
9297       if l_data_tbl(l_data_tbl_cnt).assact_proc_type = 'YEA'
9298       or l_data_tbl(l_data_tbl_cnt).assact_proc_type = 'REY' then
9299       --
9300         if g_debug
9301         and g_detail_debug = 'Y' then
9302           l_archini_step := 64;
9303         end if;
9304       --
9305         if g_yea_wic_tbl.count > 0 then
9306         --
9307           l_prev_jobs := g_yea_wic_tbl(l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id).prev_jobs;
9308         --
9309         end if;
9310       --
9311         if g_debug
9312         and g_detail_debug = 'Y' then
9313           l_archini_step := 65;
9314         end if;
9315       --
9316       else
9317       --
9318         if g_debug
9319         and g_detail_debug = 'Y' then
9320           l_archini_step := 66;
9321         end if;
9322       --
9323         pay_jp_wic_pkg.get_prev_jobs(
9324           p_assignment_id        => l_assignment_id,
9325           p_action_sequence      => l_data_tbl(l_data_tbl_cnt).assact_action_sequence,
9326           p_business_group_id    => g_business_group_id,
9327           p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
9328           p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
9329           p_itax_organization_id => l_data_tbl(l_data_tbl_cnt).emp_si_itax_org_id,
9330           p_person_id            => l_data_tbl(l_data_tbl_cnt).emp_person_id,
9331           p_prev_jobs            => l_prev_jobs);
9332       --
9333         if g_debug
9334         and g_detail_debug = 'Y' then
9335           l_archini_step := 67;
9336         end if;
9337       --
9338       end if;
9339     --
9340       if g_debug
9341       and g_detail_debug = 'Y' then
9342         l_archini_step := 68;
9343       end if;
9344     --
9345       if l_prev_jobs.count > 0 then
9346       --
9347         l_data_tbl(l_data_tbl_cnt).pjob_cnt := l_prev_jobs.count;
9348       --
9349       end if;
9350     --
9351       -- set g_data_pjob_ind_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
9352       -- set g_data_pjob_tbl based on g_data_pjob_ind_tbl.rec_ind1-15
9353       set_data_pjob_tbl(
9354         p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
9355         p_assignment_id        => l_assignment_id,
9356         p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
9357         p_prev_jobs            => l_prev_jobs);
9358     --
9359       if g_debug
9360       and g_detail_debug = 'Y' then
9361         l_archini_step := 69;
9362       end if;
9363     --
9364       -- set g_data_dpnt_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
9365       -- called set_yea_wic_tbl
9366       set_data_dpnt_tbl(
9367         p_assignment_action_id     => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
9368         p_assignment_id            => l_assignment_id,
9369         p_employee_number          => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
9370         p_effective_date           => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
9371         p_date_earned              => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
9372         p_proc_type                => l_data_tbl(l_data_tbl_cnt).assact_proc_type,
9373         p_dpnt_ref_type            => l_data_tbl(l_data_tbl_cnt).assact_dpnt_ref_type,
9374         p_sal_assignment_action_id => l_data_tbl(l_data_tbl_cnt).sal_act,
9375         p_sal_date_earned          => l_data_tbl(l_data_tbl_cnt).sal_erd);
9376     --
9377       if g_debug
9378       and g_detail_debug = 'Y' then
9379         l_archini_step := 70;
9380       end if;
9381     --
9382       -- set g_data_cust_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
9383       set_data_cust_tbl(
9384         p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
9385         p_assignment_id        => l_assignment_id,
9386         p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
9387         p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
9388         p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9389     --
9390       if g_debug
9391       and g_detail_debug = 'Y' then
9392         l_archini_step := 71;
9393       end if;
9394     --
9395       if l_bon_tbl_cnt > 15 then
9396       --
9397         if g_debug
9398         and g_detail_debug = 'Y' then
9399           l_archini_step := 72;
9400         end if;
9401       --
9402         g_wng_tbl(g_wng_tbl_cnt).assignment_id   := l_assignment_id;
9403         g_wng_tbl(g_wng_tbl_cnt).employee_number := l_data_tbl(l_data_tbl_cnt).emp_employee_number;
9404         g_wng_tbl(g_wng_tbl_cnt).message_text    := fnd_message.get_string('PAY','PAY_JP_ITWB_BON_OVER');
9405       --
9406         g_wng_tbl_cnt := g_wng_tbl_cnt + 1;
9407       --
9408         if g_debug
9409         and g_detail_debug = 'Y' then
9410           l_archini_step := 73;
9411         end if;
9412       --
9413       end if;
9414     --
9415       if g_debug
9416       and g_detail_debug = 'Y' then
9417         l_archini_step := 74;
9418       end if;
9419     --
9420     end if;
9421   --
9422     if g_debug
9423     and g_detail_debug = 'Y' then
9424       l_archini_step := 75;
9425       hr_utility.set_location(l_proc,40);
9426     end if;
9427   --
9428   -- -----------------------------------
9429   -- ADD
9430   -- -----------------------------------
9431   elsif g_arch_option = 'ADD' then
9432   --
9433     if g_debug
9434     and g_detail_debug = 'Y' then
9435       l_archini_step := 76;
9436       hr_utility.set_location(l_proc,50);
9437     end if;
9438   --
9439     open csr_data_ass_add;
9440     loop
9441     --
9442       fetch csr_data_ass_add into l_csr_data_ass_add;
9443       exit when csr_data_ass_add%notfound;
9444     --
9445       -- increment l_data_tbl_cnt for each assignment
9446       if l_assignment_id is null
9447       or l_assignment_id <> l_csr_data_ass_add.assignment_id then
9448       --
9449         if g_debug
9450         and g_detail_debug = 'Y' then
9451           l_archini_step := 77;
9452         end if;
9453       --
9454         -- set data for the latest action (the last record) of the previous assignment
9455         -- set data after exit loop for the last record
9456         if l_data_tbl_cnt > 0 then
9457         --
9458           --
9459           if g_debug
9460           and g_detail_debug = 'Y' then
9461             l_archini_step := 78;
9462           end if;
9463         --
9464           -- will copy latest assact data to new assact through archive generation except for new assignment
9465           -- if user wants to update to latest information, use update mode
9466           if l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is null then
9467           --
9468             open csr_data_ass_add_info(l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_effective_date);
9469             fetch csr_data_ass_add_info into l_csr_data_ass_add_info;
9470             --
9471               if g_debug
9472               and g_detail_debug = 'Y' then
9473                 l_archini_step := 79;
9474               end if;
9475             --
9476               if not csr_data_ass_add_info%notfound then
9477               --
9478                 if g_debug
9479                 and g_detail_debug = 'Y' then
9480                    l_archini_step := 80;
9481                 end if;
9482               --
9483                 l_data_tbl(l_data_tbl_cnt).assact_organization_id  := l_csr_data_ass_add_info.organization_id;
9484                 l_data_tbl(l_data_tbl_cnt).assact_job_id           := l_csr_data_ass_add_info.job_id;
9485                 l_data_tbl(l_data_tbl_cnt).assact_payroll_id       := l_csr_data_ass_add_info.payroll_id;
9486                 l_data_tbl(l_data_tbl_cnt).assact_location_id      := l_csr_data_ass_add_info.location_id;
9487                 l_data_tbl(l_data_tbl_cnt).assact_termination_date := l_csr_data_ass_add_info.termination_date;
9488                 l_data_tbl(l_data_tbl_cnt).assact_leaving_reason   := l_csr_data_ass_add_info.leaving_reason;
9489                 --
9490                 l_data_tbl(l_data_tbl_cnt).emp_person_id       := l_csr_data_ass_add_info.person_id;
9491                 l_data_tbl(l_data_tbl_cnt).emp_employee_number := l_csr_data_ass_add_info.employee_number;
9492                 l_data_tbl(l_data_tbl_cnt).emp_last_name       := l_csr_data_ass_add_info.last_name;
9493                 l_data_tbl(l_data_tbl_cnt).emp_first_name      := l_csr_data_ass_add_info.first_name;
9494                 l_data_tbl(l_data_tbl_cnt).emp_last_name_kana  := l_csr_data_ass_add_info.last_name_kana;
9495                 l_data_tbl(l_data_tbl_cnt).emp_first_name_kana := l_csr_data_ass_add_info.first_name_kana;
9496                 l_data_tbl(l_data_tbl_cnt).emp_sex             := l_csr_data_ass_add_info.sex;
9497                 l_data_tbl(l_data_tbl_cnt).emp_birth_date      := l_csr_data_ass_add_info.birth_date;
9498                 --
9499                 l_data_tbl(l_data_tbl_cnt).emp_add_address_id    := l_csr_data_ass_add_info.address_id;
9500                 l_data_tbl(l_data_tbl_cnt).emp_add_address_jp    := l_csr_data_ass_add_info.address_jp;
9501                 l_data_tbl(l_data_tbl_cnt).emp_add_postal_code   := l_csr_data_ass_add_info.postal_code;
9502                 l_data_tbl(l_data_tbl_cnt).emp_add_district_code := l_csr_data_ass_add_info.district_code;
9503                 l_data_tbl(l_data_tbl_cnt).emp_add_address       := l_csr_data_ass_add_info.address;
9504                 l_data_tbl(l_data_tbl_cnt).emp_add_address_kana  := l_csr_data_ass_add_info.address_kana;
9505                 l_data_tbl(l_data_tbl_cnt).emp_add_phone1        := l_csr_data_ass_add_info.phone1;
9506                 l_data_tbl(l_data_tbl_cnt).emp_add_phone2        := l_csr_data_ass_add_info.phone2;
9507                 --
9508                 l_data_tbl(l_data_tbl_cnt).emp_ass_hire_date         := l_csr_data_ass_add_info.hire_date;
9509                 l_data_tbl(l_data_tbl_cnt).emp_ass_organization_name := l_csr_data_ass_add_info.organization_name;
9510                 l_data_tbl(l_data_tbl_cnt).emp_ass_job_name          := l_csr_data_ass_add_info.job_name;
9511                 l_data_tbl(l_data_tbl_cnt).emp_ass_payroll_name      := l_csr_data_ass_add_info.payroll_name;
9512                 l_data_tbl(l_data_tbl_cnt).emp_ass_location_name     := l_csr_data_ass_add_info.location_code;
9513               --
9514                 if g_debug
9515                 and g_detail_debug = 'Y' then
9516                    l_archini_step := 81;
9517                 end if;
9518               --
9519               end if;
9520             --
9521             close csr_data_ass_add_info;
9522           --
9523             if g_debug
9524             and g_detail_debug = 'Y' then
9525               l_archini_step := 82;
9526             end if;
9527           --
9528             l_data_tbl(l_data_tbl_cnt).emp_si_itax_org_id := pay_jp_balance_pkg.get_entry_value_number(c_itx_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9529             l_data_tbl(l_data_tbl_cnt).emp_si_itax_type   := pay_jp_balance_pkg.get_entry_value_char(c_itx_type_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9530             l_data_tbl(l_data_tbl_cnt).emp_si_hi_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_hi_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9531             l_data_tbl(l_data_tbl_cnt).emp_si_hi_number   := pay_jp_balance_pkg.get_entry_value_char(c_hi_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9532             l_data_tbl(l_data_tbl_cnt).emp_si_wp_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_wp_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9533             l_data_tbl(l_data_tbl_cnt).emp_si_wp_number   := pay_jp_balance_pkg.get_entry_value_char(c_wp_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9534             l_data_tbl(l_data_tbl_cnt).emp_si_wpf_org_id  := pay_jp_balance_pkg.get_entry_value_number(c_wpf_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9535             l_data_tbl(l_data_tbl_cnt).emp_si_wpf_number  := pay_jp_balance_pkg.get_entry_value_char(c_wpf_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9536             l_data_tbl(l_data_tbl_cnt).emp_si_ei_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_ei_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9537             l_data_tbl(l_data_tbl_cnt).emp_si_ei_number   := pay_jp_balance_pkg.get_entry_value_char(c_ei_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9538             --
9539             l_nres_flag_eev                                      := pay_jp_balance_pkg.get_entry_value_char(c_nres_flag_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9540             l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date    := pay_jp_balance_pkg.get_entry_value_date(c_nres_start_date_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9541             l_data_tbl(l_data_tbl_cnt).emp_si_projected_res_date := pay_jp_balance_pkg.get_entry_value_date(c_projected_res_date_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9542             --
9543             if g_debug
9544             and g_detail_debug = 'Y' then
9545               l_archini_step := 83;
9546             end if;
9547             --
9548             if l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date is not null then
9549             --
9550               if g_debug
9551               and g_detail_debug = 'Y' then
9552                 l_archini_step := 84;
9553               end if;
9554             --
9555               if l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date <= l_data_tbl(l_data_tbl_cnt).assact_effective_date
9556               and nvl(l_data_tbl(l_data_tbl_cnt).emp_si_projected_res_date,l_data_tbl(l_data_tbl_cnt).assact_effective_date + 1) > l_data_tbl(l_data_tbl_cnt).assact_effective_date then
9557               --
9558                 l_data_tbl(l_data_tbl_cnt).emp_si_nres_flag := 'Y';
9559               --
9560               end if;
9561             --
9562             else
9563             --
9564               if g_debug
9565               and g_detail_debug = 'Y' then
9566                 l_archini_step := 85;
9567               end if;
9568             --
9569               if nvl(l_nres_flag_eev,'N') = 'Y' then
9570               --
9571                 l_data_tbl(l_data_tbl_cnt).emp_si_nres_flag := 'Y';
9572               --
9573               end if;
9574             --
9575             end if;
9576           --
9577             if g_debug
9578             and g_detail_debug = 'Y' then
9579               l_archini_step := 86;
9580             end if;
9581           --
9582           end if;
9583         --
9584           -- latest sal for assignment, use to get dpnt info and use to set pay tbl
9585           if l_sal_assignment_action_id is not null then
9586           --
9587             if g_debug
9588             and g_detail_debug = 'Y' then
9589               l_archini_step := 87;
9590             end if;
9591           --
9592             l_data_tbl(l_data_tbl_cnt).sal_act := l_sal_assignment_action_id;
9593             l_data_tbl(l_data_tbl_cnt).sal_erd := l_sal_date_earned;
9594           --
9595             if g_debug
9596             and g_detail_debug = 'Y' then
9597               l_archini_step := 88;
9598             end if;
9599           --
9600           end if;
9601         --
9602           if g_debug
9603           and g_detail_debug = 'Y' then
9604             l_archini_step := 89;
9605           end if;
9606         --
9607           -- latest bon for assignment, use to set pay tbl
9608           if l_bon_assignment_action_id is not null then
9609           --
9610             if g_debug
9611             and g_detail_debug = 'Y' then
9612               l_archini_step := 90;
9613             end if;
9614           --
9615             l_data_tbl(l_data_tbl_cnt).bon_act := l_bon_assignment_action_id;
9616           --
9617           end if;
9618         --
9619           if g_debug
9620           and g_detail_debug = 'Y' then
9621             l_archini_step := 91;
9622           end if;
9623         --
9624           -- latest yea for assignment (ie. yea exist)
9625           if l_yea_assignment_action_id is not null then
9626           --
9627             if g_debug
9628             and g_detail_debug = 'Y' then
9629               l_archini_step := 92;
9630             end if;
9631           --
9632             l_data_tbl(l_data_tbl_cnt).yea_act := l_yea_assignment_action_id;
9633           --
9634             if g_debug
9635             and g_detail_debug = 'Y' then
9636               l_archini_step := 93;
9637             end if;
9638           --
9639             -- set g_data_yea_tbl based on l_data_tbl(l_data_tbl_cnt).yea_act
9640             -- called set_yea_wic_tbl, set g_yea_wic_tbl based on l_data_tbl(l_data_tbl_cnt).yea_act
9641             set_data_yea_tbl(
9642               p_assignment_action_id => l_yea_assignment_action_id,
9643               p_assignment_id        => l_assignment_id,
9644               p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
9645               p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
9646               p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
9647               p_payroll_id           => l_data_tbl(l_data_tbl_cnt).assact_payroll_id,
9648               p_proc_type            => l_data_tbl(l_data_tbl_cnt).assact_proc_type);
9649           --
9650             if g_debug
9651             and g_detail_debug = 'Y' then
9652               l_archini_step := 94;
9653             end if;
9654           --
9655           end if;
9656         --
9657           if g_debug
9658           and g_detail_debug = 'Y' then
9659             l_archini_step := 95;
9660           end if;
9661         --
9662           -- need to set g_yea_wic_tbl.prev_jobs for yea, rey before here (ie. by above set_data_yea_tbl)
9663           -- otherwise set l_prev_jobs for latest sal, bon
9664           -- yea case, data should be corrected rather than copying latest assact data
9665           if l_data_tbl(l_data_tbl_cnt).assact_proc_type = 'YEA'
9666           or l_data_tbl(l_data_tbl_cnt).assact_proc_type = 'REY' then
9667           --
9668             if g_debug
9669             and g_detail_debug = 'Y' then
9670               l_archini_step := 96;
9671             end if;
9672           --
9673             if g_yea_wic_tbl.count > 0 then
9674             --
9675               l_prev_jobs := g_yea_wic_tbl(l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id).prev_jobs;
9676             --
9677             end if;
9678           --
9679             if g_debug
9680             and g_detail_debug = 'Y' then
9681               l_archini_step := 97;
9682             end if;
9683           --
9684             -- set g_data_pjob_ind_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
9685             -- set g_data_pjob_tbl based on g_data_pjob_ind_tbl.rec_ind1-15
9686             set_data_pjob_tbl(
9687               p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
9688               p_assignment_id        => l_assignment_id,
9689               p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
9690               p_prev_jobs            => l_prev_jobs);
9691           --
9692             if g_debug
9693             and g_detail_debug = 'Y' then
9694               l_archini_step := 98;
9695             end if;
9696           --
9697             -- set g_data_dpnt_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
9698             -- called set_yea_wic_tbl
9699             set_data_dpnt_tbl(
9700               p_assignment_action_id     => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
9701               p_assignment_id            => l_assignment_id,
9702               p_employee_number          => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
9703               p_effective_date           => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
9704               p_date_earned              => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
9705               p_proc_type                => l_data_tbl(l_data_tbl_cnt).assact_proc_type,
9706               p_dpnt_ref_type            => l_data_tbl(l_data_tbl_cnt).assact_dpnt_ref_type,
9707               p_sal_assignment_action_id => l_data_tbl(l_data_tbl_cnt).sal_act,
9708               p_sal_date_earned          => l_data_tbl(l_data_tbl_cnt).sal_erd);
9709           --
9710             if g_debug
9711             and g_detail_debug = 'Y' then
9712               l_archini_step := 99;
9713             end if;
9714           --
9715           else
9716           --
9717             if g_debug
9718             and g_detail_debug = 'Y' then
9719               l_archini_step := 100;
9720             end if;
9721           --
9722             -- will copy latest assact data to new assact through archive generation except for new assignment
9723             if l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is null then
9724             --
9725               if g_debug
9726               and g_detail_debug = 'Y' then
9727                 l_archini_step := 101;
9728               end if;
9729             --
9730               pay_jp_wic_pkg.get_prev_jobs(
9731                 p_assignment_id        => l_assignment_id,
9732                 p_action_sequence      => l_data_tbl(l_data_tbl_cnt).assact_action_sequence,
9733                 p_business_group_id    => g_business_group_id,
9734                 p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
9735                 p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
9736                 p_itax_organization_id => l_data_tbl(l_data_tbl_cnt).emp_si_itax_org_id,
9737                 p_person_id            => l_data_tbl(l_data_tbl_cnt).emp_person_id,
9738                 p_prev_jobs            => l_prev_jobs);
9739             --
9740               if g_debug
9741               and g_detail_debug = 'Y' then
9742                 l_archini_step := 102;
9743               end if;
9744             --
9745               -- set g_data_pjob_ind_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
9746               -- set g_data_pjob_tbl based on g_data_pjob_ind_tbl.rec_ind1-15
9747               set_data_pjob_tbl(
9748                 p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
9749                 p_assignment_id        => l_assignment_id,
9750                 p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
9751                 p_prev_jobs            => l_prev_jobs);
9752             --
9753               if g_debug
9754               and g_detail_debug = 'Y' then
9755                 l_archini_step := 103;
9756               end if;
9757             --
9758               -- set g_data_dpnt_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
9759               -- called set_yea_wic_tbl
9760               set_data_dpnt_tbl(
9761                 p_assignment_action_id     => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
9762                 p_assignment_id            => l_assignment_id,
9763                 p_employee_number          => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
9764                 p_effective_date           => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
9765                 p_date_earned              => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
9766                 p_proc_type                => l_data_tbl(l_data_tbl_cnt).assact_proc_type,
9767                 p_dpnt_ref_type            => l_data_tbl(l_data_tbl_cnt).assact_dpnt_ref_type,
9768                 p_sal_assignment_action_id => l_data_tbl(l_data_tbl_cnt).sal_act,
9769                 p_sal_date_earned          => l_data_tbl(l_data_tbl_cnt).sal_erd);
9770             --
9771               if g_debug
9772               and g_detail_debug = 'Y' then
9773                 l_archini_step := 104;
9774               end if;
9775             --
9776             end if;
9777           --
9778           end if;
9779         --
9780           if g_debug
9781           and g_detail_debug = 'Y' then
9782             l_archini_step := 105;
9783           end if;
9784         --
9785           if l_prev_jobs.count > 0 then
9786           --
9787             l_data_tbl(l_data_tbl_cnt).pjob_cnt := l_prev_jobs.count;
9788           --
9789           end if;
9790         --
9791           if g_debug
9792           and g_detail_debug = 'Y' then
9793             l_archini_step := 106;
9794           end if;
9795         --
9796           -- will copy latest assact data to new assact through archive generation except for new assignment
9797           -- volume will be small because this will work for only new employee
9798           if l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is null then
9799           --
9800             if g_debug
9801             and g_detail_debug = 'Y' then
9802               l_archini_step := 107;
9803             end if;
9804           --
9805             -- set g_data_cust_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
9806             set_data_cust_tbl(
9807               p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
9808               p_assignment_id        => l_assignment_id,
9809               p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
9810               p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
9811               p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned);
9812           --
9813             if g_debug
9814             and g_detail_debug = 'Y' then
9815               l_archini_step := 108;
9816             end if;
9817           --
9818           end if;
9819         --
9820         end if;
9821       --
9822         if g_debug
9823         and g_detail_debug = 'Y' then
9824           l_archini_step := 109;
9825         end if;
9826       --
9827         if l_bon_tbl_cnt > 15 then
9828         --
9829           if g_debug
9830           and g_detail_debug = 'Y' then
9831             l_archini_step := 110;
9832           end if;
9833         --
9834           g_wng_tbl(g_wng_tbl_cnt).assignment_id   := l_assignment_id;
9835           g_wng_tbl(g_wng_tbl_cnt).employee_number := l_data_tbl(l_data_tbl_cnt).emp_employee_number;
9836           g_wng_tbl(g_wng_tbl_cnt).message_text    := fnd_message.get_string('PAY','PAY_JP_ITWB_BON_OVER');
9837         --
9838           g_wng_tbl_cnt := g_wng_tbl_cnt + 1;
9839         --
9840         end if;
9841       --
9842         if g_debug
9843         and g_detail_debug = 'Y' then
9844           l_archini_step := 111;
9845         end if;
9846       --
9847       -- initialize
9848       --
9849         l_assignment_id := l_csr_data_ass_add.assignment_id;
9850         l_sal_assignment_action_id := null;
9851         l_sal_date_earned := null;
9852         l_bon_assignment_action_id := null;
9853         l_yea_assignment_action_id := null;
9854         l_prev_jobs.delete;
9855         --l_prev_jobs := null;
9856       --
9857         g_data_sal_ass_pay_tbl.delete;
9858         g_data_bon_ass_pay_tbl.delete;
9859         g_arch_sal_ass_pay_tbl.delete;
9860         g_arch_bon_ass_pay_tbl.delete;
9861       --
9862         g_data_sal_ass_pay_ind_tbl.delete;
9863         g_data_bon_ass_pay_ind_tbl.delete;
9864         g_arch_sal_ass_pay_ind_tbl.delete;
9865         g_arch_bon_ass_pay_ind_tbl.delete;
9866       --
9867         l_data_sal_act_mth1_tbl.delete;
9868         l_data_sal_act_mth2_tbl.delete;
9869         l_data_sal_act_mth3_tbl.delete;
9870         l_data_sal_act_mth4_tbl.delete;
9871         l_data_sal_act_mth5_tbl.delete;
9872         l_data_sal_act_mth6_tbl.delete;
9873         l_data_sal_act_mth7_tbl.delete;
9874         l_data_sal_act_mth8_tbl.delete;
9875         l_data_sal_act_mth9_tbl.delete;
9876         l_data_sal_act_mth10_tbl.delete;
9877         l_data_sal_act_mth11_tbl.delete;
9878         l_data_sal_act_mth12_tbl.delete;
9879       --
9880         l_mth1_tbl_cnt := 0;
9881         l_mth2_tbl_cnt := 0;
9882         l_mth3_tbl_cnt := 0;
9883         l_mth4_tbl_cnt := 0;
9884         l_mth5_tbl_cnt := 0;
9885         l_mth6_tbl_cnt := 0;
9886         l_mth7_tbl_cnt := 0;
9887         l_mth8_tbl_cnt := 0;
9888         l_mth9_tbl_cnt := 0;
9889         l_mth10_tbl_cnt := 0;
9890         l_mth11_tbl_cnt := 0;
9891         l_mth12_tbl_cnt := 0;
9892       --
9893         l_bon_tbl_cnt  := 0;
9894         l_yea_tbl_cnt  := 0;
9895       --
9896         l_data_tbl_cnt := l_data_tbl_cnt + 1;
9897       --
9898         if l_csr_data_ass_add.larch_assignment_action_id is not null then
9899         --
9900           open csr_ass_bon(l_csr_data_ass_add.larch_assignment_action_id);
9901           fetch csr_ass_bon into l_csr_ass_bon;
9902           close csr_ass_bon;
9903         --
9904           l_bon_tbl_cnt := sign(nvl(l_csr_ass_bon.col_cnt1,0))
9905                            + sign(nvl(l_csr_ass_bon.col_cnt2,0))
9906                            + sign(nvl(l_csr_ass_bon.col_cnt3,0))
9907                            + sign(nvl(l_csr_ass_bon.col_cnt4,0))
9908                            + sign(nvl(l_csr_ass_bon.col_cnt5,0))
9909                            + sign(nvl(l_csr_ass_bon.col_cnt6,0))
9910                            + sign(nvl(l_csr_ass_bon.col_cnt7,0))
9911                            + sign(nvl(l_csr_ass_bon.col_cnt8,0))
9912                            + sign(nvl(l_csr_ass_bon.col_cnt9,0))
9913                            + sign(nvl(l_csr_ass_bon.col_cnt10,0))
9914                            + sign(nvl(l_csr_ass_bon.col_cnt11,0))
9915                            + sign(nvl(l_csr_ass_bon.col_cnt12,0))
9916                            + sign(nvl(l_csr_ass_bon.col_cnt13,0))
9917                            + sign(nvl(l_csr_ass_bon.col_cnt14,0))
9918                            + sign(nvl(l_csr_ass_bon.col_cnt15,0));
9919         --
9920         end if;
9921       --
9922         if g_debug
9923         and g_detail_debug = 'Y' then
9924           l_archini_step := 112;
9925         end if;
9926       --
9927       end if;
9928     --
9929     -- initialize
9930     --
9931       g_data_item_act_sal_ern_tbl.delete;
9932       g_data_item_act_sal_dct_tbl.delete;
9933       g_data_item_act_bon_ern_tbl.delete;
9934       g_data_item_act_bon_dct_tbl.delete;
9935       g_data_item_act_wrk_tbl.delete;
9936     --
9937       if g_debug
9938       and g_detail_debug = 'Y' then
9939         l_archini_step := 113;
9940       end if;
9941     --
9942       -- override record to latest info (increment l_data_tbl_cnt when assignment is changed, so set final action info.
9943       -- because 15 sequenced bonus record must be picked, cursor is ordered by action sequence, not desc.
9944       --
9945       l_data_tbl(l_data_tbl_cnt).arch_assignment_action_id   := l_csr_data_ass_add.arch_assignment_action_id;
9946       l_data_tbl(l_data_tbl_cnt).assact_assignment_id        := l_csr_data_ass_add.assignment_id;
9947       l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id   := l_csr_data_ass_add.proc_assignment_action_id;
9948       l_data_tbl(l_data_tbl_cnt).assact_action_sequence      := l_csr_data_ass_add.action_sequence;
9949       l_data_tbl(l_data_tbl_cnt).assact_effective_date       := l_csr_data_ass_add.effective_date;
9950       l_data_tbl(l_data_tbl_cnt).assact_date_earned          := l_csr_data_ass_add.date_earned;
9951       l_data_tbl(l_data_tbl_cnt).assact_proc_type            := l_csr_data_ass_add.proc_type;
9952       l_data_tbl(l_data_tbl_cnt).assact_dpnt_ref_type        := l_csr_data_ass_add.dpnt_ref_type;
9953       l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o := l_csr_data_ass_add.larch_assignment_action_id;
9954     --
9955       if g_debug
9956       and g_detail_debug = 'Y' then
9957         l_archini_step := 114;
9958       end if;
9959     --
9960       if l_csr_data_ass_add.proc_type = 'SAL' then
9961       --
9962         if g_debug
9963         and g_detail_debug = 'Y' then
9964           l_archini_step := 115;
9965         end if;
9966       --
9967         -- separate for effective date base
9968         if to_char(l_csr_data_ass_add.effective_date,'MM') = '01' then
9969         --
9970           l_data_sal_act_mth1_tbl(l_mth1_tbl_cnt) := l_csr_data_ass_add.proc_assignment_action_id;
9971           l_mth1_tbl_cnt := l_mth1_tbl_cnt + 1;
9972         --
9973           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth1 := l_csr_data_ass_add.proc_assignment_action_id;
9974           l_data_tbl(l_data_tbl_cnt).act_mth1_tbl := l_data_sal_act_mth1_tbl;
9975         --
9976         elsif to_char(l_csr_data_ass_add.effective_date,'MM') = '02' then
9977         --
9978           l_data_sal_act_mth2_tbl(l_mth2_tbl_cnt) := l_csr_data_ass_add.proc_assignment_action_id;
9979           l_mth2_tbl_cnt := l_mth2_tbl_cnt + 1;
9980         --
9981           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth2 := l_csr_data_ass_add.proc_assignment_action_id;
9982           l_data_tbl(l_data_tbl_cnt).act_mth2_tbl := l_data_sal_act_mth2_tbl;
9983         --
9984         elsif to_char(l_csr_data_ass_add.effective_date,'MM') = '03' then
9985         --
9986           l_data_sal_act_mth3_tbl(l_mth3_tbl_cnt) := l_csr_data_ass_add.proc_assignment_action_id;
9987           l_mth3_tbl_cnt := l_mth3_tbl_cnt + 1;
9988         --
9989           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth3 := l_csr_data_ass_add.proc_assignment_action_id;
9990           l_data_tbl(l_data_tbl_cnt).act_mth3_tbl := l_data_sal_act_mth3_tbl;
9991         --
9992         elsif to_char(l_csr_data_ass_add.effective_date,'MM') = '04' then
9993         --
9994           l_data_sal_act_mth4_tbl(l_mth4_tbl_cnt) := l_csr_data_ass_add.proc_assignment_action_id;
9995           l_mth4_tbl_cnt := l_mth4_tbl_cnt + 1;
9996         --
9997           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth4 := l_csr_data_ass_add.proc_assignment_action_id;
9998           l_data_tbl(l_data_tbl_cnt).act_mth4_tbl := l_data_sal_act_mth4_tbl;
9999         --
10000         elsif to_char(l_csr_data_ass_add.effective_date,'MM') = '05' then
10001         --
10002           l_data_sal_act_mth5_tbl(l_mth5_tbl_cnt) := l_csr_data_ass_add.proc_assignment_action_id;
10003           l_mth5_tbl_cnt := l_mth5_tbl_cnt + 1;
10004         --
10005           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth5 := l_csr_data_ass_add.proc_assignment_action_id;
10006           l_data_tbl(l_data_tbl_cnt).act_mth5_tbl := l_data_sal_act_mth5_tbl;
10007         --
10008         elsif to_char(l_csr_data_ass_add.effective_date,'MM') = '06' then
10009         --
10010           l_data_sal_act_mth6_tbl(l_mth6_tbl_cnt) := l_csr_data_ass_add.proc_assignment_action_id;
10011           l_mth6_tbl_cnt := l_mth6_tbl_cnt + 1;
10012         --
10013           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth6 := l_csr_data_ass_add.proc_assignment_action_id;
10014           l_data_tbl(l_data_tbl_cnt).act_mth6_tbl := l_data_sal_act_mth6_tbl;
10015         --
10016         elsif to_char(l_csr_data_ass_add.effective_date,'MM') = '07' then
10017         --
10018           l_data_sal_act_mth7_tbl(l_mth7_tbl_cnt) := l_csr_data_ass_add.proc_assignment_action_id;
10019           l_mth7_tbl_cnt := l_mth7_tbl_cnt + 1;
10020         --
10021           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth7 := l_csr_data_ass_add.proc_assignment_action_id;
10022           l_data_tbl(l_data_tbl_cnt).act_mth7_tbl := l_data_sal_act_mth7_tbl;
10023         --
10024         elsif to_char(l_csr_data_ass_add.effective_date,'MM') = '08' then
10025         --
10026           l_data_sal_act_mth8_tbl(l_mth8_tbl_cnt) := l_csr_data_ass_add.proc_assignment_action_id;
10027           l_mth8_tbl_cnt := l_mth8_tbl_cnt + 1;
10028         --
10029           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth8 := l_csr_data_ass_add.proc_assignment_action_id;
10030           l_data_tbl(l_data_tbl_cnt).act_mth8_tbl := l_data_sal_act_mth8_tbl;
10031         --
10032         elsif to_char(l_csr_data_ass_add.effective_date,'MM') = '09' then
10033         --
10034           l_data_sal_act_mth9_tbl(l_mth9_tbl_cnt) := l_csr_data_ass_add.proc_assignment_action_id;
10035           l_mth9_tbl_cnt := l_mth9_tbl_cnt + 1;
10036         --
10037           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth9 := l_csr_data_ass_add.proc_assignment_action_id;
10038           l_data_tbl(l_data_tbl_cnt).act_mth9_tbl := l_data_sal_act_mth9_tbl;
10039         --
10040         elsif to_char(l_csr_data_ass_add.effective_date,'MM') = '10' then
10041         --
10042           l_data_sal_act_mth10_tbl(l_mth10_tbl_cnt) := l_csr_data_ass_add.proc_assignment_action_id;
10043           l_mth10_tbl_cnt := l_mth10_tbl_cnt + 1;
10044         --
10045           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth10 := l_csr_data_ass_add.proc_assignment_action_id;
10046           l_data_tbl(l_data_tbl_cnt).act_mth10_tbl := l_data_sal_act_mth10_tbl;
10047         --
10048         elsif to_char(l_csr_data_ass_add.effective_date,'MM') = '11' then
10049         --
10050           l_data_sal_act_mth11_tbl(l_mth11_tbl_cnt) := l_csr_data_ass_add.proc_assignment_action_id;
10051           l_mth11_tbl_cnt := l_mth11_tbl_cnt + 1;
10052         --
10053           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth11 := l_csr_data_ass_add.proc_assignment_action_id;
10054           l_data_tbl(l_data_tbl_cnt).act_mth11_tbl := l_data_sal_act_mth11_tbl;
10055         --
10056         elsif to_char(l_csr_data_ass_add.effective_date,'MM') = '12' then
10057         --
10058           l_data_sal_act_mth12_tbl(l_mth12_tbl_cnt) := l_csr_data_ass_add.proc_assignment_action_id;
10059           l_mth12_tbl_cnt := l_mth12_tbl_cnt + 1;
10060         --
10061           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth12 := l_csr_data_ass_add.proc_assignment_action_id;
10062           l_data_tbl(l_data_tbl_cnt).act_mth12_tbl := l_data_sal_act_mth12_tbl;
10063         --
10064         end if;
10065       --
10066         if g_debug
10067         and g_detail_debug = 'Y' then
10068           l_archini_step := 116;
10069         end if;
10070       --
10071         -- set g_data_sal_tbl based on l_data_tbl(l_data_tbl_cnt).sal_act_act_mth1-12 for each month
10072         set_data_sal_tbl(
10073           p_assignment_action_id    => l_csr_data_ass_add.proc_assignment_action_id,
10074           p_assignment_id           => l_csr_data_ass_add.assignment_id,
10075           p_data_ass_effective_date => l_csr_data_ass_add.effective_date,
10076           p_data_ass_date_earned    => l_csr_data_ass_add.date_earned,
10077           p_data_ass_payroll_id     => l_csr_data_ass_add.payroll_id);
10078       --
10079         if g_debug
10080         and g_detail_debug = 'Y' then
10081           l_archini_step := 117;
10082         end if;
10083       --
10084         -- set g_data_sal_ass_pay_tbl on each pay change for each assignment
10085         -- set g_data_pay_tbl based on arch_assignment_action_id
10086         set_data_sal_pay_tbl(
10087           p_assignment_action_id => l_csr_data_ass_add.arch_assignment_action_id,
10088           p_assignment_id        => l_csr_data_ass_add.assignment_id,
10089           p_data_ass_payroll_id  => l_csr_data_ass_add.payroll_id);
10090       --
10091         if g_debug
10092         and g_detail_debug = 'Y' then
10093           l_archini_step := 118;
10094         end if;
10095       --
10096         -- call set_item_info_tbl, set g_item_info_ind_tbl based on ass payroll, data will be extracted from org info and ordered by disp sequence
10097         -- and set item type, item id into g_item_info_xxx_tbl based on g_item_info_ind_tbl.start-end cnt each item type for payroll, ie. sal_ern, sal_dct, bon_ern, bon_dct, wrk
10098         --
10099         -- set g_data_item_ass_xxx_tbl based on item_pk for each assignment, which is set on g_item_info_xxx_tbl
10100         -- call set_data_item_tbl_sal_val, set_data_item_tbl_bon_val to set data into g_data_item_ass_xxx_tbl for each month, cnt
10101         --
10102         -- set g_data_item_tbl based on l_data_tbl(l_data_tbl_cnt).sal_act_act_mth1-12 for each month
10103         set_data_item_tbl(
10104           p_assignment_action_id => l_csr_data_ass_add.proc_assignment_action_id,
10105           p_type                 => 'SAL_ERN',
10106           p_data_ass_payroll_id  => l_csr_data_ass_add.payroll_id,
10107           p_data_ass_date_earned => l_csr_data_ass_add.date_earned);
10108       --
10109         if g_debug
10110         and g_detail_debug = 'Y' then
10111           l_archini_step := 119;
10112         end if;
10113       --
10114         set_data_item_tbl(
10115           p_assignment_action_id => l_csr_data_ass_add.proc_assignment_action_id,
10116           p_type                 => 'SAL_DCT',
10117           p_data_ass_payroll_id  => l_csr_data_ass_add.payroll_id,
10118           p_data_ass_date_earned => l_csr_data_ass_add.date_earned);
10119       --
10120         if g_debug
10121         and g_detail_debug = 'Y' then
10122           l_archini_step := 120;
10123         end if;
10124       --
10125         set_data_item_tbl(
10126           p_assignment_action_id => l_csr_data_ass_add.proc_assignment_action_id,
10127           p_type                 => 'WRK',
10128           p_data_ass_payroll_id  => l_csr_data_ass_add.payroll_id,
10129           p_data_ass_date_earned => l_csr_data_ass_add.date_earned);
10130       --
10131         if g_debug
10132         and g_detail_debug = 'Y' then
10133           l_archini_step := 121;
10134         end if;
10135       --
10136         -- set data for the latest action (the last record) for dependent and use to set pay tbl
10137         l_sal_assignment_action_id := l_csr_data_ass_add.proc_assignment_action_id;
10138         l_sal_date_earned          := l_csr_data_ass_add.date_earned;
10139       --
10140         if g_debug
10141         and g_detail_debug = 'Y' then
10142           l_archini_step := 122;
10143         end if;
10144       --
10145       elsif l_csr_data_ass_add.proc_type = 'BON'
10146       or l_csr_data_ass_add.proc_type = 'SPB' then
10147       --
10148         if g_debug
10149         and g_detail_debug = 'Y' then
10150           l_archini_step := 123;
10151         end if;
10152       --
10153         -- support to store only 15 first records, inconsiderable business case for more over
10154         if l_bon_tbl_cnt < 15 then
10155         --
10156           if g_debug
10157           and g_detail_debug = 'Y' then
10158             l_archini_step := 124;
10159           end if;
10160         --
10161           if l_bon_tbl_cnt = 0 then
10162           --
10163             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt1 := l_csr_data_ass_add.proc_assignment_action_id;
10164           --
10165           elsif l_bon_tbl_cnt = 1 then
10166           --
10167             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt2 := l_csr_data_ass_add.proc_assignment_action_id;
10168           --
10169           elsif l_bon_tbl_cnt = 2 then
10170           --
10171             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt3 := l_csr_data_ass_add.proc_assignment_action_id;
10172           --
10173           elsif l_bon_tbl_cnt = 3 then
10174           --
10175             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt4 := l_csr_data_ass_add.proc_assignment_action_id;
10176           --
10177           elsif l_bon_tbl_cnt = 4 then
10178           --
10179             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt5 := l_csr_data_ass_add.proc_assignment_action_id;
10180           --
10181           elsif l_bon_tbl_cnt = 5 then
10182           --
10183             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt6 := l_csr_data_ass_add.proc_assignment_action_id;
10184           --
10185           elsif l_bon_tbl_cnt = 6 then
10186           --
10187             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt7 := l_csr_data_ass_add.proc_assignment_action_id;
10188           --
10189           elsif l_bon_tbl_cnt = 7 then
10190           --
10191             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt8 := l_csr_data_ass_add.proc_assignment_action_id;
10192           --
10193           elsif l_bon_tbl_cnt = 8 then
10194           --
10195             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt9 := l_csr_data_ass_add.proc_assignment_action_id;
10196           --
10197           elsif l_bon_tbl_cnt = 9 then
10198           --
10199             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt10 := l_csr_data_ass_add.proc_assignment_action_id;
10200           --
10201           elsif l_bon_tbl_cnt = 10 then
10202           --
10203             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt11 := l_csr_data_ass_add.proc_assignment_action_id;
10204           --
10205           elsif l_bon_tbl_cnt = 11 then
10206           --
10207             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt12 := l_csr_data_ass_add.proc_assignment_action_id;
10208           --
10209           elsif l_bon_tbl_cnt = 12 then
10210           --
10211             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt13 := l_csr_data_ass_add.proc_assignment_action_id;
10212           --
10213           elsif l_bon_tbl_cnt = 13 then
10214           --
10215             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt14 := l_csr_data_ass_add.proc_assignment_action_id;
10216           --
10217           elsif l_bon_tbl_cnt = 14 then
10218           --
10219             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt15 := l_csr_data_ass_add.proc_assignment_action_id;
10220           --
10221           end if;
10222         --
10223           if g_debug
10224           and g_detail_debug = 'Y' then
10225             l_archini_step := 125;
10226           end if;
10227         --
10228           -- set g_data_bon_tbl based on l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt1-15 for each cnt
10229           set_data_bon_tbl(
10230             p_assignment_action_id => l_csr_data_ass_add.proc_assignment_action_id,
10231             p_assignment_id           => l_csr_data_ass_add.assignment_id,
10232             p_data_ass_effective_date => l_csr_data_ass_add.effective_date,
10233             p_data_ass_date_earned    => l_csr_data_ass_add.date_earned,
10234             p_data_ass_payroll_id     => l_csr_data_ass_add.payroll_id,
10235             p_data_ass_proc_type      => l_csr_data_ass_add.proc_type);
10236         --
10237           if g_debug
10238           and g_detail_debug = 'Y' then
10239             l_archini_step := 126;
10240           end if;
10241         --
10242           -- set g_data_bon_ass_pay_tbl on each pay change for each assignment
10243           -- set g_data_pay_tbl based on arch_assignment_action_id
10244           set_data_bon_pay_tbl(
10245             p_assignment_action_id => l_csr_data_ass_add.arch_assignment_action_id,
10246             p_assignment_id        => l_csr_data_ass_add.assignment_id,
10247             p_data_ass_payroll_id  => l_csr_data_ass_add.payroll_id);
10248         --
10249           if g_debug
10250           and g_detail_debug = 'Y' then
10251             l_archini_step := 127;
10252           end if;
10253         --
10254         -- call set_item_info_tbl, set g_item_info_ind_tbl based on ass payroll, data will be extracted from org info and ordered by disp sequence
10255         -- and set item type, item id into g_item_info_xxx_tbl based on g_item_info_ind_tbl.start-end cnt each item type for payroll, ie. sal_ern, sal_dct, bon_ern, bon_dct, wrk
10256         --
10257         -- set g_data_item_ass_xxx_tbl based on item_pk for each assignment, which is set on g_item_info_xxx_tbl
10258         -- call set_data_item_tbl_sal_val, set_data_item_tbl_bon_val to set data into g_data_item_ass_xxx_tbl for each month, cnt
10259         --
10260         -- set g_data_item_tbl based on l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt1-15 for each cnt
10261           set_data_item_tbl(
10262             p_assignment_action_id => l_csr_data_ass_add.proc_assignment_action_id,
10263             p_type                 => 'BON_ERN',
10264             p_data_ass_payroll_id  => l_csr_data_ass_add.payroll_id,
10265             p_data_ass_date_earned => l_csr_data_ass_add.date_earned);
10266         --
10267           if g_debug
10268           and g_detail_debug = 'Y' then
10269             l_archini_step := 128;
10270           end if;
10271         --
10272           set_data_item_tbl(
10273             p_assignment_action_id => l_csr_data_ass_add.proc_assignment_action_id,
10274             p_type                 => 'BON_DCT',
10275             p_data_ass_payroll_id  => l_csr_data_ass_add.payroll_id,
10276             p_data_ass_date_earned => l_csr_data_ass_add.date_earned);
10277         --
10278           if g_debug
10279           and g_detail_debug = 'Y' then
10280             l_archini_step := 129;
10281           end if;
10282         --
10283         end if;
10284       --
10285         -- latest bon for assignment, use to set pay tbl
10286         l_bon_assignment_action_id := l_csr_data_ass_add.proc_assignment_action_id;
10287       --
10288         l_bon_tbl_cnt := l_bon_tbl_cnt + 1;
10289       --
10290         if g_debug
10291         and g_detail_debug = 'Y' then
10292           l_archini_step := 130;
10293         end if;
10294       --
10295       elsif l_csr_data_ass_add.proc_type = 'YEA'
10296       or l_csr_data_ass_add.proc_type = 'REY' then
10297       --
10298         if g_debug
10299         and g_detail_debug = 'Y' then
10300           l_archini_step := 131;
10301         end if;
10302       --
10303         -- set data for the latest action (the last record)
10304         l_yea_assignment_action_id := l_csr_data_ass_add.proc_assignment_action_id;
10305       --
10306         l_yea_tbl_cnt := l_yea_tbl_cnt + 1;
10307       --
10308       end if;
10309     --
10310       if g_debug
10311       and g_detail_debug = 'Y' then
10312         l_archini_step := 132;
10313       end if;
10314     --
10315     end loop;
10316     close csr_data_ass_add;
10317   --
10318     if g_debug
10319     and g_detail_debug = 'Y' then
10320       l_archini_step := 133;
10321       hr_utility.set_location(l_proc,60);
10322       hr_utility.trace('l_data_tbl_cnt   : '||to_char(l_data_tbl_cnt));
10323       hr_utility.trace('l_data_tbl.count : '||to_char(l_data_tbl.count));
10324     end if;
10325   --
10326     -- set data for the last action of the last assignment since set data for the previous assignment in loop
10327     if l_data_tbl_cnt > 0 then
10328     --
10329       if g_debug
10330       and g_detail_debug = 'Y' then
10331         l_archini_step := 134;
10332       end if;
10333     --
10334       -- will copy latest assact data to new assact through archive generation except for new assignment
10335       -- if user wants to update to latest information, use update mode
10336       if l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is null then
10337       --
10338         if g_debug
10339         and g_detail_debug = 'Y' then
10340           l_archini_step := 135;
10341         end if;
10342       --
10343         open csr_data_ass_add_info(l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_effective_date);
10344         fetch csr_data_ass_add_info into l_csr_data_ass_add_info;
10345         --
10346           if g_debug
10347           and g_detail_debug = 'Y' then
10348             l_archini_step := 136;
10349           end if;
10350         --
10351           if not csr_data_ass_add_info%notfound then
10352           --
10353             if g_debug
10354             and g_detail_debug = 'Y' then
10355               l_archini_step := 137;
10356             end if;
10357           --
10358             l_data_tbl(l_data_tbl_cnt).assact_organization_id  := l_csr_data_ass_add_info.organization_id;
10359             l_data_tbl(l_data_tbl_cnt).assact_job_id           := l_csr_data_ass_add_info.job_id;
10360             l_data_tbl(l_data_tbl_cnt).assact_payroll_id       := l_csr_data_ass_add_info.payroll_id;
10361             l_data_tbl(l_data_tbl_cnt).assact_location_id      := l_csr_data_ass_add_info.location_id;
10362             l_data_tbl(l_data_tbl_cnt).assact_termination_date := l_csr_data_ass_add_info.termination_date;
10363             l_data_tbl(l_data_tbl_cnt).assact_leaving_reason   := l_csr_data_ass_add_info.leaving_reason;
10364             --
10365             l_data_tbl(l_data_tbl_cnt).emp_person_id       := l_csr_data_ass_add_info.person_id;
10366             l_data_tbl(l_data_tbl_cnt).emp_employee_number := l_csr_data_ass_add_info.employee_number;
10367             l_data_tbl(l_data_tbl_cnt).emp_last_name       := l_csr_data_ass_add_info.last_name;
10368             l_data_tbl(l_data_tbl_cnt).emp_first_name      := l_csr_data_ass_add_info.first_name;
10369             l_data_tbl(l_data_tbl_cnt).emp_last_name_kana  := l_csr_data_ass_add_info.last_name_kana;
10370             l_data_tbl(l_data_tbl_cnt).emp_first_name_kana := l_csr_data_ass_add_info.first_name_kana;
10371             l_data_tbl(l_data_tbl_cnt).emp_sex             := l_csr_data_ass_add_info.sex;
10372             l_data_tbl(l_data_tbl_cnt).emp_birth_date      := l_csr_data_ass_add_info.birth_date;
10373             --
10374             l_data_tbl(l_data_tbl_cnt).emp_add_address_id    := l_csr_data_ass_add_info.address_id;
10375             l_data_tbl(l_data_tbl_cnt).emp_add_address_jp    := l_csr_data_ass_add_info.address_jp;
10376             l_data_tbl(l_data_tbl_cnt).emp_add_postal_code   := l_csr_data_ass_add_info.postal_code;
10377             l_data_tbl(l_data_tbl_cnt).emp_add_district_code := l_csr_data_ass_add_info.district_code;
10378             l_data_tbl(l_data_tbl_cnt).emp_add_address       := l_csr_data_ass_add_info.address;
10379             l_data_tbl(l_data_tbl_cnt).emp_add_address_kana  := l_csr_data_ass_add_info.address_kana;
10380             l_data_tbl(l_data_tbl_cnt).emp_add_phone1        := l_csr_data_ass_add_info.phone1;
10381             l_data_tbl(l_data_tbl_cnt).emp_add_phone2        := l_csr_data_ass_add_info.phone2;
10382             --
10383             l_data_tbl(l_data_tbl_cnt).emp_ass_hire_date         := l_csr_data_ass_add_info.hire_date;
10384             l_data_tbl(l_data_tbl_cnt).emp_ass_organization_name := l_csr_data_ass_add_info.organization_name;
10385             l_data_tbl(l_data_tbl_cnt).emp_ass_job_name          := l_csr_data_ass_add_info.job_name;
10386             l_data_tbl(l_data_tbl_cnt).emp_ass_payroll_name      := l_csr_data_ass_add_info.payroll_name;
10387             l_data_tbl(l_data_tbl_cnt).emp_ass_location_name     := l_csr_data_ass_add_info.location_code;
10388           --
10389             if g_debug
10390             and g_detail_debug = 'Y' then
10391                l_archini_step := 138;
10392             end if;
10393           --
10394           end if;
10395         --
10396         close csr_data_ass_add_info;
10397       --
10398         if g_debug
10399         and g_detail_debug = 'Y' then
10400           l_archini_step := 139;
10401         end if;
10402       --
10403         l_data_tbl(l_data_tbl_cnt).emp_si_itax_org_id := pay_jp_balance_pkg.get_entry_value_number(c_itx_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10404         l_data_tbl(l_data_tbl_cnt).emp_si_itax_type   := pay_jp_balance_pkg.get_entry_value_char(c_itx_type_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10405         l_data_tbl(l_data_tbl_cnt).emp_si_hi_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_hi_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10406         l_data_tbl(l_data_tbl_cnt).emp_si_hi_number   := pay_jp_balance_pkg.get_entry_value_char(c_hi_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10407         l_data_tbl(l_data_tbl_cnt).emp_si_wp_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_wp_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10408         l_data_tbl(l_data_tbl_cnt).emp_si_wp_number   := pay_jp_balance_pkg.get_entry_value_char(c_wp_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10409         l_data_tbl(l_data_tbl_cnt).emp_si_wpf_org_id  := pay_jp_balance_pkg.get_entry_value_number(c_wpf_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10410         l_data_tbl(l_data_tbl_cnt).emp_si_wpf_number  := pay_jp_balance_pkg.get_entry_value_char(c_wpf_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10411         l_data_tbl(l_data_tbl_cnt).emp_si_ei_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_ei_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10412         l_data_tbl(l_data_tbl_cnt).emp_si_ei_number   := pay_jp_balance_pkg.get_entry_value_char(c_ei_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10413         --
10414         l_nres_flag_eev                                      := pay_jp_balance_pkg.get_entry_value_char(c_nres_flag_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10415         l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date    := pay_jp_balance_pkg.get_entry_value_date(c_nres_start_date_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10416         l_data_tbl(l_data_tbl_cnt).emp_si_projected_res_date := pay_jp_balance_pkg.get_entry_value_date(c_projected_res_date_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10417         --
10418         if g_debug
10419         and g_detail_debug = 'Y' then
10420           l_archini_step := 140;
10421         end if;
10422         --
10423         if l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date is not null then
10424         --
10425           if g_debug
10426           and g_detail_debug = 'Y' then
10427             l_archini_step := 141;
10428           end if;
10429         --
10430           if l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date <= l_data_tbl(l_data_tbl_cnt).assact_effective_date
10431           and nvl(l_data_tbl(l_data_tbl_cnt).emp_si_projected_res_date,l_data_tbl(l_data_tbl_cnt).assact_effective_date + 1) > l_data_tbl(l_data_tbl_cnt).assact_effective_date then
10432           --
10433             l_data_tbl(l_data_tbl_cnt).emp_si_nres_flag := 'Y';
10434           --
10435           end if;
10436         --
10437         else
10438         --
10439           if g_debug
10440           and g_detail_debug = 'Y' then
10441             l_archini_step := 142;
10442           end if;
10443         --
10444           if nvl(l_nres_flag_eev,'N') = 'Y' then
10445           --
10446             l_data_tbl(l_data_tbl_cnt).emp_si_nres_flag := 'Y';
10447           --
10448           end if;
10449         --
10450         end if;
10451       --
10452         if g_debug
10453         and g_detail_debug = 'Y' then
10454           l_archini_step := 143;
10455         end if;
10456       --
10457       end if;
10458     --
10459       -- latest sal for assignment, use to get dpnt info and use to set pay tbl
10460       if l_sal_assignment_action_id is not null then
10461       --
10462         if g_debug
10463         and g_detail_debug = 'Y' then
10464           l_archini_step := 144;
10465         end if;
10466       --
10467         l_data_tbl(l_data_tbl_cnt).sal_act := l_sal_assignment_action_id;
10468         l_data_tbl(l_data_tbl_cnt).sal_erd := l_sal_date_earned;
10469       --
10470         if g_debug
10471         and g_detail_debug = 'Y' then
10472           l_archini_step := 145;
10473         end if;
10474       --
10475       end if;
10476     --
10477       -- latest bon for assignment, use to set pay tbl
10478       if l_bon_assignment_action_id is not null then
10479       --
10480         if g_debug
10481         and g_detail_debug = 'Y' then
10482           l_archini_step := 146;
10483         end if;
10484       --
10485         l_data_tbl(l_data_tbl_cnt).bon_act := l_bon_assignment_action_id;
10486       --
10487       end if;
10488     --
10489       if g_debug
10490       and g_detail_debug = 'Y' then
10491         l_archini_step := 147;
10492       end if;
10493     --
10494       -- latest yea for assignment (ie. yea exist)
10495       if l_yea_assignment_action_id is not null then
10496       --
10497         if g_debug
10498         and g_detail_debug = 'Y' then
10499           l_archini_step := 148;
10500         end if;
10501       --
10502         l_data_tbl(l_data_tbl_cnt).yea_act := l_yea_assignment_action_id;
10503       --
10504         if g_debug
10505         and g_detail_debug = 'Y' then
10506           l_archini_step := 149;
10507         end if;
10508       --
10509         -- set g_data_yea_tbl based on l_data_tbl(l_data_tbl_cnt).yea_act
10510         -- called set_yea_wic_tbl, set g_yea_wic_tbl based on l_data_tbl(l_data_tbl_cnt).yea_act
10511         set_data_yea_tbl(
10512           p_assignment_action_id => l_yea_assignment_action_id,
10513           p_assignment_id        => l_assignment_id,
10514           p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
10515           p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
10516           p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
10517           p_payroll_id           => l_data_tbl(l_data_tbl_cnt).assact_payroll_id,
10518           p_proc_type            => l_data_tbl(l_data_tbl_cnt).assact_proc_type);
10519       --
10520         if g_debug
10521         and g_detail_debug = 'Y' then
10522           l_archini_step := 150;
10523         end if;
10524       --
10525       end if;
10526     --
10527       if g_debug
10528       and g_detail_debug = 'Y' then
10529         l_archini_step := 151;
10530       end if;
10531     --
10532       -- need to set g_yea_wic_tbl.prev_jobs for yea, rey before here (ie. by above set_data_yea_tbl)
10533       -- otherwise set l_prev_jobs for latest sal, bon
10534       -- yea case, data should be corrected rather than copying latest assact data
10535       if l_data_tbl(l_data_tbl_cnt).assact_proc_type = 'YEA'
10536       or l_data_tbl(l_data_tbl_cnt).assact_proc_type = 'REY' then
10537       --
10538         if g_debug
10539         and g_detail_debug = 'Y' then
10540           l_archini_step := 152;
10541         end if;
10542       --
10543         if g_yea_wic_tbl.count > 0 then
10544         --
10545           l_prev_jobs := g_yea_wic_tbl(l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id).prev_jobs;
10546         --
10547         end if;
10548       --
10549         if g_debug
10550         and g_detail_debug = 'Y' then
10551           l_archini_step := 153;
10552         end if;
10553       --
10554         -- set g_data_pjob_ind_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
10555         -- set g_data_pjob_tbl based on g_data_pjob_ind_tbl.rec_ind1-15
10556         set_data_pjob_tbl(
10557           p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
10558           p_assignment_id        => l_assignment_id,
10559           p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
10560           p_prev_jobs            => l_prev_jobs);
10561       --
10562         if g_debug
10563         and g_detail_debug = 'Y' then
10564           l_archini_step := 154;
10565         end if;
10566       --
10567         -- set g_data_dpnt_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
10568         -- called set_yea_wic_tbl
10569         set_data_dpnt_tbl(
10570           p_assignment_action_id     => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
10571           p_assignment_id            => l_assignment_id,
10572           p_employee_number          => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
10573           p_effective_date           => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
10574           p_date_earned              => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
10575           p_proc_type                => l_data_tbl(l_data_tbl_cnt).assact_proc_type,
10576           p_dpnt_ref_type            => l_data_tbl(l_data_tbl_cnt).assact_dpnt_ref_type,
10577           p_sal_assignment_action_id => l_data_tbl(l_data_tbl_cnt).sal_act,
10578           p_sal_date_earned          => l_data_tbl(l_data_tbl_cnt).sal_erd);
10579       --
10580         if g_debug
10581         and g_detail_debug = 'Y' then
10582           l_archini_step := 155;
10583         end if;
10584       --
10585       else
10586       --
10587         if g_debug
10588         and g_detail_debug = 'Y' then
10589           l_archini_step := 156;
10590         end if;
10591       --
10592         -- will copy latest assact data to new assact through archive generation except for new assignment
10593         if l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is null then
10594         --
10595           if g_debug
10596           and g_detail_debug = 'Y' then
10597             l_archini_step := 157;
10598           end if;
10599         --
10600           pay_jp_wic_pkg.get_prev_jobs(
10601             p_assignment_id        => l_assignment_id,
10602             p_action_sequence      => l_data_tbl(l_data_tbl_cnt).assact_action_sequence,
10603             p_business_group_id    => g_business_group_id,
10604             p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
10605             p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
10606             p_itax_organization_id => l_data_tbl(l_data_tbl_cnt).emp_si_itax_org_id,
10607             p_person_id            => l_data_tbl(l_data_tbl_cnt).emp_person_id,
10608             p_prev_jobs            => l_prev_jobs);
10609         --
10610           if g_debug
10611           and g_detail_debug = 'Y' then
10612             l_archini_step := 158;
10613           end if;
10614         --
10615           -- set g_data_pjob_ind_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
10616           -- set g_data_pjob_tbl based on g_data_pjob_ind_tbl.rec_ind1-15
10617           set_data_pjob_tbl(
10618             p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
10619             p_assignment_id        => l_assignment_id,
10620             p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
10621             p_prev_jobs            => l_prev_jobs);
10622         --
10623           if g_debug
10624           and g_detail_debug = 'Y' then
10625             l_archini_step := 159;
10626           end if;
10627         --
10628           -- set g_data_dpnt_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
10629           -- called set_yea_wic_tbl
10630           set_data_dpnt_tbl(
10631             p_assignment_action_id     => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
10632             p_assignment_id            => l_assignment_id,
10633             p_employee_number          => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
10634             p_effective_date           => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
10635             p_date_earned              => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
10636             p_proc_type                => l_data_tbl(l_data_tbl_cnt).assact_proc_type,
10637             p_dpnt_ref_type            => l_data_tbl(l_data_tbl_cnt).assact_dpnt_ref_type,
10638             p_sal_assignment_action_id => l_data_tbl(l_data_tbl_cnt).sal_act,
10639             p_sal_date_earned          => l_data_tbl(l_data_tbl_cnt).sal_erd);
10640         --
10641           if g_debug
10642           and g_detail_debug = 'Y' then
10643             l_archini_step := 160;
10644           end if;
10645         --
10646         end if;
10647       --
10648       end if;
10649     --
10650       if g_debug
10651       and g_detail_debug = 'Y' then
10652         l_archini_step := 161;
10653         hr_utility.set_location(l_proc,70);
10654       end if;
10655     --
10656       if l_prev_jobs.count > 0 then
10657       --
10658         l_data_tbl(l_data_tbl_cnt).pjob_cnt := l_prev_jobs.count;
10659       --
10660       end if;
10661     --
10662       if g_debug
10663       and g_detail_debug = 'Y' then
10664         l_archini_step := 162;
10665         hr_utility.set_location(l_proc,70);
10666       end if;
10667     --
10668       -- will copy latest assact data to new assact through archive generation except for new assignment
10669       -- volume will be small because this will work for only new employee
10670       if l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is null then
10671       --
10672         if g_debug
10673         and g_detail_debug = 'Y' then
10674           l_archini_step := 163;
10675         end if;
10676       --
10677         -- set g_data_cust_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
10678         set_data_cust_tbl(
10679           p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
10680           p_assignment_id        => l_assignment_id,
10681           p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
10682           p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
10683           p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10684       --
10685         if g_debug
10686         and g_detail_debug = 'Y' then
10687           l_archini_step := 164;
10688         end if;
10689       --
10690       end if;
10691     --
10692       if g_debug
10693       and g_detail_debug = 'Y' then
10694         l_archini_step := 165;
10695       end if;
10696     --
10697       if l_bon_tbl_cnt > 15 then
10698       --
10699         if g_debug
10700         and g_detail_debug = 'Y' then
10701           l_archini_step := 166;
10702         end if;
10703       --
10704         g_wng_tbl(g_wng_tbl_cnt).assignment_id   := l_assignment_id;
10705         g_wng_tbl(g_wng_tbl_cnt).employee_number := l_data_tbl(l_data_tbl_cnt).emp_employee_number;
10706         g_wng_tbl(g_wng_tbl_cnt).message_text    := fnd_message.get_string('PAY','PAY_JP_ITWB_BON_OVER');
10707       --
10708         g_wng_tbl_cnt := g_wng_tbl_cnt + 1;
10709       --
10710         if g_debug
10711         and g_detail_debug = 'Y' then
10712           l_archini_step := 167;
10713         end if;
10714       --
10715       end if;
10716     --
10717     end if;
10718   --
10719     if g_debug
10720     and g_detail_debug = 'Y' then
10721       l_archini_step := 168;
10722       hr_utility.set_location(l_proc,80);
10723     end if;
10724   --
10725   -- -----------------------------------
10726   -- UPDATE
10727   -- -----------------------------------
10728   -- in case of g_arch_option is update
10729   else
10730   --
10731     if g_debug
10732     and g_detail_debug = 'Y' then
10733       l_archini_step := 169;
10734       hr_utility.set_location(l_proc,90);
10735     end if;
10736   --
10737     open csr_data_ass_upd;
10738     loop
10739     --
10740       fetch csr_data_ass_upd into l_csr_data_ass_upd;
10741       exit when csr_data_ass_upd%notfound;
10742     --
10743       -- increment l_data_tbl_cnt for each assignment
10744       if l_assignment_id is null
10745       or l_assignment_id <> l_csr_data_ass_upd.assignment_id then
10746       --
10747         if g_debug
10748         and g_detail_debug = 'Y' then
10749           l_archini_step := 170;
10750         end if;
10751       --
10752         -- set data for the latest action (the last record) of the previous assignment
10753         -- set data after exit loop for the last record
10754         if l_data_tbl_cnt > 0 then
10755         --
10756           if g_debug
10757           and g_detail_debug = 'Y' then
10758             l_archini_step := 171;
10759           end if;
10760         --
10761           -- will create new assact data for new assignment
10762           -- will copy latest assact data to new assact through archive generation except for latest update
10763           -- if user wants to update information, need to set latest action month update
10764           if l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is null
10765           or (l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is not null
10766              and to_char(l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_date_o,'MM') = to_char(g_effective_date,'MM'))
10767           or nvl(g_upd_force,'N') = 'Y' then
10768           --
10769             if g_debug
10770             and g_detail_debug = 'Y' then
10771               l_archini_step := 172;
10772             end if;
10773           --
10774             l_data_tbl(l_data_tbl_cnt).emp_si_itax_org_id := pay_jp_balance_pkg.get_entry_value_number(c_itx_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10775             l_data_tbl(l_data_tbl_cnt).emp_si_itax_type   := pay_jp_balance_pkg.get_entry_value_char(c_itx_type_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10776             l_data_tbl(l_data_tbl_cnt).emp_si_hi_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_hi_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10777             l_data_tbl(l_data_tbl_cnt).emp_si_hi_number   := pay_jp_balance_pkg.get_entry_value_char(c_hi_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10778             l_data_tbl(l_data_tbl_cnt).emp_si_wp_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_wp_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10779             l_data_tbl(l_data_tbl_cnt).emp_si_wp_number   := pay_jp_balance_pkg.get_entry_value_char(c_wp_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10780             l_data_tbl(l_data_tbl_cnt).emp_si_wpf_org_id  := pay_jp_balance_pkg.get_entry_value_number(c_wpf_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10781             l_data_tbl(l_data_tbl_cnt).emp_si_wpf_number  := pay_jp_balance_pkg.get_entry_value_char(c_wpf_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10782             l_data_tbl(l_data_tbl_cnt).emp_si_ei_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_ei_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10783             l_data_tbl(l_data_tbl_cnt).emp_si_ei_number   := pay_jp_balance_pkg.get_entry_value_char(c_ei_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10784             --
10785             l_nres_flag_eev                                      := pay_jp_balance_pkg.get_entry_value_char(c_nres_flag_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10786             l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date    := pay_jp_balance_pkg.get_entry_value_date(c_nres_start_date_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10787             l_data_tbl(l_data_tbl_cnt).emp_si_projected_res_date := pay_jp_balance_pkg.get_entry_value_date(c_projected_res_date_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10788             --
10789             if g_debug
10790             and g_detail_debug = 'Y' then
10791               l_archini_step := 173;
10792             end if;
10793             --
10794             if l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date is not null then
10795             --
10796               if g_debug
10797               and g_detail_debug = 'Y' then
10798                 l_archini_step := 174;
10799               end if;
10800             --
10801               if l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date <= l_data_tbl(l_data_tbl_cnt).assact_effective_date
10802               and nvl(l_data_tbl(l_data_tbl_cnt).emp_si_projected_res_date,l_data_tbl(l_data_tbl_cnt).assact_effective_date + 1) > l_data_tbl(l_data_tbl_cnt).assact_effective_date then
10803               --
10804                 l_data_tbl(l_data_tbl_cnt).emp_si_nres_flag := 'Y';
10805               --
10806               end if;
10807             --
10808             else
10809             --
10810               if g_debug
10811               and g_detail_debug = 'Y' then
10812                 l_archini_step := 175;
10813               end if;
10814             --
10815               if nvl(l_nres_flag_eev,'N') = 'Y' then
10816               --
10817                 l_data_tbl(l_data_tbl_cnt).emp_si_nres_flag := 'Y';
10818               --
10819               end if;
10820             --
10821             end if;
10822           --
10823             if g_debug
10824             and g_detail_debug = 'Y' then
10825               l_archini_step := 176;
10826             end if;
10827           --
10828             if g_debug
10829             and g_detail_debug = 'Y' then
10830               l_archini_step := 177;
10831             end if;
10832           --
10833             -- set g_data_cust_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
10834             set_data_cust_tbl(
10835               p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
10836               p_assignment_id        => l_assignment_id,
10837               p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
10838               p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
10839               p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned);
10840           --
10841             if g_debug
10842             and g_detail_debug = 'Y' then
10843               l_archini_step := 178;
10844             end if;
10845           --
10846           end if;
10847         --
10848           -- latest sal for assignment, use to get dpnt info and use to set pay tbl
10849           if l_sal_assignment_action_id is not null then
10850           --
10851             if g_debug
10852             and g_detail_debug = 'Y' then
10853               l_archini_step := 179;
10854             end if;
10855           --
10856             l_data_tbl(l_data_tbl_cnt).sal_act := l_sal_assignment_action_id;
10857             l_data_tbl(l_data_tbl_cnt).sal_erd := l_sal_date_earned;
10858           --
10859             if g_debug
10860             and g_detail_debug = 'Y' then
10861               l_archini_step := 180;
10862             end if;
10863           --
10864           end if;
10865         --
10866           if g_debug
10867           and g_detail_debug = 'Y' then
10868             l_archini_step := 181;
10869           end if;
10870         --
10871           -- latest bon for assignment, use to set pay tbl
10872           if l_bon_assignment_action_id is not null then
10873           --
10874             if g_debug
10875             and g_detail_debug = 'Y' then
10876               l_archini_step := 182;
10877             end if;
10878           --
10879             l_data_tbl(l_data_tbl_cnt).bon_act := l_bon_assignment_action_id;
10880           --
10881           end if;
10882         --
10883           if g_debug
10884           and g_detail_debug = 'Y' then
10885             l_archini_step := 183;
10886           end if;
10887         --
10888           -- latest yea for assignment (ie. process is yea)
10889           if l_yea_assignment_action_id is not null then
10890           --
10891             if g_debug
10892             and g_detail_debug = 'Y' then
10893               l_archini_step := 184;
10894             end if;
10895           --
10896             l_data_tbl(l_data_tbl_cnt).yea_act := l_yea_assignment_action_id;
10897           --
10898             if g_debug
10899             and g_detail_debug = 'Y' then
10900               l_archini_step := 185;
10901             end if;
10902           --
10903             -- set g_data_yea_tbl based on l_data_tbl(l_data_tbl_cnt).yea_act
10904             -- called set_yea_wic_tbl, set g_yea_wic_tbl based on l_data_tbl(l_data_tbl_cnt).yea_act
10905             set_data_yea_tbl(
10906               p_assignment_action_id => l_yea_assignment_action_id,
10907               p_assignment_id        => l_assignment_id,
10908               p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
10909               p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
10910               p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
10911               p_payroll_id           => l_data_tbl(l_data_tbl_cnt).assact_payroll_id,
10912               p_proc_type            => l_data_tbl(l_data_tbl_cnt).assact_proc_type);
10913           --
10914             if g_debug
10915             and g_detail_debug = 'Y' then
10916               l_archini_step := 186;
10917             end if;
10918           --
10919           end if;
10920         --
10921           if g_debug
10922           and g_detail_debug = 'Y' then
10923             l_archini_step := 187;
10924           end if;
10925         --
10926           -- need to set g_yea_wic_tbl.prev_jobs for yea, rey before here (ie. by above set_data_yea_tbl)
10927           -- otherwise set l_prev_jobs for latest sal, bon
10928           if l_data_tbl(l_data_tbl_cnt).assact_proc_type = 'YEA'
10929           or l_data_tbl(l_data_tbl_cnt).assact_proc_type = 'REY' then
10930           --
10931             if g_debug
10932             and g_detail_debug = 'Y' then
10933               l_archini_step := 188;
10934             end if;
10935           --
10936             if g_yea_wic_tbl.count > 0 then
10937             --
10938               l_prev_jobs := g_yea_wic_tbl(l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id).prev_jobs;
10939             --
10940             end if;
10941           --
10942             if g_debug
10943             and g_detail_debug = 'Y' then
10944               l_archini_step := 189;
10945             end if;
10946           --
10947             -- set g_data_pjob_ind_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
10948             -- set g_data_pjob_tbl based on g_data_pjob_ind_tbl.rec_ind1-15
10949             set_data_pjob_tbl(
10950               p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
10951               p_assignment_id        => l_assignment_id,
10952               p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
10953               p_prev_jobs            => l_prev_jobs);
10954           --
10955             if g_debug
10956             and g_detail_debug = 'Y' then
10957               l_archini_step := 190;
10958             end if;
10959           --
10960             -- set g_data_dpnt_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
10961             -- called set_yea_wic_tbl
10962             set_data_dpnt_tbl(
10963               p_assignment_action_id     => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
10964               p_assignment_id            => l_assignment_id,
10965               p_employee_number          => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
10966               p_effective_date           => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
10967               p_date_earned              => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
10968               p_proc_type                => l_data_tbl(l_data_tbl_cnt).assact_proc_type,
10969               p_dpnt_ref_type            => l_data_tbl(l_data_tbl_cnt).assact_dpnt_ref_type,
10970               p_sal_assignment_action_id => l_data_tbl(l_data_tbl_cnt).sal_act,
10971               p_sal_date_earned          => l_data_tbl(l_data_tbl_cnt).sal_erd);
10972           --
10973             if g_debug
10974             and g_detail_debug = 'Y' then
10975               l_archini_step := 191;
10976             end if;
10977           --
10978           else
10979           --
10980             if g_debug
10981             and g_detail_debug = 'Y' then
10982               l_archini_step := 192;
10983             end if;
10984           --
10985             -- will create new assact data for new assignment
10986             -- will copy latest assact data to new assact through archive generation except for latest update
10987             -- if user wants to update information, need to set latest action month update
10988             if l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is null
10989             or (l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is not null
10990                and to_char(l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_date_o,'MM') = to_char(g_effective_date,'MM'))
10991             or nvl(g_upd_force,'N') = 'Y' then
10992             --
10993               if g_debug
10994               and g_detail_debug = 'Y' then
10995                 l_archini_step := 193;
10996               end if;
10997             --
10998               pay_jp_wic_pkg.get_prev_jobs(
10999                 p_assignment_id        => l_assignment_id,
11000                 p_action_sequence      => l_data_tbl(l_data_tbl_cnt).assact_action_sequence,
11001                 p_business_group_id    => g_business_group_id,
11002                 p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
11003                 p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
11004                 p_itax_organization_id => l_data_tbl(l_data_tbl_cnt).emp_si_itax_org_id,
11005                 p_person_id            => l_data_tbl(l_data_tbl_cnt).emp_person_id,
11006                 p_prev_jobs            => l_prev_jobs);
11007             --
11008               if g_debug
11009               and g_detail_debug = 'Y' then
11010                 l_archini_step := 194;
11011               end if;
11012             --
11013               -- set g_data_pjob_ind_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
11014               -- set g_data_pjob_tbl based on g_data_pjob_ind_tbl.rec_ind1-15
11015                set_data_pjob_tbl(
11016                  p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
11017                  p_assignment_id        => l_assignment_id,
11018                  p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
11019                  p_prev_jobs            => l_prev_jobs);
11020             --
11021               if g_debug
11022               and g_detail_debug = 'Y' then
11023                 l_archini_step := 195;
11024               end if;
11025             --
11026               -- set g_data_dpnt_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
11027               -- called set_yea_wic_tbl
11028               set_data_dpnt_tbl(
11029                 p_assignment_action_id     => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
11030                 p_assignment_id            => l_assignment_id,
11031                 p_employee_number          => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
11032                 p_effective_date           => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
11033                 p_date_earned              => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
11034                 p_proc_type                => l_data_tbl(l_data_tbl_cnt).assact_proc_type,
11035                 p_dpnt_ref_type            => l_data_tbl(l_data_tbl_cnt).assact_dpnt_ref_type,
11036                 p_sal_assignment_action_id => l_data_tbl(l_data_tbl_cnt).sal_act,
11037                 p_sal_date_earned          => l_data_tbl(l_data_tbl_cnt).sal_erd);
11038             --
11039               if g_debug
11040               and g_detail_debug = 'Y' then
11041                 l_archini_step := 196;
11042               end if;
11043             --
11044             end if;
11045           --
11046           end if;
11047         --
11048           if l_prev_jobs.count > 0 then
11049           --
11050             l_data_tbl(l_data_tbl_cnt).pjob_cnt := l_prev_jobs.count;
11051           --
11052           end if;
11053         --
11054         end if;
11055       --
11056         if g_debug
11057         and g_detail_debug = 'Y' then
11058           l_archini_step := 197;
11059         end if;
11060       --
11061         if l_bon_tbl_cnt > 15 then
11062         --
11063           if g_debug
11064           and g_detail_debug = 'Y' then
11065             l_archini_step := 198;
11066           end if;
11067         --
11068           g_wng_tbl(g_wng_tbl_cnt).assignment_id   := l_assignment_id;
11069           g_wng_tbl(g_wng_tbl_cnt).employee_number := l_data_tbl(l_data_tbl_cnt).emp_employee_number;
11070           g_wng_tbl(g_wng_tbl_cnt).message_text    := fnd_message.get_string('PAY','PAY_JP_ITWB_BON_OVER');
11071         --
11072           g_wng_tbl_cnt := g_wng_tbl_cnt + 1;
11073         --
11074           if g_debug
11075           and g_detail_debug = 'Y' then
11076             l_archini_step := 199;
11077           end if;
11078         --
11079         end if;
11080       --
11081         if g_debug
11082         and g_detail_debug = 'Y' then
11083           l_archini_step := 200;
11084         end if;
11085       --
11086       -- initialize
11087       --
11088         l_assignment_id := l_csr_data_ass_upd.assignment_id;
11089         l_sal_assignment_action_id := null;
11090         l_sal_date_earned := null;
11091         l_bon_assignment_action_id := null;
11092         l_yea_assignment_action_id := null;
11093         l_prev_jobs.delete;
11094         --l_prev_jobs := null;
11095       --
11096         g_data_sal_ass_pay_tbl.delete;
11097         g_data_bon_ass_pay_tbl.delete;
11098         g_arch_sal_ass_pay_tbl.delete;
11099         g_arch_bon_ass_pay_tbl.delete;
11100       --
11101         g_data_sal_ass_pay_ind_tbl.delete;
11102         g_data_bon_ass_pay_ind_tbl.delete;
11103         g_arch_sal_ass_pay_ind_tbl.delete;
11104         g_arch_bon_ass_pay_ind_tbl.delete;
11105       --
11106         l_data_sal_act_mth1_tbl.delete;
11107         l_data_sal_act_mth2_tbl.delete;
11108         l_data_sal_act_mth3_tbl.delete;
11109         l_data_sal_act_mth4_tbl.delete;
11110         l_data_sal_act_mth5_tbl.delete;
11111         l_data_sal_act_mth6_tbl.delete;
11112         l_data_sal_act_mth7_tbl.delete;
11113         l_data_sal_act_mth8_tbl.delete;
11114         l_data_sal_act_mth9_tbl.delete;
11115         l_data_sal_act_mth10_tbl.delete;
11116         l_data_sal_act_mth11_tbl.delete;
11117         l_data_sal_act_mth12_tbl.delete;
11118       --
11119         l_mth1_tbl_cnt := 0;
11120         l_mth2_tbl_cnt := 0;
11121         l_mth3_tbl_cnt := 0;
11122         l_mth4_tbl_cnt := 0;
11123         l_mth5_tbl_cnt := 0;
11124         l_mth6_tbl_cnt := 0;
11125         l_mth7_tbl_cnt := 0;
11126         l_mth8_tbl_cnt := 0;
11127         l_mth9_tbl_cnt := 0;
11128         l_mth10_tbl_cnt := 0;
11129         l_mth11_tbl_cnt := 0;
11130         l_mth12_tbl_cnt := 0;
11131       --
11132         l_bon_tbl_cnt := 0;
11133         l_yea_tbl_cnt := 0;
11134       --
11135         l_data_tbl_cnt := l_data_tbl_cnt + 1;
11136       --
11137         if l_csr_data_ass_upd.larch_assignment_action_id is not null then
11138         --
11139           open csr_ass_bon_exc(l_csr_data_ass_upd.larch_assignment_action_id);
11140           fetch csr_ass_bon_exc into l_csr_ass_bon_exc;
11141           close csr_ass_bon_exc;
11142         --
11143           l_bon_tbl_cnt := sign(nvl(l_csr_ass_bon_exc.col_cnt1,0))
11144                            + sign(nvl(l_csr_ass_bon_exc.col_cnt2,0))
11145                            + sign(nvl(l_csr_ass_bon_exc.col_cnt3,0))
11146                            + sign(nvl(l_csr_ass_bon_exc.col_cnt4,0))
11147                            + sign(nvl(l_csr_ass_bon_exc.col_cnt5,0))
11148                            + sign(nvl(l_csr_ass_bon_exc.col_cnt6,0))
11149                            + sign(nvl(l_csr_ass_bon_exc.col_cnt7,0))
11150                            + sign(nvl(l_csr_ass_bon_exc.col_cnt8,0))
11151                            + sign(nvl(l_csr_ass_bon_exc.col_cnt9,0))
11152                            + sign(nvl(l_csr_ass_bon_exc.col_cnt10,0))
11153                            + sign(nvl(l_csr_ass_bon_exc.col_cnt11,0))
11154                            + sign(nvl(l_csr_ass_bon_exc.col_cnt12,0))
11155                            + sign(nvl(l_csr_ass_bon_exc.col_cnt13,0))
11156                            + sign(nvl(l_csr_ass_bon_exc.col_cnt14,0))
11157                            + sign(nvl(l_csr_ass_bon_exc.col_cnt15,0));
11158         --
11159           -- set dummy data 0 for non update month data
11160           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt1 := l_csr_ass_bon_exc.col_cnt1 * 0;
11161           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt2 := l_csr_ass_bon_exc.col_cnt2 * 0;
11162           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt3 := l_csr_ass_bon_exc.col_cnt3 * 0;
11163           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt4 := l_csr_ass_bon_exc.col_cnt4 * 0;
11164           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt5 := l_csr_ass_bon_exc.col_cnt5 * 0;
11165           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt6 := l_csr_ass_bon_exc.col_cnt6 * 0;
11166           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt7 := l_csr_ass_bon_exc.col_cnt7 * 0;
11167           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt8 := l_csr_ass_bon_exc.col_cnt8 * 0;
11168           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt9 := l_csr_ass_bon_exc.col_cnt9 * 0;
11169           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt10 := l_csr_ass_bon_exc.col_cnt10 * 0;
11170           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt11 := l_csr_ass_bon_exc.col_cnt11 * 0;
11171           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt12 := l_csr_ass_bon_exc.col_cnt12 * 0;
11172           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt13 := l_csr_ass_bon_exc.col_cnt13 * 0;
11173           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt14 := l_csr_ass_bon_exc.col_cnt14 * 0;
11174           l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt15 := l_csr_ass_bon_exc.col_cnt15 * 0;
11175         --
11176         end if;
11177       --
11178         if g_debug
11179         and g_detail_debug = 'Y' then
11180           l_archini_step := 201;
11181         end if;
11182       --
11183       end if;
11184     --
11185     -- initialize
11186     --
11187       g_data_item_act_sal_ern_tbl.delete;
11188       g_data_item_act_sal_dct_tbl.delete;
11189       g_data_item_act_bon_ern_tbl.delete;
11190       g_data_item_act_bon_dct_tbl.delete;
11191       g_data_item_act_wrk_tbl.delete;
11192     --
11193       if g_debug
11194       and g_detail_debug = 'Y' then
11195         l_archini_step := 202;
11196       end if;
11197     --
11198       -- override record to latest info (increment l_data_tbl_cnt when assignment is changed, so set final action info.)
11199       -- because 15 sequenced bonus record must be picked, cursor is ordered by action sequence, not desc.
11200       -- actually in update mode, assact information is only one for each assignment
11201       -- because update can work for one month period, not multiple month like add, new mode.
11202       --
11203       l_data_tbl(l_data_tbl_cnt).arch_assignment_action_id     := l_csr_data_ass_upd.arch_assignment_action_id;
11204       l_data_tbl(l_data_tbl_cnt).assact_assignment_id          := l_csr_data_ass_upd.assignment_id;
11205       l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id     := l_csr_data_ass_upd.proc_assignment_action_id;
11206       l_data_tbl(l_data_tbl_cnt).assact_action_sequence        := l_csr_data_ass_upd.action_sequence;
11207       l_data_tbl(l_data_tbl_cnt).assact_effective_date         := l_csr_data_ass_upd.effective_date;
11208       l_data_tbl(l_data_tbl_cnt).assact_date_earned            := l_csr_data_ass_upd.date_earned;
11209       l_data_tbl(l_data_tbl_cnt).assact_proc_type              := l_csr_data_ass_upd.proc_type;
11210       l_data_tbl(l_data_tbl_cnt).assact_dpnt_ref_type          := l_csr_data_ass_upd.dpnt_ref_type;
11211       l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o   := l_csr_data_ass_upd.larch_assignment_action_id;
11212       l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_date_o := l_csr_data_ass_upd.lproc_assignment_action_date;
11213       --
11214       if g_debug
11215       and g_detail_debug = 'Y' then
11216         l_archini_step := 203;
11217       end if;
11218     --
11219       -- will create new assact data for new assignment
11220       -- will copy latest assact data to new assact through archive generation except for latest update
11221       -- if user wants to update information, need to set latest action update
11222       if l_csr_data_ass_upd.larch_assignment_action_id is null
11223       or (l_csr_data_ass_upd.larch_assignment_action_id is not null
11224          and to_char(l_csr_data_ass_upd.lproc_assignment_action_date,'MM') = to_char(g_effective_date,'MM'))
11225       or nvl(g_upd_force,'N') = 'Y' then
11226       --
11227         if g_debug
11228         and g_detail_debug = 'Y' then
11229           l_archini_step := 204;
11230         end if;
11231       --
11232         l_data_tbl(l_data_tbl_cnt).assact_organization_id  := l_csr_data_ass_upd.organization_id;
11233         l_data_tbl(l_data_tbl_cnt).assact_job_id           := l_csr_data_ass_upd.job_id;
11234         l_data_tbl(l_data_tbl_cnt).assact_payroll_id       := l_csr_data_ass_upd.payroll_id;
11235         l_data_tbl(l_data_tbl_cnt).assact_location_id      := l_csr_data_ass_upd.location_id;
11236         l_data_tbl(l_data_tbl_cnt).assact_termination_date := l_csr_data_ass_upd.termination_date;
11237         l_data_tbl(l_data_tbl_cnt).assact_leaving_reason   := l_csr_data_ass_upd.leaving_reason;
11238         --
11239         l_data_tbl(l_data_tbl_cnt).emp_person_id       := l_csr_data_ass_upd.person_id;
11240         l_data_tbl(l_data_tbl_cnt).emp_employee_number := l_csr_data_ass_upd.employee_number;
11241         l_data_tbl(l_data_tbl_cnt).emp_last_name       := l_csr_data_ass_upd.last_name;
11242         l_data_tbl(l_data_tbl_cnt).emp_first_name      := l_csr_data_ass_upd.first_name;
11243         l_data_tbl(l_data_tbl_cnt).emp_last_name_kana  := l_csr_data_ass_upd.last_name_kana;
11244         l_data_tbl(l_data_tbl_cnt).emp_first_name_kana := l_csr_data_ass_upd.first_name_kana;
11245         l_data_tbl(l_data_tbl_cnt).emp_sex             := l_csr_data_ass_upd.sex;
11246         l_data_tbl(l_data_tbl_cnt).emp_birth_date      := l_csr_data_ass_upd.birth_date;
11247         --
11248         l_data_tbl(l_data_tbl_cnt).emp_add_address_id    := l_csr_data_ass_upd.address_id;
11249         l_data_tbl(l_data_tbl_cnt).emp_add_address_jp    := l_csr_data_ass_upd.address_jp;
11250         l_data_tbl(l_data_tbl_cnt).emp_add_postal_code   := l_csr_data_ass_upd.postal_code;
11251         l_data_tbl(l_data_tbl_cnt).emp_add_district_code := l_csr_data_ass_upd.district_code;
11252         l_data_tbl(l_data_tbl_cnt).emp_add_address       := l_csr_data_ass_upd.address;
11253         l_data_tbl(l_data_tbl_cnt).emp_add_address_kana  := l_csr_data_ass_upd.address_kana;
11254         l_data_tbl(l_data_tbl_cnt).emp_add_phone1        := l_csr_data_ass_upd.phone1;
11255         l_data_tbl(l_data_tbl_cnt).emp_add_phone2        := l_csr_data_ass_upd.phone2;
11256         --
11257         l_data_tbl(l_data_tbl_cnt).emp_ass_hire_date         := l_csr_data_ass_upd.hire_date;
11258         l_data_tbl(l_data_tbl_cnt).emp_ass_organization_name := l_csr_data_ass_upd.organization_name;
11259         l_data_tbl(l_data_tbl_cnt).emp_ass_job_name          := l_csr_data_ass_upd.job_name;
11260         l_data_tbl(l_data_tbl_cnt).emp_ass_payroll_name      := l_csr_data_ass_upd.payroll_name;
11261         l_data_tbl(l_data_tbl_cnt).emp_ass_location_name     := l_csr_data_ass_upd.location_code;
11262       --
11263         if g_debug
11264         and g_detail_debug = 'Y' then
11265           l_archini_step := 205;
11266         end if;
11267       --
11268       end if;
11269     --
11270       if g_debug
11271       and g_detail_debug = 'Y' then
11272         l_archini_step := 206;
11273       end if;
11274     --
11275       if l_csr_data_ass_upd.proc_type = 'SAL' then
11276       --
11277         if g_debug
11278         and g_detail_debug = 'Y' then
11279           l_archini_step := 207;
11280         end if;
11281       --
11282         -- separate for effective date base
11283         if to_char(l_csr_data_ass_upd.effective_date,'MM') = '01' then
11284         --
11285           l_data_sal_act_mth1_tbl(l_mth1_tbl_cnt) := l_csr_data_ass_upd.proc_assignment_action_id;
11286           l_mth1_tbl_cnt := l_mth1_tbl_cnt + 1;
11287         --
11288           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth1 := l_csr_data_ass_upd.proc_assignment_action_id;
11289           l_data_tbl(l_data_tbl_cnt).act_mth1_tbl := l_data_sal_act_mth1_tbl;
11290         --
11291         elsif to_char(l_csr_data_ass_upd.effective_date,'MM') = '02' then
11292         --
11293           l_data_sal_act_mth2_tbl(l_mth2_tbl_cnt) := l_csr_data_ass_upd.proc_assignment_action_id;
11294           l_mth2_tbl_cnt := l_mth2_tbl_cnt + 1;
11295         --
11296           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth2 := l_csr_data_ass_upd.proc_assignment_action_id;
11297           l_data_tbl(l_data_tbl_cnt).act_mth2_tbl := l_data_sal_act_mth2_tbl;
11298         --
11299         elsif to_char(l_csr_data_ass_upd.effective_date,'MM') = '03' then
11300         --
11301           l_data_sal_act_mth3_tbl(l_mth3_tbl_cnt) := l_csr_data_ass_upd.proc_assignment_action_id;
11302           l_mth3_tbl_cnt := l_mth3_tbl_cnt + 1;
11303         --
11304           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth3 := l_csr_data_ass_upd.proc_assignment_action_id;
11305           l_data_tbl(l_data_tbl_cnt).act_mth3_tbl := l_data_sal_act_mth3_tbl;
11306         --
11307         elsif to_char(l_csr_data_ass_upd.effective_date,'MM') = '04' then
11308         --
11309           l_data_sal_act_mth4_tbl(l_mth4_tbl_cnt) := l_csr_data_ass_upd.proc_assignment_action_id;
11310           l_mth4_tbl_cnt := l_mth4_tbl_cnt + 1;
11311         --
11312           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth4 := l_csr_data_ass_upd.proc_assignment_action_id;
11313           l_data_tbl(l_data_tbl_cnt).act_mth4_tbl := l_data_sal_act_mth4_tbl;
11314         --
11315         elsif to_char(l_csr_data_ass_upd.effective_date,'MM') = '05' then
11316         --
11317           l_data_sal_act_mth5_tbl(l_mth5_tbl_cnt) := l_csr_data_ass_upd.proc_assignment_action_id;
11318           l_mth5_tbl_cnt := l_mth5_tbl_cnt + 1;
11319         --
11320           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth5 := l_csr_data_ass_upd.proc_assignment_action_id;
11321           l_data_tbl(l_data_tbl_cnt).act_mth5_tbl := l_data_sal_act_mth5_tbl;
11322         --
11323         elsif to_char(l_csr_data_ass_upd.effective_date,'MM') = '06' then
11324         --
11325           l_data_sal_act_mth6_tbl(l_mth6_tbl_cnt) := l_csr_data_ass_upd.proc_assignment_action_id;
11326           l_mth6_tbl_cnt := l_mth6_tbl_cnt + 1;
11327         --
11328           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth6 := l_csr_data_ass_upd.proc_assignment_action_id;
11329           l_data_tbl(l_data_tbl_cnt).act_mth6_tbl := l_data_sal_act_mth6_tbl;
11330         --
11331         elsif to_char(l_csr_data_ass_upd.effective_date,'MM') = '07' then
11332         --
11333           l_data_sal_act_mth7_tbl(l_mth7_tbl_cnt) := l_csr_data_ass_upd.proc_assignment_action_id;
11334           l_mth7_tbl_cnt := l_mth7_tbl_cnt + 1;
11335         --
11336           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth7 := l_csr_data_ass_upd.proc_assignment_action_id;
11337           l_data_tbl(l_data_tbl_cnt).act_mth7_tbl := l_data_sal_act_mth7_tbl;
11338         --
11339         elsif to_char(l_csr_data_ass_upd.effective_date,'MM') = '08' then
11340         --
11341           l_data_sal_act_mth8_tbl(l_mth8_tbl_cnt) := l_csr_data_ass_upd.proc_assignment_action_id;
11342           l_mth8_tbl_cnt := l_mth8_tbl_cnt + 1;
11343         --
11344           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth8 := l_csr_data_ass_upd.proc_assignment_action_id;
11345           l_data_tbl(l_data_tbl_cnt).act_mth8_tbl := l_data_sal_act_mth8_tbl;
11346         --
11347         elsif to_char(l_csr_data_ass_upd.effective_date,'MM') = '09' then
11348         --
11349           l_data_sal_act_mth9_tbl(l_mth9_tbl_cnt) := l_csr_data_ass_upd.proc_assignment_action_id;
11350           l_mth9_tbl_cnt := l_mth9_tbl_cnt + 1;
11351         --
11352           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth9 := l_csr_data_ass_upd.proc_assignment_action_id;
11353           l_data_tbl(l_data_tbl_cnt).act_mth9_tbl := l_data_sal_act_mth9_tbl;
11354         --
11355         elsif to_char(l_csr_data_ass_upd.effective_date,'MM') = '10' then
11356         --
11357           l_data_sal_act_mth10_tbl(l_mth10_tbl_cnt) := l_csr_data_ass_upd.proc_assignment_action_id;
11358           l_mth10_tbl_cnt := l_mth10_tbl_cnt + 1;
11359         --
11360           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth10 := l_csr_data_ass_upd.proc_assignment_action_id;
11361           l_data_tbl(l_data_tbl_cnt).act_mth10_tbl := l_data_sal_act_mth10_tbl;
11362         --
11363         elsif to_char(l_csr_data_ass_upd.effective_date,'MM') = '11' then
11364         --
11365           l_data_sal_act_mth11_tbl(l_mth11_tbl_cnt) := l_csr_data_ass_upd.proc_assignment_action_id;
11366           l_mth11_tbl_cnt := l_mth11_tbl_cnt + 1;
11367         --
11368           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth11 := l_csr_data_ass_upd.proc_assignment_action_id;
11369           l_data_tbl(l_data_tbl_cnt).act_mth11_tbl := l_data_sal_act_mth11_tbl;
11370         --
11371         elsif to_char(l_csr_data_ass_upd.effective_date,'MM') = '12' then
11372         --
11373           l_data_sal_act_mth12_tbl(l_mth12_tbl_cnt) := l_csr_data_ass_upd.proc_assignment_action_id;
11374           l_mth12_tbl_cnt := l_mth12_tbl_cnt + 1;
11375         --
11376           l_data_tbl(l_data_tbl_cnt).sal_act_act_mth12 := l_csr_data_ass_upd.proc_assignment_action_id;
11377           l_data_tbl(l_data_tbl_cnt).act_mth12_tbl := l_data_sal_act_mth12_tbl;
11378         --
11379         end if;
11380       --
11381         if g_debug
11382         and g_detail_debug = 'Y' then
11383           l_archini_step := 208;
11384         end if;
11385       --
11386         -- set g_data_sal_tbl based on l_data_tbl(l_data_tbl_cnt).sal_act_act_mth1-12 for each month
11387         set_data_sal_tbl(
11388           p_assignment_action_id    => l_csr_data_ass_upd.proc_assignment_action_id,
11389           p_assignment_id           => l_csr_data_ass_upd.assignment_id,
11390           p_data_ass_effective_date => l_csr_data_ass_upd.effective_date,
11391           p_data_ass_date_earned    => l_csr_data_ass_upd.date_earned,
11392           p_data_ass_payroll_id     => l_csr_data_ass_upd.payroll_id);
11393       --
11394         if g_debug
11395         and g_detail_debug = 'Y' then
11396           l_archini_step := 209;
11397         end if;
11398       --
11399         -- set g_data_sal_ass_pay_tbl on each pay change for each assignment
11400         -- set g_data_pay_tbl based on arch_assignment_action_id
11401         set_data_sal_pay_tbl(
11402           p_assignment_action_id => l_csr_data_ass_upd.arch_assignment_action_id,
11403           p_assignment_id        => l_csr_data_ass_upd.assignment_id,
11404           p_data_ass_payroll_id  => l_csr_data_ass_upd.payroll_id);
11405       --
11406         if g_debug
11407         and g_detail_debug = 'Y' then
11408           l_archini_step := 210;
11409         end if;
11410       --
11411         -- call set_item_info_tbl, set g_item_info_ind_tbl based on ass payroll, data will be extracted from org info and ordered by disp sequence
11412         -- and set item type, item id into g_item_info_xxx_tbl based on g_item_info_ind_tbl.start-end cnt each item type for payroll, ie. sal_ern, sal_dct, bon_ern, bon_dct, wrk
11413         --
11414         -- set g_data_item_ass_xxx_tbl based on item_pk for each assignment, which is set on g_item_info_xxx_tbl
11415         -- call set_data_item_tbl_sal_val, set_data_item_tbl_bon_val to set data into g_data_item_ass_xxx_tbl for each month, cnt
11416         --
11417         -- set g_data_item_tbl based on l_data_tbl(l_data_tbl_cnt).sal_act_act_mth1-12 for each month
11418         set_data_item_tbl(
11419           p_assignment_action_id => l_csr_data_ass_upd.proc_assignment_action_id,
11420           p_type                 => 'SAL_ERN',
11421           p_data_ass_payroll_id  => l_csr_data_ass_upd.payroll_id,
11422           p_data_ass_date_earned => l_csr_data_ass_upd.date_earned);
11423       --
11424         if g_debug
11425         and g_detail_debug = 'Y' then
11426           l_archini_step := 211;
11427         end if;
11428       --
11429         set_data_item_tbl(
11430           p_assignment_action_id => l_csr_data_ass_upd.proc_assignment_action_id,
11431           p_type                 => 'SAL_DCT',
11432           p_data_ass_payroll_id  => l_csr_data_ass_upd.payroll_id,
11433           p_data_ass_date_earned => l_csr_data_ass_upd.date_earned);
11434       --
11435         if g_debug
11436         and g_detail_debug = 'Y' then
11437           l_archini_step := 212;
11438         end if;
11439       --
11440         set_data_item_tbl(
11441           p_assignment_action_id => l_csr_data_ass_upd.proc_assignment_action_id,
11442           p_type                 => 'WRK',
11443           p_data_ass_payroll_id  => l_csr_data_ass_upd.payroll_id,
11444           p_data_ass_date_earned => l_csr_data_ass_upd.date_earned);
11445       --
11446         if g_debug
11447         and g_detail_debug = 'Y' then
11448           l_archini_step := 213;
11449         end if;
11450       --
11451         -- set data for the latest action (the last record) for dependent and use to set pay tbl
11452         l_sal_assignment_action_id := l_csr_data_ass_upd.proc_assignment_action_id;
11453         l_sal_date_earned          := l_csr_data_ass_upd.date_earned;
11454       --
11455         if g_debug
11456         and g_detail_debug = 'Y' then
11457           l_archini_step := 214;
11458         end if;
11459       --
11460       elsif l_csr_data_ass_upd.proc_type = 'BON'
11461       or l_csr_data_ass_upd.proc_type = 'SPB' then
11462       --
11463         if g_debug
11464         and g_detail_debug = 'Y' then
11465           l_archini_step := 215;
11466         end if;
11467       --
11468         -- support to store only 15 first records, inconsiderable business case for more over
11469         if l_bon_tbl_cnt < 15 then
11470         --
11471           if g_debug
11472           and g_detail_debug = 'Y' then
11473             l_archini_step := 216;
11474           end if;
11475         --
11476           -- support update in only case bonus count is same after update
11477           if l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt1 is null then
11478           --
11479             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt1 := l_csr_data_ass_upd.proc_assignment_action_id;
11480           --
11481           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt2 is null then
11482           --
11483             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt2 := l_csr_data_ass_upd.proc_assignment_action_id;
11484           --
11485           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt3 is null then
11486           --
11487             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt3 := l_csr_data_ass_upd.proc_assignment_action_id;
11488           --
11489           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt4 is null then
11490           --
11491             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt4 := l_csr_data_ass_upd.proc_assignment_action_id;
11492           --
11493           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt5 is null then
11494           --
11495             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt5 := l_csr_data_ass_upd.proc_assignment_action_id;
11496           --
11497           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt6 is null then
11498           --
11499             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt6 := l_csr_data_ass_upd.proc_assignment_action_id;
11500           --
11501           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt7 is null then
11502           --
11503             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt7 := l_csr_data_ass_upd.proc_assignment_action_id;
11504           --
11505           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt8 is null then
11506           --
11507             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt8 := l_csr_data_ass_upd.proc_assignment_action_id;
11508           --
11509           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt9 is null then
11510           --
11511             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt9 := l_csr_data_ass_upd.proc_assignment_action_id;
11512           --
11513           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt10 is null then
11514           --
11515             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt10 := l_csr_data_ass_upd.proc_assignment_action_id;
11516           --
11517           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt11 is null then
11518           --
11519             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt11 := l_csr_data_ass_upd.proc_assignment_action_id;
11520           --
11521           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt12 is null then
11522           --
11523             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt12 := l_csr_data_ass_upd.proc_assignment_action_id;
11524           --
11525           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt13 is null then
11526           --
11527             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt13 := l_csr_data_ass_upd.proc_assignment_action_id;
11528           --
11529           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt14 is null then
11530           --
11531             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt14 := l_csr_data_ass_upd.proc_assignment_action_id;
11532           --
11533           elsif l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt15 is null then
11534           --
11535             l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt15 := l_csr_data_ass_upd.proc_assignment_action_id;
11536           --
11537           end if;
11538         --
11539           if g_debug
11540           and g_detail_debug = 'Y' then
11541             l_archini_step := 217;
11542           end if;
11543         --
11544           -- set g_data_bon_tbl based on l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt1-15 for each cnt
11545           set_data_bon_tbl(
11546             p_assignment_action_id    => l_csr_data_ass_upd.proc_assignment_action_id,
11547             p_assignment_id           => l_csr_data_ass_upd.assignment_id,
11548             p_data_ass_effective_date => l_csr_data_ass_upd.effective_date,
11549             p_data_ass_date_earned    => l_csr_data_ass_upd.date_earned,
11550             p_data_ass_payroll_id     => l_csr_data_ass_upd.payroll_id,
11551             p_data_ass_proc_type      => l_csr_data_ass_upd.proc_type);
11552         --
11553           if g_debug
11554           and g_detail_debug = 'Y' then
11555             l_archini_step := 218;
11556           end if;
11557         --
11558           -- set g_data_bon_ass_pay_tbl on each pay change for each assignment
11559           -- set g_data_pay_tbl based on arch_assignment_action_id
11560           set_data_bon_pay_tbl(
11561             p_assignment_action_id => l_csr_data_ass_upd.arch_assignment_action_id,
11562             p_assignment_id        => l_csr_data_ass_upd.assignment_id,
11563             p_data_ass_payroll_id  => l_csr_data_ass_upd.payroll_id);
11564         --
11565           if g_debug
11566           and g_detail_debug = 'Y' then
11567             l_archini_step := 219;
11568           end if;
11569         --
11570         -- call set_item_info_tbl, set g_item_info_ind_tbl based on ass payroll, data will be extracted from org info and ordered by disp sequence
11571         -- and set item type, item id into g_item_info_xxx_tbl based on g_item_info_ind_tbl.start-end cnt each item type for payroll, ie. sal_ern, sal_dct, bon_ern, bon_dct, wrk
11572         --
11573         -- set g_data_item_ass_xxx_tbl based on item_pk for each assignment, which is set on g_item_info_xxx_tbl
11574         -- call set_data_item_tbl_sal_val, set_data_item_tbl_bon_val to set data into g_data_item_ass_xxx_tbl for each month, cnt
11575         --
11576         -- set g_data_item_tbl based on l_data_tbl(l_data_tbl_cnt).bon_act_act_cnt1-15 for each cnt
11577           set_data_item_tbl(
11578             p_assignment_action_id => l_csr_data_ass_upd.proc_assignment_action_id,
11579             p_type                 => 'BON_ERN',
11580             p_data_ass_payroll_id  => l_csr_data_ass_upd.payroll_id,
11581             p_data_ass_date_earned => l_csr_data_ass_upd.date_earned);
11582         --
11583           if g_debug
11584           and g_detail_debug = 'Y' then
11585             l_archini_step := 220;
11586           end if;
11587         --
11588           set_data_item_tbl(
11589             p_assignment_action_id => l_csr_data_ass_upd.proc_assignment_action_id,
11590             p_type                 => 'BON_DCT',
11591             p_data_ass_payroll_id  => l_csr_data_ass_upd.payroll_id,
11592             p_data_ass_date_earned => l_csr_data_ass_upd.date_earned);
11593         --
11594           if g_debug
11595           and g_detail_debug = 'Y' then
11596             l_archini_step := 221;
11597           end if;
11598         --
11599         end if;
11600       --
11601         if g_debug
11602         and g_detail_debug = 'Y' then
11603           l_archini_step := 222;
11604         end if;
11605       --
11606         -- latest bon for assignment, use to set pay tbl
11607         l_bon_assignment_action_id := l_csr_data_ass_upd.proc_assignment_action_id;
11608       --
11609         l_bon_tbl_cnt := l_bon_tbl_cnt + 1;
11610       --
11611       elsif l_csr_data_ass_upd.proc_type = 'YEA'
11612       or l_csr_data_ass_upd.proc_type = 'REY' then
11613       --
11614         if g_debug
11615         and g_detail_debug = 'Y' then
11616           l_archini_step := 223;
11617         end if;
11618       --
11619         -- set data for the latest action (the last record)
11620         l_yea_assignment_action_id := l_csr_data_ass_upd.proc_assignment_action_id;
11621       --
11622         l_yea_tbl_cnt := l_yea_tbl_cnt + 1;
11623       --
11624       end if;
11625     --
11626       if g_debug
11627       and g_detail_debug = 'Y' then
11628         l_archini_step := 224;
11629       end if;
11630     --
11631     end loop;
11632     close csr_data_ass_upd;
11633   --
11634     if g_debug
11635     and g_detail_debug = 'Y' then
11636       l_archini_step := 225;
11637       hr_utility.set_location(l_proc,100);
11638       hr_utility.trace('l_data_tbl_cnt   : '||to_char(l_data_tbl_cnt));
11639       hr_utility.trace('l_data_tbl.count : '||to_char(l_data_tbl.count));
11640     end if;
11641   --
11642     -- set data for the last action of the last assignment since set data for the previous assignment in loop
11643     if l_data_tbl_cnt > 0 then
11644     --
11645       if g_debug
11646       and g_detail_debug = 'Y' then
11647         l_archini_step := 226;
11648       end if;
11649     --
11650       -- will create new assact data for new assignment
11651       -- will copy latest assact data to new assact through archive generation except for latest update
11652       -- if user wants to update information, need to set latest month action update
11653       if l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is null
11654       or (l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is not null
11655          and to_char(l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_date_o,'MM') = to_char(g_effective_date,'MM'))
11656       or nvl(g_upd_force,'N') = 'Y' then
11657       --
11658         if g_debug
11659         and g_detail_debug = 'Y' then
11660           l_archini_step := 227;
11661         end if;
11662       --
11663         l_data_tbl(l_data_tbl_cnt).emp_si_itax_org_id := pay_jp_balance_pkg.get_entry_value_number(c_itx_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11664         l_data_tbl(l_data_tbl_cnt).emp_si_itax_type   := pay_jp_balance_pkg.get_entry_value_char(c_itx_type_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11665         l_data_tbl(l_data_tbl_cnt).emp_si_hi_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_hi_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11666         l_data_tbl(l_data_tbl_cnt).emp_si_hi_number   := pay_jp_balance_pkg.get_entry_value_char(c_hi_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11667         l_data_tbl(l_data_tbl_cnt).emp_si_wp_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_wp_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11668         l_data_tbl(l_data_tbl_cnt).emp_si_wp_number   := pay_jp_balance_pkg.get_entry_value_char(c_wp_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11669         l_data_tbl(l_data_tbl_cnt).emp_si_wpf_org_id  := pay_jp_balance_pkg.get_entry_value_number(c_wpf_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11670         l_data_tbl(l_data_tbl_cnt).emp_si_wpf_number  := pay_jp_balance_pkg.get_entry_value_char(c_wpf_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11671         l_data_tbl(l_data_tbl_cnt).emp_si_ei_org_id   := pay_jp_balance_pkg.get_entry_value_number(c_ei_org_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11672         l_data_tbl(l_data_tbl_cnt).emp_si_ei_number   := pay_jp_balance_pkg.get_entry_value_char(c_ei_number_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11673         --
11674         l_nres_flag_eev                                      := pay_jp_balance_pkg.get_entry_value_char(c_nres_flag_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11675         l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date    := pay_jp_balance_pkg.get_entry_value_date(c_nres_start_date_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11676         l_data_tbl(l_data_tbl_cnt).emp_si_projected_res_date := pay_jp_balance_pkg.get_entry_value_date(c_projected_res_date_iv_id,l_assignment_id,l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11677         --
11678         if g_debug
11679         and g_detail_debug = 'Y' then
11680           l_archini_step := 228;
11681         end if;
11682         --
11683         if l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date is not null then
11684         --
11685           if g_debug
11686           and g_detail_debug = 'Y' then
11687             l_archini_step := 229;
11688           end if;
11689         --
11690           if l_data_tbl(l_data_tbl_cnt).emp_si_nres_start_date <= l_data_tbl(l_data_tbl_cnt).assact_effective_date
11691           and nvl(l_data_tbl(l_data_tbl_cnt).emp_si_projected_res_date,l_data_tbl(l_data_tbl_cnt).assact_effective_date + 1) > l_data_tbl(l_data_tbl_cnt).assact_effective_date then
11692           --
11693             l_data_tbl(l_data_tbl_cnt).emp_si_nres_flag := 'Y';
11694           --
11695           end if;
11696         --
11697         else
11698         --
11699           if g_debug
11700           and g_detail_debug = 'Y' then
11701             l_archini_step := 230;
11702           end if;
11703         --
11704           if nvl(l_nres_flag_eev,'N') = 'Y' then
11705           --
11706             l_data_tbl(l_data_tbl_cnt).emp_si_nres_flag := 'Y';
11707           --
11708           end if;
11709         --
11710         end if;
11711       --
11712         if g_debug
11713         and g_detail_debug = 'Y' then
11714           l_archini_step := 231;
11715         end if;
11716       --
11717         if g_debug
11718         and g_detail_debug = 'Y' then
11719           l_archini_step := 232;
11720         end if;
11721       --
11722         -- set g_data_cust_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
11723         set_data_cust_tbl(
11724           p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
11725           p_assignment_id        => l_assignment_id,
11726           p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
11727           p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
11728           p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned);
11729       --
11730         if g_debug
11731         and g_detail_debug = 'Y' then
11732           l_archini_step := 233;
11733         end if;
11734       --
11735       end if;
11736     --
11737       -- latest sal for assignment, use to get dpnt info and use to set pay tbl
11738       if l_sal_assignment_action_id is not null then
11739       --
11740         if g_debug
11741         and g_detail_debug = 'Y' then
11742           l_archini_step := 234;
11743         end if;
11744       --
11745         l_data_tbl(l_data_tbl_cnt).sal_act := l_sal_assignment_action_id;
11746         l_data_tbl(l_data_tbl_cnt).sal_erd := l_sal_date_earned;
11747       --
11748         if g_debug
11749         and g_detail_debug = 'Y' then
11750           l_archini_step := 235;
11751         end if;
11752       --
11753       end if;
11754     --
11755       -- latest bon for assignment, use to set pay tbl
11756       if l_bon_assignment_action_id is not null then
11757       --
11758         if g_debug
11759         and g_detail_debug = 'Y' then
11760           l_archini_step := 236;
11761         end if;
11762       --
11763         l_data_tbl(l_data_tbl_cnt).bon_act := l_bon_assignment_action_id;
11764       --
11765       end if;
11766     --
11767       if g_debug
11768       and g_detail_debug = 'Y' then
11769         l_archini_step := 237;
11770       end if;
11771     --
11772       -- latest yea for assignment (ie. yea exist)
11773       if l_yea_assignment_action_id is not null then
11774       --
11775         if g_debug
11776         and g_detail_debug = 'Y' then
11777           l_archini_step := 238;
11778         end if;
11779       --
11780         l_data_tbl(l_data_tbl_cnt).yea_act := l_yea_assignment_action_id;
11781       --
11782         if g_debug
11783         and g_detail_debug = 'Y' then
11784           l_archini_step := 239;
11785         end if;
11786       --
11787         -- set g_data_yea_tbl based on l_data_tbl(l_data_tbl_cnt).yea_act
11788         -- called set_yea_wic_tbl, set g_yea_wic_tbl based on l_data_tbl(l_data_tbl_cnt).yea_act
11789         set_data_yea_tbl(
11790           p_assignment_action_id => l_yea_assignment_action_id,
11791           p_assignment_id        => l_assignment_id,
11792           p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
11793           p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
11794           p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
11795           p_payroll_id           => l_data_tbl(l_data_tbl_cnt).assact_payroll_id,
11796           p_proc_type            => l_data_tbl(l_data_tbl_cnt).assact_proc_type);
11797       --
11798         if g_debug
11799         and g_detail_debug = 'Y' then
11800           l_archini_step := 240;
11801         end if;
11802       --
11803       end if;
11804     --
11805       if g_debug
11806       and g_detail_debug = 'Y' then
11807         l_archini_step := 241;
11808       end if;
11809     --
11810       -- need to set g_yea_wic_tbl.prev_jobs for yea, rey before here (ie. by above set_data_yea_tbl)
11811       -- otherwise set l_prev_jobs for latest sal, bon
11812       if l_data_tbl(l_data_tbl_cnt).assact_proc_type = 'YEA'
11813       or l_data_tbl(l_data_tbl_cnt).assact_proc_type = 'REY' then
11814       --
11815         if g_debug
11816         and g_detail_debug = 'Y' then
11817           l_archini_step := 242;
11818         end if;
11819       --
11820         if g_yea_wic_tbl.count > 0 then
11821         --
11822           l_prev_jobs := g_yea_wic_tbl(l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id).prev_jobs;
11823         --
11824         end if;
11825       --
11826         if g_debug
11827         and g_detail_debug = 'Y' then
11828           l_archini_step := 243;
11829         end if;
11830       --
11831         -- set g_data_pjob_ind_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
11832         -- set g_data_pjob_tbl based on g_data_pjob_ind_tbl.rec_ind1-15
11833         set_data_pjob_tbl(
11834           p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
11835           p_assignment_id        => l_assignment_id,
11836           p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
11837           p_prev_jobs            => l_prev_jobs);
11838       --
11839         if g_debug
11840         and g_detail_debug = 'Y' then
11841           l_archini_step := 244;
11842         end if;
11843       --
11844         -- set g_data_dpnt_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
11845         -- called set_yea_wic_tbl
11846         set_data_dpnt_tbl(
11847           p_assignment_action_id     => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
11848           p_assignment_id            => l_assignment_id,
11849           p_employee_number          => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
11850           p_effective_date           => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
11851           p_date_earned              => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
11852           p_proc_type                => l_data_tbl(l_data_tbl_cnt).assact_proc_type,
11853           p_dpnt_ref_type            => l_data_tbl(l_data_tbl_cnt).assact_dpnt_ref_type,
11854           p_sal_assignment_action_id => l_data_tbl(l_data_tbl_cnt).sal_act,
11855           p_sal_date_earned          => l_data_tbl(l_data_tbl_cnt).sal_erd);
11856       --
11857         if g_debug
11858         and g_detail_debug = 'Y' then
11859           l_archini_step := 245;
11860         end if;
11861       --
11862       else
11863       --
11864         if g_debug
11865         and g_detail_debug = 'Y' then
11866           l_archini_step := 246;
11867         end if;
11868       --
11869         -- will create new assact data for new assignment
11870         -- will copy latest assact data to new assact through archive generation except for latest update
11871         -- if user wants to update information, need to set latest action month update
11872         if l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is null
11873         or (l_data_tbl(l_data_tbl_cnt).assact_arch_ass_action_id_o is not null
11874            and to_char(l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_date_o,'MM') = to_char(g_effective_date,'MM'))
11875         or nvl(g_upd_force,'N') = 'Y' then
11876         --
11877           if g_debug
11878           and g_detail_debug = 'Y' then
11879             l_archini_step := 247;
11880           end if;
11881         --
11882           pay_jp_wic_pkg.get_prev_jobs(
11883             p_assignment_id        => l_assignment_id,
11884             p_action_sequence      => l_data_tbl(l_data_tbl_cnt).assact_action_sequence,
11885             p_business_group_id    => g_business_group_id,
11886             p_effective_date       => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
11887             p_date_earned          => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
11888             p_itax_organization_id => l_data_tbl(l_data_tbl_cnt).emp_si_itax_org_id,
11889             p_person_id            => l_data_tbl(l_data_tbl_cnt).emp_person_id,
11890             p_prev_jobs            => l_prev_jobs);
11891         --
11892           if g_debug
11893           and g_detail_debug = 'Y' then
11894             l_archini_step := 248;
11895           end if;
11896         --
11897           -- set g_data_pjob_ind_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
11898           -- set g_data_pjob_tbl based on g_data_pjob_ind_tbl.rec_ind1-15
11899           set_data_pjob_tbl(
11900             p_assignment_action_id => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
11901             p_assignment_id        => l_assignment_id,
11902             p_employee_number      => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
11903             p_prev_jobs            => l_prev_jobs);
11904         --
11905           if g_debug
11906           and g_detail_debug = 'Y' then
11907             l_archini_step := 249;
11908           end if;
11909         --
11910           -- set g_data_dpnt_tbl based on l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id (latest assact)
11911           -- called set_yea_wic_tbl
11912           set_data_dpnt_tbl(
11913             p_assignment_action_id     => l_data_tbl(l_data_tbl_cnt).assact_proc_ass_action_id,
11914             p_assignment_id            => l_assignment_id,
11915             p_employee_number          => l_data_tbl(l_data_tbl_cnt).emp_employee_number,
11916             p_effective_date           => l_data_tbl(l_data_tbl_cnt).assact_effective_date,
11917             p_date_earned              => l_data_tbl(l_data_tbl_cnt).assact_date_earned,
11918             p_proc_type                => l_data_tbl(l_data_tbl_cnt).assact_proc_type,
11919             p_dpnt_ref_type            => l_data_tbl(l_data_tbl_cnt).assact_dpnt_ref_type,
11920             p_sal_assignment_action_id => l_data_tbl(l_data_tbl_cnt).sal_act,
11921             p_sal_date_earned          => l_data_tbl(l_data_tbl_cnt).sal_erd);
11922         --
11923           if g_debug
11924           and g_detail_debug = 'Y' then
11925             l_archini_step := 250;
11926           end if;
11927         --
11928         end if;
11929       --
11930       end if;
11931     --
11932       if g_debug
11933       and g_detail_debug = 'Y' then
11934         l_archini_step := 251;
11935       end if;
11936     --
11937       if l_prev_jobs.count > 0 then
11938       --
11939         l_data_tbl(l_data_tbl_cnt).pjob_cnt := l_prev_jobs.count;
11940       --
11941       end if;
11942     --
11943       if g_debug
11944       and g_detail_debug = 'Y' then
11945         l_archini_step := 252;
11946       end if;
11947     --
11948       if l_bon_tbl_cnt > 15 then
11949       --
11950         if g_debug
11951         and g_detail_debug = 'Y' then
11952           l_archini_step := 253;
11953         end if;
11954       --
11955         g_wng_tbl(g_wng_tbl_cnt).assignment_id   := l_assignment_id;
11956         g_wng_tbl(g_wng_tbl_cnt).employee_number := l_data_tbl(l_data_tbl_cnt).emp_employee_number;
11957         g_wng_tbl(g_wng_tbl_cnt).message_text    := fnd_message.get_string('PAY','PAY_JP_ITWB_BON_OVER');
11958       --
11959         g_wng_tbl_cnt := g_wng_tbl_cnt + 1;
11960       --
11961       end if;
11962     --
11963       if g_debug
11964       and g_detail_debug = 'Y' then
11965         l_archini_step := 254;
11966       end if;
11967     --
11968     end if;
11969   --
11970     if g_debug
11971     and g_detail_debug = 'Y' then
11972       l_archini_step := 255;
11973       hr_utility.set_location(l_proc,110);
11974     end if;
11975   --
11976   end if;
11977 --
11978   if g_debug
11979   and g_detail_debug = 'Y' then
11980     l_archini_step := 256;
11981     hr_utility.set_location(l_proc,120);
11982     hr_utility.trace('l_data_tbl.count : '||to_char(l_data_tbl.count));
11983   end if;
11984 --
11985   -- l_data_tbl record exist for each assignment, l_data_tbl_cnt was inclremented in only case assignment change
11986   for i in 1..l_data_tbl.count loop
11987   --
11988     if g_debug
11989     and g_detail_debug = 'Y' then
11990       l_archini_step := 257;
11991     end if;
11992   --
11993     -- -----------------------------------------------------
11994     -- g_assact_tbl setup
11995     -- -----------------------------------------------------
11996     g_assact_tbl(i) := l_data_tbl(i).arch_assignment_action_id;
11997   --
11998     if g_debug
11999     and g_detail_debug = 'Y' then
12000       l_archini_step := 258;
12001     end if;
12002   --
12003     -- -----------------------------------------------------
12004     -- g_body_tbl setup
12005     -- -----------------------------------------------------
12006     g_body_tbl(g_assact_tbl(i)).arch_assignment_action_id     := l_data_tbl(i).arch_assignment_action_id;
12007     g_body_tbl(g_assact_tbl(i)).assact_assignment_id          := l_data_tbl(i).assact_assignment_id;
12008     g_body_tbl(g_assact_tbl(i)).assact_proc_ass_action_id     := l_data_tbl(i).assact_proc_ass_action_id;
12009     g_body_tbl(g_assact_tbl(i)).assact_action_sequence        := l_data_tbl(i).assact_action_sequence;
12010     g_body_tbl(g_assact_tbl(i)).assact_effective_date         := l_data_tbl(i).assact_effective_date;
12011     g_body_tbl(g_assact_tbl(i)).assact_date_earned            := l_data_tbl(i).assact_date_earned;
12012     g_body_tbl(g_assact_tbl(i)).assact_proc_type              := l_data_tbl(i).assact_proc_type;
12013     g_body_tbl(g_assact_tbl(i)).assact_dpnt_ref_type          := l_data_tbl(i).assact_dpnt_ref_type;
12014     g_body_tbl(g_assact_tbl(i)).assact_arch_ass_action_id_o   := l_data_tbl(i).assact_arch_ass_action_id_o;
12015     g_body_tbl(g_assact_tbl(i)).assact_proc_ass_action_date_o := l_data_tbl(i).assact_proc_ass_action_date_o;
12016     --
12017     g_body_tbl(g_assact_tbl(i)).assact_organization_id  := l_data_tbl(i).assact_organization_id;
12018     g_body_tbl(g_assact_tbl(i)).assact_job_id           := l_data_tbl(i).assact_job_id;
12019     g_body_tbl(g_assact_tbl(i)).assact_payroll_id       := l_data_tbl(i).assact_payroll_id;
12020     g_body_tbl(g_assact_tbl(i)).assact_location_id      := l_data_tbl(i).assact_location_id;
12021     g_body_tbl(g_assact_tbl(i)).assact_termination_date := l_data_tbl(i).assact_termination_date;
12022     g_body_tbl(g_assact_tbl(i)).assact_leaving_reason   := l_data_tbl(i).assact_leaving_reason;
12023     --
12024     g_body_tbl(g_assact_tbl(i)).emp_person_id       := l_data_tbl(i).emp_person_id;
12025     g_body_tbl(g_assact_tbl(i)).emp_employee_number := l_data_tbl(i).emp_employee_number;
12026     g_body_tbl(g_assact_tbl(i)).emp_last_name       := l_data_tbl(i).emp_last_name;
12027     g_body_tbl(g_assact_tbl(i)).emp_first_name      := l_data_tbl(i).emp_first_name;
12028     g_body_tbl(g_assact_tbl(i)).emp_last_name_kana  := l_data_tbl(i).emp_last_name_kana;
12029     g_body_tbl(g_assact_tbl(i)).emp_first_name_kana := l_data_tbl(i).emp_first_name_kana;
12030     g_body_tbl(g_assact_tbl(i)).emp_sex             := l_data_tbl(i).emp_sex;
12031     g_body_tbl(g_assact_tbl(i)).emp_birth_date      := l_data_tbl(i).emp_birth_date;
12032     --
12033     g_body_tbl(g_assact_tbl(i)).emp_add_address_id    := l_data_tbl(i).emp_add_address_id;
12034     g_body_tbl(g_assact_tbl(i)).emp_add_address_jp    := l_data_tbl(i).emp_add_address_jp;
12035     g_body_tbl(g_assact_tbl(i)).emp_add_postal_code   := l_data_tbl(i).emp_add_postal_code;
12036     g_body_tbl(g_assact_tbl(i)).emp_add_district_code := l_data_tbl(i).emp_add_district_code;
12037     g_body_tbl(g_assact_tbl(i)).emp_add_address       := l_data_tbl(i).emp_add_address;
12038     g_body_tbl(g_assact_tbl(i)).emp_add_address_kana  := l_data_tbl(i).emp_add_address_kana;
12039     g_body_tbl(g_assact_tbl(i)).emp_add_phone1        := l_data_tbl(i).emp_add_phone1;
12040     g_body_tbl(g_assact_tbl(i)).emp_add_phone2        := l_data_tbl(i).emp_add_phone2;
12041     --
12042     g_body_tbl(g_assact_tbl(i)).emp_ass_hire_date         := l_data_tbl(i).emp_ass_hire_date;
12043     g_body_tbl(g_assact_tbl(i)).emp_ass_organization_name := l_data_tbl(i).emp_ass_organization_name;
12044     g_body_tbl(g_assact_tbl(i)).emp_ass_job_name          := l_data_tbl(i).emp_ass_job_name;
12045     g_body_tbl(g_assact_tbl(i)).emp_ass_payroll_name      := l_data_tbl(i).emp_ass_payroll_name;
12046     g_body_tbl(g_assact_tbl(i)).emp_ass_location_name     := l_data_tbl(i).emp_ass_location_name;
12047     --
12048     g_body_tbl(g_assact_tbl(i)).emp_si_itax_org_id        := l_data_tbl(i).emp_si_itax_org_id;
12049     g_body_tbl(g_assact_tbl(i)).emp_si_itax_type          := l_data_tbl(i).emp_si_itax_type;
12050     g_body_tbl(g_assact_tbl(i)).emp_si_hi_org_id          := l_data_tbl(i).emp_si_hi_org_id;
12051     g_body_tbl(g_assact_tbl(i)).emp_si_hi_number          := l_data_tbl(i).emp_si_hi_number;
12052     g_body_tbl(g_assact_tbl(i)).emp_si_wp_org_id          := l_data_tbl(i).emp_si_wp_org_id;
12053     g_body_tbl(g_assact_tbl(i)).emp_si_wp_number          := l_data_tbl(i).emp_si_wp_number;
12054     g_body_tbl(g_assact_tbl(i)).emp_si_wpf_org_id         := l_data_tbl(i).emp_si_wpf_org_id;
12055     g_body_tbl(g_assact_tbl(i)).emp_si_wpf_number         := l_data_tbl(i).emp_si_wpf_number;
12056     g_body_tbl(g_assact_tbl(i)).emp_si_ei_org_id          := l_data_tbl(i).emp_si_ei_org_id;
12057     g_body_tbl(g_assact_tbl(i)).emp_si_ei_number          := l_data_tbl(i).emp_si_ei_number;
12058     g_body_tbl(g_assact_tbl(i)).emp_si_nres_flag          := l_data_tbl(i).emp_si_nres_flag;
12059     g_body_tbl(g_assact_tbl(i)).emp_si_nres_start_date    := l_data_tbl(i).emp_si_nres_start_date;
12060     g_body_tbl(g_assact_tbl(i)).emp_si_projected_res_date := l_data_tbl(i).emp_si_projected_res_date;
12061     --
12062     g_body_tbl(g_assact_tbl(i)).sal_act_act_mth1  := l_data_tbl(i).sal_act_act_mth1;
12063     g_body_tbl(g_assact_tbl(i)).sal_act_act_mth2  := l_data_tbl(i).sal_act_act_mth2;
12064     g_body_tbl(g_assact_tbl(i)).sal_act_act_mth3  := l_data_tbl(i).sal_act_act_mth3;
12065     g_body_tbl(g_assact_tbl(i)).sal_act_act_mth4  := l_data_tbl(i).sal_act_act_mth4;
12066     g_body_tbl(g_assact_tbl(i)).sal_act_act_mth5  := l_data_tbl(i).sal_act_act_mth5;
12067     g_body_tbl(g_assact_tbl(i)).sal_act_act_mth6  := l_data_tbl(i).sal_act_act_mth6;
12068     g_body_tbl(g_assact_tbl(i)).sal_act_act_mth7  := l_data_tbl(i).sal_act_act_mth7;
12069     g_body_tbl(g_assact_tbl(i)).sal_act_act_mth8  := l_data_tbl(i).sal_act_act_mth8;
12070     g_body_tbl(g_assact_tbl(i)).sal_act_act_mth9  := l_data_tbl(i).sal_act_act_mth9;
12071     g_body_tbl(g_assact_tbl(i)).sal_act_act_mth10 := l_data_tbl(i).sal_act_act_mth10;
12072     g_body_tbl(g_assact_tbl(i)).sal_act_act_mth11 := l_data_tbl(i).sal_act_act_mth11;
12073     g_body_tbl(g_assact_tbl(i)).sal_act_act_mth12 := l_data_tbl(i).sal_act_act_mth12;
12074     --
12075     -- g_data_sal_tbl based on sal_act_act_mth1-12 (act_mth1_tbl1-12)
12076     -- - sal_act_efd
12077     -- - sal_act_erd
12078     -- - sal_act_pay
12079     -- - sal_pay_txbl_mon
12080     -- - sal_pay_txbl_kind
12081     -- - sal_pay_txbl_mon_nres
12082     -- - sal_pay_txbl_kind_nres
12083     -- - sal_pay_txbl
12084     -- - sal_pay_pay
12085     -- - sal_pay_ntxbl
12086     -- - sal_pay_hi
12087     -- - sal_pay_wp
12088     -- - sal_pay_wpf
12089     -- - sal_pay_ei
12090     -- - sal_pay_si
12091     -- - sal_pay_ci
12092     -- - sal_pay_dct_earn
12093     -- - sal_pay_itx_type
12094     -- - sal_pay_disable_type
12095     -- - sal_pay_widow_type
12096     -- - sal_pay_working_student_type
12097     -- - sal_pay_spouse_type
12098     -- - sal_pay_spouse_disable_type
12099     -- - sal_pay_num_of_dep
12100     -- - sal_pay_num_of_gen_disabled
12101     -- - sal_pay_num_of_sev_disabled
12102     -- - sal_pay_num_of_sev_disabled_lt
12103     -- - sal_pay_num_of_spouse
12104     -- - sal_pay_num_of_dpt
12105     -- - sal_pay_dpts
12106     -- - sal_pay_itx
12107     -- - sal_pay_ltx
12108     -- - sal_pay_ltx_lump
12109     -- - sal_pay_dct
12110     -- - sal_pay_net_pay
12111     -- - sal_pay_yea_itx
12112     -- - sal_pay_net_itx
12113     -- - sal_pay_calc_dct
12114     -- - sal_pay_calc_net_pay
12115     --
12116     -- g_data_pay_tbl based on g_assact_tbl(i)
12117     -- - sal_pay_tbl = g_data_sal_ass_pay_tbl
12118     --   - payroll_id
12119     --   - ord_num
12120     -- - bon_pay_tbl = g_data_bon_ass_pay_tbl
12121     --   - payroll_id
12122     --   - ord_num
12123     --
12124     -- g_item_info_ind_tbl based on g_data_sal_ass_pay_tbl.payroll_id
12125     -- - sal_ern_start
12126     -- - sal_ern_end
12127     -- - sal_dct_start
12128     -- - sal_dct_end
12129     -- - bon_ern_start
12130     -- - bon_ern_end
12131     -- - bon_dct_start
12132     -- - bon_dct_end
12133     -- - wrk_start
12134     -- - wrk_end
12135     --
12136     -- g_item_info_sal_ern_tbl based on g_item_info_ind_tbl.sal_ern_start/sal_ern_end
12137     -- g_item_info_sal_dct_tbl based on g_item_info_ind_tbl.sal_dct_start/sal_dct_end
12138     -- g_item_info_bon_ern_tbl based on g_item_info_ind_tbl.bon_ern_start/bon_ern_end
12139     -- g_item_info_bon_dct_tbl based on g_item_info_ind_tbl.bon_dct_start/bon_dct_end
12140     -- g_item_info_wrk_tbl based on g_item_info_ind_tbl.wrk_start/wrk_end
12141     -- - item_pk
12142     -- - item_cat
12143     -- - item_type
12144     -- - item_id
12145     -- - item_rep_name
12146     -- - item_rep_seq
12147     --
12148     -- g_data_item_tbl based on sal_act_act_mth1-12 (act_mth1_tbl1-12), bon_act_act_cnt1-15
12149     -- - sal_ern_tbl = g_data_item_act_sal_ern_tbl based on item_pk
12150     --   - col_val
12151     --
12152     -- - sal_dct_tbl = g_data_item_act_sal_dct_tbl based on item_pk
12153     -- - bon_ern_tbl = g_data_item_act_bon_ern_tbl based on item_pk
12154     -- - bon_dct_tbl = g_data_item_act_bon_dct_tbl based on item_pk
12155     -- - wrk_tbl     = g_data_item_act_wrk_tbl based on item_pk
12156     --
12157     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt1  := l_data_tbl(i).bon_act_act_cnt1;
12158     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt2  := l_data_tbl(i).bon_act_act_cnt2;
12159     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt3  := l_data_tbl(i).bon_act_act_cnt3;
12160     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt4  := l_data_tbl(i).bon_act_act_cnt4;
12161     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt5  := l_data_tbl(i).bon_act_act_cnt5;
12162     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt6  := l_data_tbl(i).bon_act_act_cnt6;
12163     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt7  := l_data_tbl(i).bon_act_act_cnt7;
12164     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt8  := l_data_tbl(i).bon_act_act_cnt8;
12165     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt9  := l_data_tbl(i).bon_act_act_cnt9;
12166     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt10 := l_data_tbl(i).bon_act_act_cnt10;
12167     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt11 := l_data_tbl(i).bon_act_act_cnt11;
12168     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt12 := l_data_tbl(i).bon_act_act_cnt12;
12169     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt13 := l_data_tbl(i).bon_act_act_cnt13;
12170     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt14 := l_data_tbl(i).bon_act_act_cnt14;
12171     g_body_tbl(g_assact_tbl(i)).bon_act_act_cnt15 := l_data_tbl(i).bon_act_act_cnt15;
12172     --
12173     -- g_data_bon_tbl based on bon_act_act_cnt1-15
12174     -- - bon_act_efd
12175     -- - bon_act_erd
12176     -- - bon_act_pay
12177     -- - bon_act_type
12178     -- - bon_pay_txbl_mon
12179     -- - bon_pay_txbl_kind
12180     -- - bon_pay_txbl_mon_nres
12181     -- - bon_pay_txbl_kind_nres
12182     -- - bon_pay_txbl
12183     -- - bon_pay_pay
12184     -- - bon_pay_ntxbl
12185     -- - bon_pay_hi
12186     -- - bon_pay_wp
12187     -- - bon_pay_wpf
12188     -- - bon_pay_ei
12189     -- - bon_pay_si
12190     -- - bon_pay_ci
12191     -- - bon_pay_dct_earn
12192     -- - bon_pay_itx_type
12193     -- - bon_pay_disable_type
12194     -- - bon_pay_widow_type
12195     -- - bon_pay_working_student_type
12196     -- - bon_pay_spouse_type
12197     -- - bon_pay_spouse_disable_type
12198     -- - bon_pay_num_of_dep
12199     -- - bon_pay_num_of_gen_disabled
12200     -- - bon_pay_num_of_sev_disabled
12201     -- - bon_pay_num_of_sev_disabled_lt
12202     -- - bon_pay_itx_rate
12203     -- - bon_pay_num_of_spouse
12204     -- - bon_pay_num_of_dpt
12205     -- - bon_pay_dpts
12206     -- - bon_pay_itx
12207     -- - bon_pay_ltx_lump
12208     -- - bon_pay_dct
12209     -- - bon_pay_net_pay
12210     -- - bon_pay_yea_itx
12211     -- - bon_pay_net_itx
12212     -- - bon_pay_calc_dct
12213     -- - bon_pay_calc_net_pay
12214     --
12215     g_body_tbl(g_assact_tbl(i)).sal_act  := l_data_tbl(i).sal_act;
12216     g_body_tbl(g_assact_tbl(i)).sal_erd  := l_data_tbl(i).sal_erd;
12217     g_body_tbl(g_assact_tbl(i)).bon_act  := l_data_tbl(i).bon_act;
12218     g_body_tbl(g_assact_tbl(i)).pjob_cnt := l_data_tbl(i).pjob_cnt;
12219     --
12220     -- g_data_pjob_ind_tbl based on assact_proc_ass_action_id (latest assact)
12221     -- - rec_ind1-15
12222     --
12223     -- g_data_pjob_tbl based on g_data_pjob_ind_tbl.rec_ind1-15
12224     -- - employer_name
12225     -- - employer_name_kana
12226     -- - employer_address
12227     -- - employer_address_kana
12228     -- - txbl_inc
12229     -- - si_prem
12230     -- - mutual_aid_prem
12231     -- - itax
12232     -- - term_date
12233     --
12234     -- g_data_dpnt_tbl based on assact_proc_ass_action_id (latest assact)
12235     -- - dpnt_declare_flag
12236     -- - dpnt_spouse_flag
12237     -- - dpnt_gen_spouse_flag
12238     -- - dpnt_elder_spouse_flag
12239     -- - dpnt_num_of_dep
12240     -- - dpnt_num_of_specific_dep
12241     -- - dpnt_num_of_elder_parent_lt
12242     -- - dpnt_num_of_elder_dep
12243     -- - dpnt_num_of_gen_disabled
12244     -- - dpnt_num_of_sev_disabled
12245     -- - dpnt_num_of_sev_disabled_lt
12246     -- - dpnt_disable_type
12247     -- - dpnt_widow_type
12248     -- - dpnt_working_student_type
12249     -- - dpnt_num_of_otsu_dep
12250     -- - dpnt_itx_type
12251     -- - dpnt_spouse_type
12252     -- - dpnt_nres_flag
12253     --
12254     g_body_tbl(g_assact_tbl(i)).yea_act := l_data_tbl(i).yea_act;
12255     --
12256     -- g_data_yea_tbl baesd on l_data_tbl(i).yea_act
12257     -- - yea_act_id
12258     -- - yea_act_efd
12259     -- - yea_act_erd
12260     -- - yea_act_pay
12261     -- - yea_act_type
12262     -- - yea_act_include_flag
12263     -- - yea_pay_sal_txbl_mon
12264     -- - yea_pay_sal_txbl_kind
12265     -- - yea_pay_sal_txbl
12266     -- - yea_pay_bon_txbl_mon
12267     -- - yea_pay_bon_txbl_kind
12268     -- - yea_pay_bon_txbl
12269     -- - yea_pay_spb_txbl_mon
12270     -- - yea_pay_spb_txbl_kind
12271     -- - yea_pay_spb_txbl
12272     -- - yea_pay_bon_txbl_calc
12273     -- - yea_pay_txbl
12274     -- - yea_pay_sal_itx
12275     -- - yea_pay_bon_itx
12276     -- - yea_pay_spb_itx
12277     -- - yea_pay_bon_itx_calc
12278     -- - yea_pay_withhold_itx_calc
12279     -- - yea_tax_amt_aft_emp_inc_dct
12280     -- - yea_dct_dec_si_prem
12281     -- - yea_dct_dec_sc_mut_prem
12282     -- - yea_dct_sal_dct_si_prem_calc
12283     -- - yea_dct_life_ins_prem_exm
12284     -- - yea_dct_eq_ins_prem_exm
12285     -- - yea_dct_spouse_sp_exm
12286     -- - yea_dct_basic_exm
12287     -- - yea_dct_gen_spouse_exm
12288     -- - yea_dct_elder_spouse_exm
12289     -- - yea_dct_gen_dep_exm
12290     -- - yea_dct_specific_dep_exm
12291     -- - yea_dct_junior_dep_exm
12292     -- - yea_dct_elder_dep_exm
12293     -- - yea_dct_elder_parent_lt_exm
12294     -- - yea_dct_gen_disabled_exm
12295     -- - yea_dct_sev_disabled_exm
12296     -- - yea_dct_sev_disabled_lt_exm
12297     -- - yea_dct_elder_exm
12298     -- - yea_dct_widow_exm
12299     -- - yea_dct_sp_widow_exm
12300     -- - yea_dct_working_student_exm
12301     -- - yea_dct_dep_exm_calc
12302     -- - yea_dct_spouse_income
12303     -- - yea_dct_ind_pension_prem
12304     -- - yea_dct_lt_nonlife_ins_prem
12305     -- - yea_dct_sc_mut_prem
12306     -- - yea_dct_sc_mut_prem_calc
12307     -- - yea_dct_national_pension_prem
12308     -- - yea_dct_income_exm
12309     -- - yea_tax_net_txbl_income
12310     -- - yea_tax_annual_tax
12311     -- - yea_tax_act_housing_loan
12312     -- - yea_tax_yea_annual_tax
12313     -- - yea_tax_yea_tax_pay
12314     --
12315     -- g_data_cust_tbl based on assact_proc_ass_action_id (latest assact)
12316     -- - txt_information1-15
12317     -- - date_information1-15
12318     -- - num_information1-15
12319     --
12320     g_body_tbl(g_assact_tbl(i)).act_mth1_tbl  := l_data_tbl(i).act_mth1_tbl;
12321     g_body_tbl(g_assact_tbl(i)).act_mth2_tbl  := l_data_tbl(i).act_mth2_tbl;
12322     g_body_tbl(g_assact_tbl(i)).act_mth3_tbl  := l_data_tbl(i).act_mth3_tbl;
12323     g_body_tbl(g_assact_tbl(i)).act_mth4_tbl  := l_data_tbl(i).act_mth4_tbl;
12324     g_body_tbl(g_assact_tbl(i)).act_mth5_tbl  := l_data_tbl(i).act_mth5_tbl;
12325     g_body_tbl(g_assact_tbl(i)).act_mth6_tbl  := l_data_tbl(i).act_mth6_tbl;
12326     g_body_tbl(g_assact_tbl(i)).act_mth7_tbl  := l_data_tbl(i).act_mth7_tbl;
12327     g_body_tbl(g_assact_tbl(i)).act_mth8_tbl  := l_data_tbl(i).act_mth8_tbl;
12328     g_body_tbl(g_assact_tbl(i)).act_mth9_tbl  := l_data_tbl(i).act_mth9_tbl;
12329     g_body_tbl(g_assact_tbl(i)).act_mth10_tbl := l_data_tbl(i).act_mth10_tbl;
12330     g_body_tbl(g_assact_tbl(i)).act_mth11_tbl := l_data_tbl(i).act_mth11_tbl;
12331     g_body_tbl(g_assact_tbl(i)).act_mth12_tbl := l_data_tbl(i).act_mth12_tbl;
12332   --
12333     if g_debug
12334     and g_detail_debug = 'Y' then
12335       l_archini_step := 259;
12336     end if;
12337   --
12338   end loop;
12339 --
12340   if g_debug
12341   and g_detail_debug = 'Y' then
12342     hr_utility.set_location(l_proc,130);
12343     l_archini_step := 260;
12344   end if;
12345 --
12346   log_wng_tbl;
12347 --
12348   if g_debug
12349   and g_detail_debug = 'Y' then
12350     l_archini_step := 261;
12351   end if;
12352 --
12353   if g_debug then
12354   --
12355     l_archini_step := 1000;
12356     hr_utility.trace('archini_step : '||to_char(l_archini_step));
12357     hr_utility.trace('g_body_tbl.count : '||to_char(g_body_tbl.count));
12358     hr_utility.set_location(l_proc,1000);
12359   --
12360   end if;
12361 --
12362 exception
12363 when others then
12364 --
12365   l_error_code := sqlcode;
12366   l_error_mesg := substrb(sqlerrm,1,100);
12367 --
12368   hr_utility.trace('archinit error : '||l_error_code||' : '||l_error_mesg);
12369 --
12370   if g_debug
12371   and g_detail_debug = 'Y' then
12372     hr_utility.trace('archini_step : '||to_char(l_archini_step));
12373   end if;
12374 --
12375   raise;
12376 --
12377 end archinit;
12378 --
12379 -- -------------------------------------------------------------------------
12380 -- init_assact
12381 -- -------------------------------------------------------------------------
12382 --procedure init_assact(
12383 --  p_assignment_action_id in number,
12384 --  p_assignment_id        in number)
12385 --is
12386 ----
12387 --  l_proc varchar2(80) := c_package||'init_assact';
12388 ----
12389 --begin
12390 ----
12391 --  if g_debug then
12392 --    hr_utility.set_location(l_proc,0);
12393 --  end if;
12394 --  --
12395 --  if g_debug then
12396 --    hr_utility.set_location(l_proc,1000);
12397 --  end if;
12398 ----
12399 --end init_assact;
12400 --
12401 -- -------------------------------------------------------------------------
12402 -- archive_assact
12403 -- -------------------------------------------------------------------------
12404 procedure archive_assact(
12405   p_assignment_action_id in number,
12406   p_assignment_id        in number)
12407 is
12408 --
12409   l_proc varchar2(80) := c_package||'archive_assact';
12410 --
12411   l_arch_assignment_action_id   number;
12412   l_proc_assignment_action_id   number;
12413   l_arch_assignment_action_id_o number;
12414   l_proc_assact_date_o          date;
12415 --
12416   l_data_sal_ass_pay_tbl t_data_ass_pay_tbl;
12417   l_data_bon_ass_pay_tbl t_data_ass_pay_tbl;
12418   --
12419   l_sal_ern_tbl_mth1  t_data_item_ass_tbl;
12420   l_sal_ern_tbl_mth2  t_data_item_ass_tbl;
12421   l_sal_ern_tbl_mth3  t_data_item_ass_tbl;
12422   l_sal_ern_tbl_mth4  t_data_item_ass_tbl;
12423   l_sal_ern_tbl_mth5  t_data_item_ass_tbl;
12424   l_sal_ern_tbl_mth6  t_data_item_ass_tbl;
12425   l_sal_ern_tbl_mth7  t_data_item_ass_tbl;
12426   l_sal_ern_tbl_mth8  t_data_item_ass_tbl;
12427   l_sal_ern_tbl_mth9  t_data_item_ass_tbl;
12428   l_sal_ern_tbl_mth10 t_data_item_ass_tbl;
12429   l_sal_ern_tbl_mth11 t_data_item_ass_tbl;
12430   l_sal_ern_tbl_mth12 t_data_item_ass_tbl;
12431   --
12432   l_sal_dct_tbl_mth1  t_data_item_ass_tbl;
12433   l_sal_dct_tbl_mth2  t_data_item_ass_tbl;
12434   l_sal_dct_tbl_mth3  t_data_item_ass_tbl;
12435   l_sal_dct_tbl_mth4  t_data_item_ass_tbl;
12436   l_sal_dct_tbl_mth5  t_data_item_ass_tbl;
12437   l_sal_dct_tbl_mth6  t_data_item_ass_tbl;
12438   l_sal_dct_tbl_mth7  t_data_item_ass_tbl;
12439   l_sal_dct_tbl_mth8  t_data_item_ass_tbl;
12440   l_sal_dct_tbl_mth9  t_data_item_ass_tbl;
12441   l_sal_dct_tbl_mth10 t_data_item_ass_tbl;
12442   l_sal_dct_tbl_mth11 t_data_item_ass_tbl;
12443   l_sal_dct_tbl_mth12 t_data_item_ass_tbl;
12444   --
12445   l_bon_ern_tbl_cnt1  t_data_item_ass_tbl;
12446   l_bon_ern_tbl_cnt2  t_data_item_ass_tbl;
12447   l_bon_ern_tbl_cnt3  t_data_item_ass_tbl;
12448   l_bon_ern_tbl_cnt4  t_data_item_ass_tbl;
12449   l_bon_ern_tbl_cnt5  t_data_item_ass_tbl;
12450   l_bon_ern_tbl_cnt6  t_data_item_ass_tbl;
12451   l_bon_ern_tbl_cnt7  t_data_item_ass_tbl;
12452   l_bon_ern_tbl_cnt8  t_data_item_ass_tbl;
12453   l_bon_ern_tbl_cnt9  t_data_item_ass_tbl;
12454   l_bon_ern_tbl_cnt10 t_data_item_ass_tbl;
12455   l_bon_ern_tbl_cnt11 t_data_item_ass_tbl;
12456   l_bon_ern_tbl_cnt12 t_data_item_ass_tbl;
12457   l_bon_ern_tbl_cnt13 t_data_item_ass_tbl;
12458   l_bon_ern_tbl_cnt14 t_data_item_ass_tbl;
12459   l_bon_ern_tbl_cnt15 t_data_item_ass_tbl;
12460   --
12461   l_bon_dct_tbl_cnt1  t_data_item_ass_tbl;
12462   l_bon_dct_tbl_cnt2  t_data_item_ass_tbl;
12463   l_bon_dct_tbl_cnt3  t_data_item_ass_tbl;
12464   l_bon_dct_tbl_cnt4  t_data_item_ass_tbl;
12465   l_bon_dct_tbl_cnt5  t_data_item_ass_tbl;
12466   l_bon_dct_tbl_cnt6  t_data_item_ass_tbl;
12467   l_bon_dct_tbl_cnt7  t_data_item_ass_tbl;
12468   l_bon_dct_tbl_cnt8  t_data_item_ass_tbl;
12469   l_bon_dct_tbl_cnt9  t_data_item_ass_tbl;
12470   l_bon_dct_tbl_cnt10 t_data_item_ass_tbl;
12471   l_bon_dct_tbl_cnt11 t_data_item_ass_tbl;
12472   l_bon_dct_tbl_cnt12 t_data_item_ass_tbl;
12473   l_bon_dct_tbl_cnt13 t_data_item_ass_tbl;
12474   l_bon_dct_tbl_cnt14 t_data_item_ass_tbl;
12475   l_bon_dct_tbl_cnt15 t_data_item_ass_tbl;
12476   --
12477   l_wrk_tbl_mth1  t_data_item_ass_tbl;
12478   l_wrk_tbl_mth2  t_data_item_ass_tbl;
12479   l_wrk_tbl_mth3  t_data_item_ass_tbl;
12480   l_wrk_tbl_mth4  t_data_item_ass_tbl;
12481   l_wrk_tbl_mth5  t_data_item_ass_tbl;
12482   l_wrk_tbl_mth6  t_data_item_ass_tbl;
12483   l_wrk_tbl_mth7  t_data_item_ass_tbl;
12484   l_wrk_tbl_mth8  t_data_item_ass_tbl;
12485   l_wrk_tbl_mth9  t_data_item_ass_tbl;
12486   l_wrk_tbl_mth10 t_data_item_ass_tbl;
12487   l_wrk_tbl_mth11 t_data_item_ass_tbl;
12488   l_wrk_tbl_mth12 t_data_item_ass_tbl;
12489 --
12490   l_pjob_rec_ind number;
12491 --
12492   l_pjob_copy varchar2(1);
12493 --
12494   l_action_information_id number;
12495   l_object_version_number number;
12496 --
12497   l_skip boolean := false;
12498 --
12499   l_error_code number;
12500   l_error_mesg varchar2(100);
12501   l_archive_step number;
12502 --
12503 begin
12504 --
12505   if g_debug then
12506     hr_utility.set_location(l_proc,0);
12507     l_archive_step := 0;
12508   end if;
12509 --
12510   l_arch_assignment_action_id := g_body_tbl(p_assignment_action_id).arch_assignment_action_id;
12511 --
12512   if g_debug
12513   and g_detail_debug = 'Y' then
12514     l_archive_step := 1;
12515     hr_utility.set_location(l_proc,10);
12516     hr_utility.trace('p_assignment_action_id      : '||to_char(p_assignment_action_id));
12517     hr_utility.trace('l_arch_assignment_action_id : '||to_char(l_arch_assignment_action_id));
12518   end if;
12519 --
12520   if l_arch_assignment_action_id is not null
12521   and l_arch_assignment_action_id = p_assignment_action_id then
12522   --
12523     if g_debug
12524     and g_detail_debug = 'Y' then
12525       l_archive_step := 2;
12526       hr_utility.set_location(l_proc,20);
12527     end if;
12528   --
12529     l_arch_assignment_action_id_o := g_body_tbl(p_assignment_action_id).assact_arch_ass_action_id_o;
12530     l_proc_assignment_action_id   := g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id;
12531     l_proc_assact_date_o          := g_body_tbl(p_assignment_action_id).assact_proc_ass_action_date_o;
12532   --
12533     if g_debug
12534     and g_detail_debug = 'Y' then
12535       l_archive_step := 3;
12536       hr_utility.set_location(l_proc,30);
12537       hr_utility.trace('l_arch_assignment_action_id_o : '||to_char(l_arch_assignment_action_id_o));
12538       hr_utility.trace('l_proc_assignment_action_id   : '||to_char(l_proc_assignment_action_id));
12539       hr_utility.trace('l_proc_assact_date_o          : '||to_char(l_proc_assact_date_o,'YYYY/MM/DD'));
12540       hr_utility.trace('g_arch_option                 : '||g_arch_option);
12541     end if;
12542   --
12543     -- use latest action data plus add additional data
12544     -- -----------------------------------
12545     -- ADD (exist latest assact)
12546     -- -----------------------------------
12547     if g_arch_option = 'ADD'
12548     and l_arch_assignment_action_id_o is not null then
12549     --
12550       if g_debug
12551       and g_detail_debug = 'Y' then
12552         l_archive_step := 4;
12553         hr_utility.set_location(l_proc,40);
12554         hr_utility.trace('ADD mode and latest arch exist');
12555       end if;
12556     --
12557       -- include copy, before updating
12558       -- update status for all case
12559       pay_jp_itwb_dml_pkg.add_assact(
12560         p_assignment_action_id        => p_assignment_action_id,
12561         p_effective_date              => g_effective_date,
12562         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12563         p_proc_assignment_action_id   => l_proc_assignment_action_id,
12564         p_status                      => g_arch_option,
12565         p_action_information_id       => l_action_information_id,
12566         p_object_version_number       => l_object_version_number);
12567     --
12568       if g_debug
12569       and g_detail_debug = 'Y' then
12570         l_archive_step := 5;
12571       end if;
12572     --
12573       pay_jp_itwb_dml_pkg.copy_pai(
12574         p_action_context_id           => p_assignment_action_id,
12575         p_effective_date              => g_effective_date,
12576         p_action_context_id_o         => l_arch_assignment_action_id_o,
12577         p_action_context_type         => 'AAP',
12578         p_action_information_category => 'JP_ITWB_EMP',
12579         p_action_information_id       => l_action_information_id,
12580         p_object_version_number       => l_object_version_number);
12581     --
12582       if g_debug
12583       and g_detail_debug = 'Y' then
12584         l_archive_step := 6;
12585       end if;
12586     --
12587       pay_jp_itwb_dml_pkg.copy_pai(
12588         p_action_context_id           => p_assignment_action_id,
12589         p_effective_date              => g_effective_date,
12590         p_action_context_id_o         => l_arch_assignment_action_id_o,
12591         p_action_context_type         => 'AAP',
12592         p_action_information_category => 'JP_ITWB_EMP_ADD',
12593         p_action_information_id       => l_action_information_id,
12594         p_object_version_number       => l_object_version_number);
12595     --
12596       if g_debug
12597       and g_detail_debug = 'Y' then
12598         l_archive_step := 7;
12599       end if;
12600     --
12601       pay_jp_itwb_dml_pkg.copy_pai(
12602         p_action_context_id           => p_assignment_action_id,
12603         p_effective_date              => g_effective_date,
12604         p_action_context_id_o         => l_arch_assignment_action_id_o,
12605         p_action_context_type         => 'AAP',
12606         p_action_information_category => 'JP_ITWB_EMP_ASS',
12607         p_action_information_id       => l_action_information_id,
12608         p_object_version_number       => l_object_version_number);
12609     --
12610       if g_debug
12611       and g_detail_debug = 'Y' then
12612         l_archive_step := 8;
12613       end if;
12614     --
12615       pay_jp_itwb_dml_pkg.copy_pai(
12616         p_action_context_id           => p_assignment_action_id,
12617         p_effective_date              => g_effective_date,
12618         p_action_context_id_o         => l_arch_assignment_action_id_o,
12619         p_action_context_type         => 'AAP',
12620         p_action_information_category => 'JP_ITWB_EMP_SI',
12621         p_action_information_id       => l_action_information_id,
12622         p_object_version_number       => l_object_version_number);
12623     --
12624       if g_debug
12625       and g_detail_debug = 'Y' then
12626         l_archive_step := 9;
12627       end if;
12628     --
12629       -- include copy, before adding
12630       -- add = update in only case when data is not null
12631       pay_jp_itwb_dml_pkg.add_sal_act(
12632         p_assignment_action_id        => p_assignment_action_id,
12633         p_effective_date              => g_effective_date,
12634         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12635         p_category                    => 'ACT',
12636         p_col_mth1                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth1),
12637         p_col_mth2                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth2),
12638         p_col_mth3                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth3),
12639         p_col_mth4                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth4),
12640         p_col_mth5                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth5),
12641         p_col_mth6                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth6),
12642         p_col_mth7                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth7),
12643         p_col_mth8                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth8),
12644         p_col_mth9                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth9),
12645         p_col_mth10                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth10),
12646         p_col_mth11                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth11),
12647         p_col_mth12                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth12),
12648         p_action_information_id       => l_action_information_id,
12649         p_object_version_number       => l_object_version_number);
12650     --
12651       if g_debug
12652       and g_detail_debug = 'Y' then
12653         l_archive_step := 10;
12654       end if;
12655     --
12656       pay_jp_itwb_dml_pkg.add_sal_act(
12657         p_assignment_action_id        => p_assignment_action_id,
12658         p_effective_date              => g_effective_date,
12659         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12660         p_category                    => 'EFD',
12661         p_col_mth1                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_act_efd),
12662         p_col_mth2                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_act_efd),
12663         p_col_mth3                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_act_efd),
12664         p_col_mth4                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_act_efd),
12665         p_col_mth5                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_act_efd),
12666         p_col_mth6                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_act_efd),
12667         p_col_mth7                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_act_efd),
12668         p_col_mth8                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_act_efd),
12669         p_col_mth9                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_act_efd),
12670         p_col_mth10                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_act_efd),
12671         p_col_mth11                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_act_efd),
12672         p_col_mth12                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_act_efd),
12673         p_action_information_id       => l_action_information_id,
12674         p_object_version_number       => l_object_version_number);
12675     --
12676       if g_debug
12677       and g_detail_debug = 'Y' then
12678         l_archive_step := 11;
12679       end if;
12680     --
12681       pay_jp_itwb_dml_pkg.add_sal_act(
12682         p_assignment_action_id        => p_assignment_action_id,
12683         p_effective_date              => g_effective_date,
12684         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12685         p_category                    => 'ERD',
12686         p_col_mth1                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_act_erd),
12687         p_col_mth2                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_act_erd),
12688         p_col_mth3                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_act_erd),
12689         p_col_mth4                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_act_erd),
12690         p_col_mth5                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_act_erd),
12691         p_col_mth6                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_act_erd),
12692         p_col_mth7                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_act_erd),
12693         p_col_mth8                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_act_erd),
12694         p_col_mth9                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_act_erd),
12695         p_col_mth10                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_act_erd),
12696         p_col_mth11                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_act_erd),
12697         p_col_mth12                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_act_erd),
12698         p_action_information_id       => l_action_information_id,
12699         p_object_version_number       => l_object_version_number);
12700     --
12701       if g_debug
12702       and g_detail_debug = 'Y' then
12703         l_archive_step := 12;
12704       end if;
12705     --
12706       pay_jp_itwb_dml_pkg.add_sal_act(
12707         p_assignment_action_id        => p_assignment_action_id,
12708         p_effective_date              => g_effective_date,
12709         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12710         p_category                    => 'PAY',
12711         p_col_mth1                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_act_pay),
12712         p_col_mth2                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_act_pay),
12713         p_col_mth3                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_act_pay),
12714         p_col_mth4                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_act_pay),
12715         p_col_mth5                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_act_pay),
12716         p_col_mth6                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_act_pay),
12717         p_col_mth7                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_act_pay),
12718         p_col_mth8                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_act_pay),
12719         p_col_mth9                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_act_pay),
12720         p_col_mth10                   => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_act_pay),
12721         p_col_mth11                   => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_act_pay),
12722         p_col_mth12                   => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_act_pay),
12723         p_action_information_id       => l_action_information_id,
12724         p_object_version_number       => l_object_version_number);
12725     --
12726       if g_debug
12727       and g_detail_debug = 'Y' then
12728         l_archive_step := 13;
12729       end if;
12730     --
12731       -- set col_tot later, set_data_pay_col_tot
12732       pay_jp_itwb_dml_pkg.add_sal_pay(
12733         p_assignment_action_id        => p_assignment_action_id,
12734         p_effective_date              => g_effective_date,
12735         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12736         p_category                    => 'TXBL',
12737         p_col_mth1                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
12738         p_col_mth2                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
12739         p_col_mth3                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
12740         p_col_mth4                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
12741         p_col_mth5                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
12742         p_col_mth6                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
12743         p_col_mth7                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
12744         p_col_mth8                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
12745         p_col_mth9                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
12746         p_col_mth10                   => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
12747         p_col_mth11                   => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
12748         p_col_mth12                   => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
12749         p_col_tot                     => null,
12750         p_action_information_id       => l_action_information_id,
12751         p_object_version_number       => l_object_version_number);
12752     --
12753       if g_debug
12754       and g_detail_debug = 'Y' then
12755         l_archive_step := 14;
12756       end if;
12757     --
12758       pay_jp_itwb_dml_pkg.add_sal_pay(
12759         p_assignment_action_id        => p_assignment_action_id,
12760         p_effective_date              => g_effective_date,
12761         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12762         p_category                    => 'NTXBL',
12763         p_col_mth1                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
12764         p_col_mth2                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
12765         p_col_mth3                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
12766         p_col_mth4                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
12767         p_col_mth5                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
12768         p_col_mth6                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
12769         p_col_mth7                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
12770         p_col_mth8                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
12771         p_col_mth9                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
12772         p_col_mth10                   => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
12773         p_col_mth11                   => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
12774         p_col_mth12                   => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
12775         p_col_tot                     => null,
12776         p_action_information_id       => l_action_information_id,
12777         p_object_version_number       => l_object_version_number);
12778     --
12779       if g_debug
12780       and g_detail_debug = 'Y' then
12781         l_archive_step := 15;
12782       end if;
12783     --
12784       pay_jp_itwb_dml_pkg.add_sal_pay(
12785         p_assignment_action_id        => p_assignment_action_id,
12786         p_effective_date              => g_effective_date,
12787         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12788         p_category                    => 'PAY',
12789         p_col_mth1                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
12790         p_col_mth2                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
12791         p_col_mth3                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
12792         p_col_mth4                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
12793         p_col_mth5                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
12794         p_col_mth6                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
12795         p_col_mth7                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
12796         p_col_mth8                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
12797         p_col_mth9                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
12798         p_col_mth10                   => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
12799         p_col_mth11                   => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
12800         p_col_mth12                   => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
12801         p_col_tot                     => null,
12802         p_action_information_id       => l_action_information_id,
12803         p_object_version_number       => l_object_version_number);
12804     --
12805       if g_debug
12806       and g_detail_debug = 'Y' then
12807         l_archive_step := 16;
12808       end if;
12809     --
12810       pay_jp_itwb_dml_pkg.add_sal_pay(
12811         p_assignment_action_id        => p_assignment_action_id,
12812         p_effective_date              => g_effective_date,
12813         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12814         p_category                    => 'HI',
12815         p_col_mth1                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
12816         p_col_mth2                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
12817         p_col_mth3                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
12818         p_col_mth4                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
12819         p_col_mth5                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
12820         p_col_mth6                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
12821         p_col_mth7                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
12822         p_col_mth8                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
12823         p_col_mth9                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
12824         p_col_mth10                   => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
12825         p_col_mth11                   => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
12826         p_col_mth12                   => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
12827         p_col_tot                     => null,
12828         p_action_information_id       => l_action_information_id,
12829         p_object_version_number       => l_object_version_number);
12830     --
12831       if g_debug
12832       and g_detail_debug = 'Y' then
12833         l_archive_step := 17;
12834       end if;
12835     --
12836       pay_jp_itwb_dml_pkg.add_sal_pay(
12837         p_assignment_action_id        => p_assignment_action_id,
12838         p_effective_date              => g_effective_date,
12839         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12840         p_category                    => 'CI',
12841         p_col_mth1                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
12842         p_col_mth2                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
12843         p_col_mth3                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
12844         p_col_mth4                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
12845         p_col_mth5                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
12846         p_col_mth6                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
12847         p_col_mth7                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
12848         p_col_mth8                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
12849         p_col_mth9                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
12850         p_col_mth10                   => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
12851         p_col_mth11                   => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
12852         p_col_mth12                   => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
12853         p_col_tot                     => null,
12854         p_action_information_id       => l_action_information_id,
12855         p_object_version_number       => l_object_version_number);
12856     --
12857       if g_debug
12858       and g_detail_debug = 'Y' then
12859         l_archive_step := 18;
12860       end if;
12861     --
12862       pay_jp_itwb_dml_pkg.add_sal_pay(
12863         p_assignment_action_id        => p_assignment_action_id,
12864         p_effective_date              => g_effective_date,
12865         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12866         p_category                    => 'WP',
12867         p_col_mth1                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
12868         p_col_mth2                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
12869         p_col_mth3                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
12870         p_col_mth4                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
12871         p_col_mth5                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
12872         p_col_mth6                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
12873         p_col_mth7                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
12874         p_col_mth8                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
12875         p_col_mth9                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
12876         p_col_mth10                   => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
12877         p_col_mth11                   => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
12878         p_col_mth12                   => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
12879         p_col_tot                     => null,
12880         p_action_information_id       => l_action_information_id,
12881         p_object_version_number       => l_object_version_number);
12882     --
12883       if g_debug
12884       and g_detail_debug = 'Y' then
12885         l_archive_step := 19;
12886       end if;
12887     --
12888       pay_jp_itwb_dml_pkg.add_sal_pay(
12889         p_assignment_action_id        => p_assignment_action_id,
12890         p_effective_date              => g_effective_date,
12891         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12892         p_category                    => 'WPF',
12893         p_col_mth1                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
12894         p_col_mth2                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
12895         p_col_mth3                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
12896         p_col_mth4                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
12897         p_col_mth5                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
12898         p_col_mth6                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
12899         p_col_mth7                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
12900         p_col_mth8                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
12901         p_col_mth9                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
12902         p_col_mth10                   => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
12903         p_col_mth11                   => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
12904         p_col_mth12                   => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
12905         p_col_tot                     => null,
12906         p_action_information_id       => l_action_information_id,
12907         p_object_version_number       => l_object_version_number);
12908     --
12909       if g_debug
12910       and g_detail_debug = 'Y' then
12911         l_archive_step := 20;
12912       end if;
12913     --
12914       pay_jp_itwb_dml_pkg.add_sal_pay(
12915         p_assignment_action_id        => p_assignment_action_id,
12916         p_effective_date              => g_effective_date,
12917         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12918         p_category                    => 'EI',
12919         p_col_mth1                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
12920         p_col_mth2                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
12921         p_col_mth3                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
12922         p_col_mth4                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
12923         p_col_mth5                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
12924         p_col_mth6                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
12925         p_col_mth7                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
12926         p_col_mth8                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
12927         p_col_mth9                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
12928         p_col_mth10                   => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
12929         p_col_mth11                   => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
12930         p_col_mth12                   => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
12931         p_col_tot                     => null,
12932         p_action_information_id       => l_action_information_id,
12933         p_object_version_number       => l_object_version_number);
12934     --
12935       if g_debug
12936       and g_detail_debug = 'Y' then
12937         l_archive_step := 21;
12938       end if;
12939     --
12940       pay_jp_itwb_dml_pkg.add_sal_pay(
12941         p_assignment_action_id        => p_assignment_action_id,
12942         p_effective_date              => g_effective_date,
12943         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12944         p_category                    => 'SI',
12945         p_col_mth1                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
12946         p_col_mth2                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
12947         p_col_mth3                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
12948         p_col_mth4                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
12949         p_col_mth5                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
12950         p_col_mth6                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
12951         p_col_mth7                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
12952         p_col_mth8                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
12953         p_col_mth9                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
12954         p_col_mth10                   => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
12955         p_col_mth11                   => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
12956         p_col_mth12                   => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
12957         p_col_tot                     => null,
12958         p_action_information_id       => l_action_information_id,
12959         p_object_version_number       => l_object_version_number);
12960     --
12961       if g_debug
12962       and g_detail_debug = 'Y' then
12963         l_archive_step := 22;
12964       end if;
12965     --
12966       pay_jp_itwb_dml_pkg.add_sal_pay(
12967         p_assignment_action_id        => p_assignment_action_id,
12968         p_effective_date              => g_effective_date,
12969         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12970         p_category                    => 'DCT_EARN',
12971         p_col_mth1                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
12972         p_col_mth2                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
12973         p_col_mth3                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
12974         p_col_mth4                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
12975         p_col_mth5                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
12976         p_col_mth6                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
12977         p_col_mth7                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
12978         p_col_mth8                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
12979         p_col_mth9                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
12980         p_col_mth10                   => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
12981         p_col_mth11                   => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
12982         p_col_mth12                   => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
12983         p_col_tot                     => null,
12984         p_action_information_id       => l_action_information_id,
12985         p_object_version_number       => l_object_version_number);
12986     --
12987       if g_debug
12988       and g_detail_debug = 'Y' then
12989         l_archive_step := 23;
12990       end if;
12991     --
12992       pay_jp_itwb_dml_pkg.add_sal_pay(
12993         p_assignment_action_id        => p_assignment_action_id,
12994         p_effective_date              => g_effective_date,
12995         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
12996         p_category                    => 'DPT',
12997         p_col_mth1                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_pay_dpts,
12998         p_col_mth2                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_pay_dpts,
12999         p_col_mth3                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_pay_dpts,
13000         p_col_mth4                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_pay_dpts,
13001         p_col_mth5                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_pay_dpts,
13002         p_col_mth6                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_pay_dpts,
13003         p_col_mth7                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_pay_dpts,
13004         p_col_mth8                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_pay_dpts,
13005         p_col_mth9                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_pay_dpts,
13006         p_col_mth10                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_pay_dpts,
13007         p_col_mth11                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_pay_dpts,
13008         p_col_mth12                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_pay_dpts,
13009         p_col_tot                     => null,
13010         p_action_information_id       => l_action_information_id,
13011         p_object_version_number       => l_object_version_number);
13012     --
13013       if g_debug
13014       and g_detail_debug = 'Y' then
13015         l_archive_step := 24;
13016       end if;
13017     --
13018       pay_jp_itwb_dml_pkg.add_sal_pay(
13019         p_assignment_action_id        => p_assignment_action_id,
13020         p_effective_date              => g_effective_date,
13021         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13022         p_category                    => 'ITX',
13023         p_col_mth1                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
13024         p_col_mth2                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
13025         p_col_mth3                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
13026         p_col_mth4                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
13027         p_col_mth5                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
13028         p_col_mth6                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
13029         p_col_mth7                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
13030         p_col_mth8                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
13031         p_col_mth9                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
13032         p_col_mth10                   => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
13033         p_col_mth11                   => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
13034         p_col_mth12                   => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
13035         p_col_tot                     => null,
13036         p_action_information_id       => l_action_information_id,
13037         p_object_version_number       => l_object_version_number);
13038     --
13039       if g_debug
13040       and g_detail_debug = 'Y' then
13041         l_archive_step := 25;
13042       end if;
13043     --
13044       pay_jp_itwb_dml_pkg.add_sal_pay(
13045         p_assignment_action_id        => p_assignment_action_id,
13046         p_effective_date              => g_effective_date,
13047         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13048         p_category                    => 'YEA_ITX',
13049         p_col_mth1                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_pay_yea_itx,
13050         p_col_mth2                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_pay_yea_itx,
13051         p_col_mth3                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_pay_yea_itx,
13052         p_col_mth4                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_pay_yea_itx,
13053         p_col_mth5                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_pay_yea_itx,
13054         p_col_mth6                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_pay_yea_itx,
13055         p_col_mth7                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_pay_yea_itx,
13056         p_col_mth8                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_pay_yea_itx,
13057         p_col_mth9                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_pay_yea_itx,
13058         p_col_mth10                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_pay_yea_itx,
13059         p_col_mth11                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_pay_yea_itx,
13060         p_col_mth12                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_pay_yea_itx,
13061         p_col_tot                     => null,
13062         p_action_information_id       => l_action_information_id,
13063         p_object_version_number       => l_object_version_number);
13064     --
13065       if g_debug
13066       and g_detail_debug = 'Y' then
13067         l_archive_step := 26;
13068       end if;
13069     --
13070       pay_jp_itwb_dml_pkg.add_sal_pay(
13071         p_assignment_action_id        => p_assignment_action_id,
13072         p_effective_date              => g_effective_date,
13073         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13074         p_category                    => 'NET_ITX',
13075         p_col_mth1                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
13076         p_col_mth2                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
13077         p_col_mth3                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
13078         p_col_mth4                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
13079         p_col_mth5                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
13080         p_col_mth6                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
13081         p_col_mth7                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
13082         p_col_mth8                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
13083         p_col_mth9                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
13084         p_col_mth10                   => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
13085         p_col_mth11                   => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
13086         p_col_mth12                   => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
13087         p_col_tot                     => null,
13088         p_action_information_id       => l_action_information_id,
13089         p_object_version_number       => l_object_version_number);
13090     --
13091       if g_debug
13092       and g_detail_debug = 'Y' then
13093         l_archive_step := 27;
13094       end if;
13095     --
13096       pay_jp_itwb_dml_pkg.add_sal_pay(
13097         p_assignment_action_id        => p_assignment_action_id,
13098         p_effective_date              => g_effective_date,
13099         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13100         p_category                    => 'LTX',
13101         p_col_mth1                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
13102         p_col_mth2                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
13103         p_col_mth3                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
13104         p_col_mth4                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
13105         p_col_mth5                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
13106         p_col_mth6                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
13107         p_col_mth7                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
13108         p_col_mth8                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
13109         p_col_mth9                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
13110         p_col_mth10                   => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
13111         p_col_mth11                   => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
13112         p_col_mth12                   => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
13113         p_col_tot                     => null,
13114         p_action_information_id       => l_action_information_id,
13115         p_object_version_number       => l_object_version_number);
13116     --
13117       if g_debug
13118       and g_detail_debug = 'Y' then
13119         l_archive_step := 28;
13120       end if;
13121     --
13122       pay_jp_itwb_dml_pkg.add_sal_pay(
13123         p_assignment_action_id        => p_assignment_action_id,
13124         p_effective_date              => g_effective_date,
13125         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13126         p_category                    => 'LTX_LUMP',
13127         p_col_mth1                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
13128         p_col_mth2                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
13129         p_col_mth3                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
13130         p_col_mth4                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
13131         p_col_mth5                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
13132         p_col_mth6                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
13133         p_col_mth7                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
13134         p_col_mth8                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
13135         p_col_mth9                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
13136         p_col_mth10                   => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
13137         p_col_mth11                   => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
13138         p_col_mth12                   => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
13139         p_col_tot                     => null,
13140         p_action_information_id       => l_action_information_id,
13141         p_object_version_number       => l_object_version_number);
13142     --
13143       if g_debug
13144       and g_detail_debug = 'Y' then
13145         l_archive_step := 29;
13146       end if;
13147     --
13148       pay_jp_itwb_dml_pkg.add_sal_pay(
13149         p_assignment_action_id        => p_assignment_action_id,
13150         p_effective_date              => g_effective_date,
13151         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13152         p_category                    => 'DCT',
13153         p_col_mth1                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
13154         p_col_mth2                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
13155         p_col_mth3                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
13156         p_col_mth4                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
13157         p_col_mth5                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
13158         p_col_mth6                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
13159         p_col_mth7                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
13160         p_col_mth8                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
13161         p_col_mth9                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
13162         p_col_mth10                   => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
13163         p_col_mth11                   => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
13164         p_col_mth12                   => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
13165         p_col_tot                     => null,
13166         p_action_information_id       => l_action_information_id,
13167         p_object_version_number       => l_object_version_number);
13168     --
13169       if g_debug
13170       and g_detail_debug = 'Y' then
13171         l_archive_step := 30;
13172       end if;
13173     --
13174       pay_jp_itwb_dml_pkg.add_sal_pay(
13175         p_assignment_action_id        => p_assignment_action_id,
13176         p_effective_date              => g_effective_date,
13177         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13178         p_category                    => 'NET_PAY',
13179         p_col_mth1                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
13180         p_col_mth2                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
13181         p_col_mth3                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
13182         p_col_mth4                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
13183         p_col_mth5                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
13184         p_col_mth6                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
13185         p_col_mth7                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
13186         p_col_mth8                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
13187         p_col_mth9                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
13188         p_col_mth10                   => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
13189         p_col_mth11                   => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
13190         p_col_mth12                   => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
13191         p_col_tot                     => null,
13192         p_action_information_id       => l_action_information_id,
13193         p_object_version_number       => l_object_version_number);
13194     --
13195       if g_debug
13196       and g_detail_debug = 'Y' then
13197         l_archive_step := 31;
13198       end if;
13199     --
13200       pay_jp_itwb_dml_pkg.add_bon_act(
13201         p_assignment_action_id        => p_assignment_action_id,
13202         p_effective_date              => g_effective_date,
13203         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13204         p_category                    => 'ACT',
13205         p_col_cnt1                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1),
13206         p_col_cnt2                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2),
13207         p_col_cnt3                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3),
13208         p_col_cnt4                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4),
13209         p_col_cnt5                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5),
13210         p_col_cnt6                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6),
13211         p_col_cnt7                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7),
13212         p_col_cnt8                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8),
13213         p_col_cnt9                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9),
13214         p_col_cnt10                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10),
13215         p_col_cnt11                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11),
13216         p_col_cnt12                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12),
13217         p_col_cnt13                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13),
13218         p_col_cnt14                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14),
13219         p_col_cnt15                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15),
13220         p_action_information_id       => l_action_information_id,
13221         p_object_version_number       => l_object_version_number);
13222     --
13223       if g_debug
13224       and g_detail_debug = 'Y' then
13225         l_archive_step := 32;
13226       end if;
13227     --
13228       pay_jp_itwb_dml_pkg.add_bon_act(
13229         p_assignment_action_id        => p_assignment_action_id,
13230         p_effective_date              => g_effective_date,
13231         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13232         p_category                    => 'TYPE',
13233         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_act_type,
13234         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_act_type,
13235         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_act_type,
13236         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_act_type,
13237         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_act_type,
13238         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_act_type,
13239         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_act_type,
13240         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_act_type,
13241         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_act_type,
13242         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_act_type,
13243         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_act_type,
13244         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_act_type,
13245         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_act_type,
13246         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_act_type,
13247         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_act_type,
13248         p_action_information_id       => l_action_information_id,
13249         p_object_version_number       => l_object_version_number);
13250     --
13251       if g_debug
13252       and g_detail_debug = 'Y' then
13253         l_archive_step := 33;
13254       end if;
13255     --
13256       pay_jp_itwb_dml_pkg.add_bon_act(
13257         p_assignment_action_id        => p_assignment_action_id,
13258         p_effective_date              => g_effective_date,
13259         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13260         p_category                    => 'EFD',
13261         p_col_cnt1                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_act_efd),
13262         p_col_cnt2                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_act_efd),
13263         p_col_cnt3                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_act_efd),
13264         p_col_cnt4                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_act_efd),
13265         p_col_cnt5                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_act_efd),
13266         p_col_cnt6                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_act_efd),
13267         p_col_cnt7                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_act_efd),
13268         p_col_cnt8                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_act_efd),
13269         p_col_cnt9                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_act_efd),
13270         p_col_cnt10                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_act_efd),
13271         p_col_cnt11                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_act_efd),
13272         p_col_cnt12                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_act_efd),
13273         p_col_cnt13                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_act_efd),
13274         p_col_cnt14                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_act_efd),
13275         p_col_cnt15                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_act_efd),
13276         p_action_information_id       => l_action_information_id,
13277         p_object_version_number       => l_object_version_number);
13278     --
13279       if g_debug
13280       and g_detail_debug = 'Y' then
13281         l_archive_step := 34;
13282       end if;
13283     --
13284       pay_jp_itwb_dml_pkg.add_bon_act(
13285         p_assignment_action_id        => p_assignment_action_id,
13286         p_effective_date              => g_effective_date,
13287         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13288         p_category                    => 'ERD',
13289         p_col_cnt1                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_act_erd),
13290         p_col_cnt2                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_act_erd),
13291         p_col_cnt3                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_act_erd),
13292         p_col_cnt4                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_act_erd),
13293         p_col_cnt5                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_act_erd),
13294         p_col_cnt6                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_act_erd),
13295         p_col_cnt7                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_act_erd),
13296         p_col_cnt8                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_act_erd),
13297         p_col_cnt9                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_act_erd),
13298         p_col_cnt10                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_act_erd),
13299         p_col_cnt11                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_act_erd),
13300         p_col_cnt12                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_act_erd),
13301         p_col_cnt13                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_act_erd),
13302         p_col_cnt14                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_act_erd),
13303         p_col_cnt15                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_act_erd),
13304         p_action_information_id       => l_action_information_id,
13305         p_object_version_number       => l_object_version_number);
13306     --
13307       if g_debug
13308       and g_detail_debug = 'Y' then
13309         l_archive_step := 35;
13310       end if;
13311     --
13312       pay_jp_itwb_dml_pkg.add_bon_act(
13313         p_assignment_action_id        => p_assignment_action_id,
13314         p_effective_date              => g_effective_date,
13315         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13316         p_category                    => 'PAY',
13317         p_col_cnt1                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_act_pay),
13318         p_col_cnt2                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_act_pay),
13319         p_col_cnt3                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_act_pay),
13320         p_col_cnt4                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_act_pay),
13321         p_col_cnt5                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_act_pay),
13322         p_col_cnt6                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_act_pay),
13323         p_col_cnt7                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_act_pay),
13324         p_col_cnt8                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_act_pay),
13325         p_col_cnt9                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_act_pay),
13326         p_col_cnt10                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_act_pay),
13327         p_col_cnt11                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_act_pay),
13328         p_col_cnt12                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_act_pay),
13329         p_col_cnt13                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_act_pay),
13330         p_col_cnt14                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_act_pay),
13331         p_col_cnt15                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_act_pay),
13332         p_action_information_id       => l_action_information_id,
13333         p_object_version_number       => l_object_version_number);
13334     --
13335       if g_debug
13336       and g_detail_debug = 'Y' then
13337         l_archive_step := 36;
13338       end if;
13339     --
13340       pay_jp_itwb_dml_pkg.add_bon_pay(
13341         p_assignment_action_id        => p_assignment_action_id,
13342         p_effective_date              => g_effective_date,
13343         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13344         p_category                    => 'TXBL',
13345         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_txbl,
13346         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_txbl,
13347         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_txbl,
13348         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_txbl,
13349         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_txbl,
13350         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_txbl,
13351         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_txbl,
13352         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_txbl,
13353         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_txbl,
13354         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_txbl,
13355         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_txbl,
13356         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_txbl,
13357         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_txbl,
13358         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_txbl,
13359         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_txbl,
13360         p_col_tot                     => null,
13361         p_action_information_id       => l_action_information_id,
13362         p_object_version_number       => l_object_version_number);
13363     --
13364       if g_debug
13365       and g_detail_debug = 'Y' then
13366         l_archive_step := 37;
13367       end if;
13368     --
13369       pay_jp_itwb_dml_pkg.add_bon_pay(
13370         p_assignment_action_id        => p_assignment_action_id,
13371         p_effective_date              => g_effective_date,
13372         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13373         p_category                    => 'NTXBL',
13374         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_ntxbl,
13375         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_ntxbl,
13376         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_ntxbl,
13377         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_ntxbl,
13378         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_ntxbl,
13379         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_ntxbl,
13380         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_ntxbl,
13381         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_ntxbl,
13382         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_ntxbl,
13383         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_ntxbl,
13384         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_ntxbl,
13385         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_ntxbl,
13386         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_ntxbl,
13387         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_ntxbl,
13388         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_ntxbl,
13389         p_col_tot                     => null,
13390         p_action_information_id       => l_action_information_id,
13391         p_object_version_number       => l_object_version_number);
13392     --
13393       if g_debug
13394       and g_detail_debug = 'Y' then
13395         l_archive_step := 38;
13396       end if;
13397     --
13398       pay_jp_itwb_dml_pkg.add_bon_pay(
13399         p_assignment_action_id        => p_assignment_action_id,
13400         p_effective_date              => g_effective_date,
13401         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13402         p_category                    => 'PAY',
13403         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_pay,
13404         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_pay,
13405         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_pay,
13406         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_pay,
13407         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_pay,
13408         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_pay,
13409         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_pay,
13410         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_pay,
13411         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_pay,
13412         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_pay,
13413         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_pay,
13414         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_pay,
13415         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_pay,
13416         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_pay,
13417         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_pay,
13418         p_col_tot                     => null,
13419         p_action_information_id       => l_action_information_id,
13420         p_object_version_number       => l_object_version_number);
13421     --
13422       if g_debug
13423       and g_detail_debug = 'Y' then
13424         l_archive_step := 39;
13425       end if;
13426     --
13427       pay_jp_itwb_dml_pkg.add_bon_pay(
13428         p_assignment_action_id        => p_assignment_action_id,
13429         p_effective_date              => g_effective_date,
13430         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13431         p_category                    => 'HI',
13432         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_hi,
13433         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_hi,
13434         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_hi,
13435         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_hi,
13436         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_hi,
13437         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_hi,
13438         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_hi,
13439         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_hi,
13440         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_hi,
13441         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_hi,
13442         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_hi,
13443         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_hi,
13444         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_hi,
13445         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_hi,
13446         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_hi,
13447         p_col_tot                     => null,
13448         p_action_information_id       => l_action_information_id,
13449         p_object_version_number       => l_object_version_number);
13450     --
13451       if g_debug
13452       and g_detail_debug = 'Y' then
13453         l_archive_step := 40;
13454       end if;
13455     --
13456       pay_jp_itwb_dml_pkg.add_bon_pay(
13457         p_assignment_action_id        => p_assignment_action_id,
13458         p_effective_date              => g_effective_date,
13459         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13460         p_category                    => 'CI',
13461         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_ci,
13462         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_ci,
13463         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_ci,
13464         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_ci,
13465         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_ci,
13466         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_ci,
13467         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_ci,
13468         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_ci,
13469         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_ci,
13470         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_ci,
13471         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_ci,
13472         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_ci,
13473         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_ci,
13474         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_ci,
13475         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_ci,
13476         p_col_tot                     => null,
13477         p_action_information_id       => l_action_information_id,
13478         p_object_version_number       => l_object_version_number);
13479     --
13480       if g_debug
13481       and g_detail_debug = 'Y' then
13482         l_archive_step := 41;
13483       end if;
13484     --
13485       pay_jp_itwb_dml_pkg.add_bon_pay(
13486         p_assignment_action_id        => p_assignment_action_id,
13487         p_effective_date              => g_effective_date,
13488         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13489         p_category                    => 'WP',
13490         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_wp,
13491         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_wp,
13492         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_wp,
13493         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_wp,
13494         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_wp,
13495         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_wp,
13496         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_wp,
13497         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_wp,
13498         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_wp,
13499         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_wp,
13500         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_wp,
13501         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_wp,
13502         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_wp,
13503         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_wp,
13504         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_wp,
13505         p_col_tot                     => null,
13506         p_action_information_id       => l_action_information_id,
13507         p_object_version_number       => l_object_version_number);
13508     --
13509       if g_debug
13510       and g_detail_debug = 'Y' then
13511         l_archive_step := 42;
13512       end if;
13513     --
13514       pay_jp_itwb_dml_pkg.add_bon_pay(
13515         p_assignment_action_id        => p_assignment_action_id,
13516         p_effective_date              => g_effective_date,
13517         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13518         p_category                    => 'WPF',
13519         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_wpf,
13520         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_wpf,
13521         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_wpf,
13522         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_wpf,
13523         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_wpf,
13524         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_wpf,
13525         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_wpf,
13526         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_wpf,
13527         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_wpf,
13528         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_wpf,
13529         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_wpf,
13530         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_wpf,
13531         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_wpf,
13532         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_wpf,
13533         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_wpf,
13534         p_col_tot                     => null,
13535         p_action_information_id       => l_action_information_id,
13536         p_object_version_number       => l_object_version_number);
13537     --
13538       if g_debug
13539       and g_detail_debug = 'Y' then
13540         l_archive_step := 43;
13541       end if;
13542     --
13543       pay_jp_itwb_dml_pkg.add_bon_pay(
13544         p_assignment_action_id        => p_assignment_action_id,
13545         p_effective_date              => g_effective_date,
13546         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13547         p_category                    => 'EI',
13548         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_ei,
13549         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_ei,
13550         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_ei,
13551         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_ei,
13552         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_ei,
13553         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_ei,
13554         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_ei,
13555         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_ei,
13556         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_ei,
13557         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_ei,
13558         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_ei,
13559         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_ei,
13560         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_ei,
13561         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_ei,
13562         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_ei,
13563         p_col_tot                     => null,
13564         p_action_information_id       => l_action_information_id,
13565         p_object_version_number       => l_object_version_number);
13566     --
13567       if g_debug
13568       and g_detail_debug = 'Y' then
13569         l_archive_step := 44;
13570       end if;
13571     --
13572       pay_jp_itwb_dml_pkg.add_bon_pay(
13573         p_assignment_action_id        => p_assignment_action_id,
13574         p_effective_date              => g_effective_date,
13575         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13576         p_category                    => 'SI',
13577         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_si,
13578         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_si,
13579         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_si,
13580         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_si,
13581         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_si,
13582         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_si,
13583         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_si,
13584         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_si,
13585         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_si,
13586         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_si,
13587         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_si,
13588         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_si,
13589         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_si,
13590         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_si,
13591         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_si,
13592         p_col_tot                     => null,
13593         p_action_information_id       => l_action_information_id,
13594         p_object_version_number       => l_object_version_number);
13595     --
13596       if g_debug
13597       and g_detail_debug = 'Y' then
13598         l_archive_step := 45;
13599       end if;
13600     --
13601       pay_jp_itwb_dml_pkg.add_bon_pay(
13602         p_assignment_action_id        => p_assignment_action_id,
13603         p_effective_date              => g_effective_date,
13604         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13605         p_category                    => 'DCT_EARN',
13606         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_dct_earn,
13607         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_dct_earn,
13608         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_dct_earn,
13609         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_dct_earn,
13610         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_dct_earn,
13611         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_dct_earn,
13612         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_dct_earn,
13613         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_dct_earn,
13614         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_dct_earn,
13615         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_dct_earn,
13616         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_dct_earn,
13617         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_dct_earn,
13618         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_dct_earn,
13619         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_dct_earn,
13620         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_dct_earn,
13621         p_col_tot                     => null,
13622         p_action_information_id       => l_action_information_id,
13623         p_object_version_number       => l_object_version_number);
13624     --
13625       if g_debug
13626       and g_detail_debug = 'Y' then
13627         l_archive_step := 46;
13628       end if;
13629     --
13630       pay_jp_itwb_dml_pkg.add_bon_pay(
13631         p_assignment_action_id        => p_assignment_action_id,
13632         p_effective_date              => g_effective_date,
13633         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13634         p_category                    => 'DPT',
13635         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_dpts,
13636         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_dpts,
13637         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_dpts,
13638         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_dpts,
13639         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_dpts,
13640         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_dpts,
13641         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_dpts,
13642         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_dpts,
13643         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_dpts,
13644         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_dpts,
13645         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_dpts,
13646         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_dpts,
13647         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_dpts,
13648         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_dpts,
13649         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_dpts,
13650         p_col_tot                     => null,
13651         p_action_information_id       => l_action_information_id,
13652         p_object_version_number       => l_object_version_number);
13653     --
13654       if g_debug
13655       and g_detail_debug = 'Y' then
13656         l_archive_step := 47;
13657       end if;
13658     --
13659       pay_jp_itwb_dml_pkg.add_bon_pay(
13660         p_assignment_action_id        => p_assignment_action_id,
13661         p_effective_date              => g_effective_date,
13662         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13663         p_category                    => 'ITX',
13664         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_itx,
13665         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_itx,
13666         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_itx,
13667         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_itx,
13668         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_itx,
13669         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_itx,
13670         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_itx,
13671         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_itx,
13672         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_itx,
13673         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_itx,
13674         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_itx,
13675         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_itx,
13676         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_itx,
13677         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_itx,
13678         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_itx,
13679         p_col_tot                     => null,
13680         p_action_information_id       => l_action_information_id,
13681         p_object_version_number       => l_object_version_number);
13682     --
13683       if g_debug
13684       and g_detail_debug = 'Y' then
13685         l_archive_step := 48;
13686       end if;
13687     --
13688       pay_jp_itwb_dml_pkg.add_bon_pay(
13689         p_assignment_action_id        => p_assignment_action_id,
13690         p_effective_date              => g_effective_date,
13691         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13692         p_category                    => 'ITX_RATE',
13693         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_itx_rate,
13694         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_itx_rate,
13695         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_itx_rate,
13696         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_itx_rate,
13697         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_itx_rate,
13698         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_itx_rate,
13699         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_itx_rate,
13700         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_itx_rate,
13701         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_itx_rate,
13702         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_itx_rate,
13703         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_itx_rate,
13704         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_itx_rate,
13705         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_itx_rate,
13706         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_itx_rate,
13707         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_itx_rate,
13708         p_col_tot                     => null,
13709         p_action_information_id       => l_action_information_id,
13710         p_object_version_number       => l_object_version_number);
13711     --
13712       if g_debug
13713       and g_detail_debug = 'Y' then
13714         l_archive_step := 49;
13715       end if;
13716     --
13717       pay_jp_itwb_dml_pkg.add_bon_pay(
13718         p_assignment_action_id        => p_assignment_action_id,
13719         p_effective_date              => g_effective_date,
13720         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13721         p_category                    => 'YEA_ITX',
13722         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_yea_itx,
13723         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_yea_itx,
13724         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_yea_itx,
13725         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_yea_itx,
13726         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_yea_itx,
13727         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_yea_itx,
13728         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_yea_itx,
13729         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_yea_itx,
13730         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_yea_itx,
13731         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_yea_itx,
13732         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_yea_itx,
13733         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_yea_itx,
13734         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_yea_itx,
13735         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_yea_itx,
13736         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_yea_itx,
13737         p_col_tot                     => null,
13738         p_action_information_id       => l_action_information_id,
13739         p_object_version_number       => l_object_version_number);
13740     --
13741       if g_debug
13742       and g_detail_debug = 'Y' then
13743         l_archive_step := 50;
13744       end if;
13745     --
13746       pay_jp_itwb_dml_pkg.add_bon_pay(
13747         p_assignment_action_id        => p_assignment_action_id,
13748         p_effective_date              => g_effective_date,
13749         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13750         p_category                    => 'NET_ITX',
13751         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_net_itx,
13752         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_net_itx,
13753         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_net_itx,
13754         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_net_itx,
13755         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_net_itx,
13756         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_net_itx,
13757         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_net_itx,
13758         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_net_itx,
13759         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_net_itx,
13760         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_net_itx,
13761         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_net_itx,
13762         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_net_itx,
13763         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_net_itx,
13764         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_net_itx,
13765         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_net_itx,
13766         p_col_tot                     => null,
13767         p_action_information_id       => l_action_information_id,
13768         p_object_version_number       => l_object_version_number);
13769     --
13770       if g_debug
13771       and g_detail_debug = 'Y' then
13772         l_archive_step := 51;
13773       end if;
13774     --
13775       pay_jp_itwb_dml_pkg.add_bon_pay(
13776         p_assignment_action_id        => p_assignment_action_id,
13777         p_effective_date              => g_effective_date,
13778         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13779         p_category                    => 'LTX_LUMP',
13780         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_ltx_lump,
13781         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_ltx_lump,
13782         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_ltx_lump,
13783         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_ltx_lump,
13784         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_ltx_lump,
13785         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_ltx_lump,
13786         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_ltx_lump,
13787         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_ltx_lump,
13788         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_ltx_lump,
13789         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_ltx_lump,
13790         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_ltx_lump,
13791         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_ltx_lump,
13792         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_ltx_lump,
13793         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_ltx_lump,
13794         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_ltx_lump,
13795         p_col_tot                     => null,
13796         p_action_information_id       => l_action_information_id,
13797         p_object_version_number       => l_object_version_number);
13798     --
13799       if g_debug
13800       and g_detail_debug = 'Y' then
13801         l_archive_step := 52;
13802       end if;
13803     --
13804       pay_jp_itwb_dml_pkg.add_bon_pay(
13805         p_assignment_action_id        => p_assignment_action_id,
13806         p_effective_date              => g_effective_date,
13807         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13808         p_category                    => 'DCT',
13809         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_calc_dct,
13810         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_calc_dct,
13811         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_calc_dct,
13812         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_calc_dct,
13813         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_calc_dct,
13814         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_calc_dct,
13815         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_calc_dct,
13816         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_calc_dct,
13817         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_calc_dct,
13818         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_calc_dct,
13819         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_calc_dct,
13820         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_calc_dct,
13821         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_calc_dct,
13822         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_calc_dct,
13823         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_calc_dct,
13824         p_col_tot                     => null,
13825         p_action_information_id       => l_action_information_id,
13826         p_object_version_number       => l_object_version_number);
13827     --
13828       if g_debug
13829       and g_detail_debug = 'Y' then
13830         l_archive_step := 53;
13831       end if;
13832     --
13833       pay_jp_itwb_dml_pkg.add_bon_pay(
13834         p_assignment_action_id        => p_assignment_action_id,
13835         p_effective_date              => g_effective_date,
13836         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
13837         p_category                    => 'NET_PAY',
13838         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_net_pay,
13839         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_net_pay,
13840         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_net_pay,
13841         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_net_pay,
13842         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_net_pay,
13843         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_net_pay,
13844         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_net_pay,
13845         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_net_pay,
13846         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_net_pay,
13847         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_net_pay,
13848         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_net_pay,
13849         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_net_pay,
13850         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_net_pay,
13851         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_net_pay,
13852         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_net_pay,
13853         p_col_tot                     => null,
13854         p_action_information_id       => l_action_information_id,
13855         p_object_version_number       => l_object_version_number);
13856     --
13857       if g_debug
13858       and g_detail_debug = 'Y' then
13859         l_archive_step := 54;
13860       end if;
13861     --
13862       set_data_pay_col_tot(
13863         p_assignment_action_id => p_assignment_action_id);
13864     --
13865       if g_debug
13866       and g_detail_debug = 'Y' then
13867         l_archive_step := 55;
13868       end if;
13869     --
13870       pay_jp_itwb_dml_pkg.copy_pai_all_item(
13871         p_action_context_id           => p_assignment_action_id,
13872         p_effective_date              => g_effective_date,
13873         p_action_information_category => 'JP_ITWB_SAL_EARN',
13874         p_action_context_id_o         => l_arch_assignment_action_id_o);
13875       --
13876       if g_debug
13877       and g_detail_debug = 'Y' then
13878         l_archive_step := 56;
13879       end if;
13880       --
13881       pay_jp_itwb_dml_pkg.copy_pai_all_item(
13882         p_action_context_id           => p_assignment_action_id,
13883         p_effective_date              => g_effective_date,
13884         p_action_information_category => 'JP_ITWB_SAL_DCT',
13885         p_action_context_id_o         => l_arch_assignment_action_id_o);
13886       --
13887       if g_debug
13888       and g_detail_debug = 'Y' then
13889         l_archive_step := 57;
13890       end if;
13891       --
13892       pay_jp_itwb_dml_pkg.copy_pai_all_item(
13893         p_action_context_id           => p_assignment_action_id,
13894         p_effective_date              => g_effective_date,
13895         p_action_information_category => 'JP_ITWB_BON_EARN',
13896         p_action_context_id_o         => l_arch_assignment_action_id_o);
13897       --
13898       if g_debug
13899       and g_detail_debug = 'Y' then
13900         l_archive_step := 58;
13901       end if;
13902       --
13903       pay_jp_itwb_dml_pkg.copy_pai_all_item(
13904         p_action_context_id           => p_assignment_action_id,
13905         p_effective_date              => g_effective_date,
13906         p_action_information_category => 'JP_ITWB_BON_DCT',
13907         p_action_context_id_o         => l_arch_assignment_action_id_o);
13908       --
13909       if g_debug
13910       and g_detail_debug = 'Y' then
13911         l_archive_step := 59;
13912       end if;
13913       --
13914       pay_jp_itwb_dml_pkg.copy_pai_all_item(
13915         p_action_context_id           => p_assignment_action_id,
13916         p_effective_date              => g_effective_date,
13917         p_action_information_category => 'JP_ITWB_WRK',
13918         p_action_context_id_o         => l_arch_assignment_action_id_o);
13919       --
13920       if g_debug
13921       and g_detail_debug = 'Y' then
13922         l_archive_step := 60;
13923       end if;
13924     --
13925       if g_body_tbl(p_assignment_action_id).sal_act is not null then
13926       --
13927         l_data_sal_ass_pay_tbl := g_data_pay_tbl(p_assignment_action_id).sal_pay_tbl;
13928       --
13929       end if;
13930       --
13931       if g_debug
13932       and g_detail_debug = 'Y' then
13933         l_archive_step := 61;
13934       end if;
13935       --
13936       if g_body_tbl(p_assignment_action_id).bon_act is not null then
13937       --
13938         l_data_bon_ass_pay_tbl := g_data_pay_tbl(p_assignment_action_id).bon_pay_tbl;
13939       --
13940       end if;
13941       --
13942       if g_debug
13943       and g_detail_debug = 'Y' then
13944         l_archive_step := 62;
13945         hr_utility.trace('l_data_sal_ass_pay_tbl.count : '||to_char(l_data_sal_ass_pay_tbl.count));
13946         hr_utility.trace('l_data_bon_ass_pay_tbl.count : '||to_char(l_data_bon_ass_pay_tbl.count));
13947         hr_utility.trace('g_item_info_ind_tbl.count    : '||to_char(g_item_info_ind_tbl.count));
13948       end if;
13949       --
13950       l_sal_ern_tbl_mth1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_ern_tbl;
13951       l_sal_ern_tbl_mth2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_ern_tbl;
13952       l_sal_ern_tbl_mth3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_ern_tbl;
13953       l_sal_ern_tbl_mth4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_ern_tbl;
13954       l_sal_ern_tbl_mth5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_ern_tbl;
13955       l_sal_ern_tbl_mth6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_ern_tbl;
13956       l_sal_ern_tbl_mth7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_ern_tbl;
13957       l_sal_ern_tbl_mth8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_ern_tbl;
13958       l_sal_ern_tbl_mth9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_ern_tbl;
13959       l_sal_ern_tbl_mth10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_ern_tbl;
13960       l_sal_ern_tbl_mth11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_ern_tbl;
13961       l_sal_ern_tbl_mth12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_ern_tbl;
13962       --
13963       l_sal_dct_tbl_mth1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_dct_tbl;
13964       l_sal_dct_tbl_mth2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_dct_tbl;
13965       l_sal_dct_tbl_mth3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_dct_tbl;
13966       l_sal_dct_tbl_mth4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_dct_tbl;
13967       l_sal_dct_tbl_mth5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_dct_tbl;
13968       l_sal_dct_tbl_mth6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_dct_tbl;
13969       l_sal_dct_tbl_mth7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_dct_tbl;
13970       l_sal_dct_tbl_mth8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_dct_tbl;
13971       l_sal_dct_tbl_mth9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_dct_tbl;
13972       l_sal_dct_tbl_mth10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_dct_tbl;
13973       l_sal_dct_tbl_mth11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_dct_tbl;
13974       l_sal_dct_tbl_mth12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_dct_tbl;
13975       --
13976       l_bon_ern_tbl_cnt1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_ern_tbl;
13977       l_bon_ern_tbl_cnt2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_ern_tbl;
13978       l_bon_ern_tbl_cnt3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_ern_tbl;
13979       l_bon_ern_tbl_cnt4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_ern_tbl;
13980       l_bon_ern_tbl_cnt5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_ern_tbl;
13981       l_bon_ern_tbl_cnt6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_ern_tbl;
13982       l_bon_ern_tbl_cnt7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_ern_tbl;
13983       l_bon_ern_tbl_cnt8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_ern_tbl;
13984       l_bon_ern_tbl_cnt9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_ern_tbl;
13985       l_bon_ern_tbl_cnt10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_ern_tbl;
13986       l_bon_ern_tbl_cnt11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_ern_tbl;
13987       l_bon_ern_tbl_cnt12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_ern_tbl;
13988       l_bon_ern_tbl_cnt13 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_ern_tbl;
13989       l_bon_ern_tbl_cnt14 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_ern_tbl;
13990       l_bon_ern_tbl_cnt15 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_ern_tbl;
13991       --
13992       l_bon_dct_tbl_cnt1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_dct_tbl;
13993       l_bon_dct_tbl_cnt2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_dct_tbl;
13994       l_bon_dct_tbl_cnt3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_dct_tbl;
13995       l_bon_dct_tbl_cnt4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_dct_tbl;
13996       l_bon_dct_tbl_cnt5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_dct_tbl;
13997       l_bon_dct_tbl_cnt6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_dct_tbl;
13998       l_bon_dct_tbl_cnt7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_dct_tbl;
13999       l_bon_dct_tbl_cnt8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_dct_tbl;
14000       l_bon_dct_tbl_cnt9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_dct_tbl;
14001       l_bon_dct_tbl_cnt10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_dct_tbl;
14002       l_bon_dct_tbl_cnt11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_dct_tbl;
14003       l_bon_dct_tbl_cnt12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_dct_tbl;
14004       l_bon_dct_tbl_cnt13 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_dct_tbl;
14005       l_bon_dct_tbl_cnt14 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_dct_tbl;
14006       l_bon_dct_tbl_cnt15 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_dct_tbl;
14007       --
14008       l_wrk_tbl_mth1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).wrk_tbl;
14009       l_wrk_tbl_mth2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).wrk_tbl;
14010       l_wrk_tbl_mth3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).wrk_tbl;
14011       l_wrk_tbl_mth4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).wrk_tbl;
14012       l_wrk_tbl_mth5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).wrk_tbl;
14013       l_wrk_tbl_mth6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).wrk_tbl;
14014       l_wrk_tbl_mth7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).wrk_tbl;
14015       l_wrk_tbl_mth8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).wrk_tbl;
14016       l_wrk_tbl_mth9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).wrk_tbl;
14017       l_wrk_tbl_mth10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).wrk_tbl;
14018       l_wrk_tbl_mth11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).wrk_tbl;
14019       l_wrk_tbl_mth12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).wrk_tbl;
14020       --
14021       if g_debug
14022       and g_detail_debug = 'Y' then
14023         l_archive_step := 63;
14024       --
14025         hr_utility.trace('l_sal_ern_tbl_mth1.count  : '||to_char(l_sal_ern_tbl_mth1.count));
14026         hr_utility.trace('l_sal_ern_tbl_mth2.count  : '||to_char(l_sal_ern_tbl_mth2.count));
14027         hr_utility.trace('l_sal_ern_tbl_mth3.count  : '||to_char(l_sal_ern_tbl_mth3.count));
14028         hr_utility.trace('l_sal_ern_tbl_mth4.count  : '||to_char(l_sal_ern_tbl_mth4.count));
14029         hr_utility.trace('l_sal_ern_tbl_mth5.count  : '||to_char(l_sal_ern_tbl_mth5.count));
14030         hr_utility.trace('l_sal_ern_tbl_mth6.count  : '||to_char(l_sal_ern_tbl_mth6.count));
14031         hr_utility.trace('l_sal_ern_tbl_mth7.count  : '||to_char(l_sal_ern_tbl_mth7.count));
14032         hr_utility.trace('l_sal_ern_tbl_mth8.count  : '||to_char(l_sal_ern_tbl_mth8.count));
14033         hr_utility.trace('l_sal_ern_tbl_mth9.count  : '||to_char(l_sal_ern_tbl_mth9.count));
14034         hr_utility.trace('l_sal_ern_tbl_mth10.count : '||to_char(l_sal_ern_tbl_mth10.count));
14035         hr_utility.trace('l_sal_ern_tbl_mth11.count : '||to_char(l_sal_ern_tbl_mth11.count));
14036         hr_utility.trace('l_sal_ern_tbl_mth12.count : '||to_char(l_sal_ern_tbl_mth12.count));
14037         hr_utility.trace('l_sal_dct_tbl_mth1.count  : '||to_char(l_sal_dct_tbl_mth1.count));
14038         hr_utility.trace('l_sal_dct_tbl_mth2.count  : '||to_char(l_sal_dct_tbl_mth2.count));
14039         hr_utility.trace('l_sal_dct_tbl_mth3.count  : '||to_char(l_sal_dct_tbl_mth3.count));
14040         hr_utility.trace('l_sal_dct_tbl_mth4.count  : '||to_char(l_sal_dct_tbl_mth4.count));
14041         hr_utility.trace('l_sal_dct_tbl_mth5.count  : '||to_char(l_sal_dct_tbl_mth5.count));
14042         hr_utility.trace('l_sal_dct_tbl_mth6.count  : '||to_char(l_sal_dct_tbl_mth6.count));
14043         hr_utility.trace('l_sal_dct_tbl_mth7.count  : '||to_char(l_sal_dct_tbl_mth7.count));
14044         hr_utility.trace('l_sal_dct_tbl_mth8.count  : '||to_char(l_sal_dct_tbl_mth8.count));
14045         hr_utility.trace('l_sal_dct_tbl_mth9.count  : '||to_char(l_sal_dct_tbl_mth9.count));
14046         hr_utility.trace('l_sal_dct_tbl_mth10.count : '||to_char(l_sal_dct_tbl_mth10.count));
14047         hr_utility.trace('l_sal_dct_tbl_mth11.count : '||to_char(l_sal_dct_tbl_mth11.count));
14048         hr_utility.trace('l_sal_dct_tbl_mth12.count : '||to_char(l_sal_dct_tbl_mth12.count));
14049         hr_utility.trace('l_bon_ern_tbl_cnt1.count  : '||to_char(l_bon_ern_tbl_cnt1.count));
14050         hr_utility.trace('l_bon_ern_tbl_cnt2.count  : '||to_char(l_bon_ern_tbl_cnt2.count));
14051         hr_utility.trace('l_bon_ern_tbl_cnt3.count  : '||to_char(l_bon_ern_tbl_cnt3.count));
14052         hr_utility.trace('l_bon_ern_tbl_cnt4.count  : '||to_char(l_bon_ern_tbl_cnt4.count));
14053         hr_utility.trace('l_bon_ern_tbl_cnt5.count  : '||to_char(l_bon_ern_tbl_cnt5.count));
14054         hr_utility.trace('l_bon_ern_tbl_cnt6.count  : '||to_char(l_bon_ern_tbl_cnt6.count));
14055         hr_utility.trace('l_bon_ern_tbl_cnt7.count  : '||to_char(l_bon_ern_tbl_cnt7.count));
14056         hr_utility.trace('l_bon_ern_tbl_cnt8.count  : '||to_char(l_bon_ern_tbl_cnt8.count));
14057         hr_utility.trace('l_bon_ern_tbl_cnt9.count  : '||to_char(l_bon_ern_tbl_cnt9.count));
14058         hr_utility.trace('l_bon_ern_tbl_cnt10.count : '||to_char(l_bon_ern_tbl_cnt10.count));
14059         hr_utility.trace('l_bon_ern_tbl_cnt11.count : '||to_char(l_bon_ern_tbl_cnt11.count));
14060         hr_utility.trace('l_bon_ern_tbl_cnt12.count : '||to_char(l_bon_ern_tbl_cnt12.count));
14061         hr_utility.trace('l_bon_ern_tbl_cnt13.count : '||to_char(l_bon_ern_tbl_cnt13.count));
14062         hr_utility.trace('l_bon_ern_tbl_cnt14.count : '||to_char(l_bon_ern_tbl_cnt14.count));
14063         hr_utility.trace('l_bon_ern_tbl_cnt15.count : '||to_char(l_bon_ern_tbl_cnt15.count));
14064         hr_utility.trace('l_bon_dct_tbl_cnt1.count  : '||to_char(l_bon_dct_tbl_cnt1.count));
14065         hr_utility.trace('l_bon_dct_tbl_cnt2.count  : '||to_char(l_bon_dct_tbl_cnt2.count));
14066         hr_utility.trace('l_bon_dct_tbl_cnt3.count  : '||to_char(l_bon_dct_tbl_cnt3.count));
14067         hr_utility.trace('l_bon_dct_tbl_cnt4.count  : '||to_char(l_bon_dct_tbl_cnt4.count));
14068         hr_utility.trace('l_bon_dct_tbl_cnt5.count  : '||to_char(l_bon_dct_tbl_cnt5.count));
14069         hr_utility.trace('l_bon_dct_tbl_cnt6.count  : '||to_char(l_bon_dct_tbl_cnt6.count));
14070         hr_utility.trace('l_bon_dct_tbl_cnt7.count  : '||to_char(l_bon_dct_tbl_cnt7.count));
14071         hr_utility.trace('l_bon_dct_tbl_cnt8.count  : '||to_char(l_bon_dct_tbl_cnt8.count));
14072         hr_utility.trace('l_bon_dct_tbl_cnt9.count  : '||to_char(l_bon_dct_tbl_cnt9.count));
14073         hr_utility.trace('l_bon_dct_tbl_cnt10.count : '||to_char(l_bon_dct_tbl_cnt10.count));
14074         hr_utility.trace('l_bon_dct_tbl_cnt11.count : '||to_char(l_bon_dct_tbl_cnt11.count));
14075         hr_utility.trace('l_bon_dct_tbl_cnt12.count : '||to_char(l_bon_dct_tbl_cnt12.count));
14076         hr_utility.trace('l_bon_dct_tbl_cnt13.count : '||to_char(l_bon_dct_tbl_cnt13.count));
14077         hr_utility.trace('l_bon_dct_tbl_cnt14.count : '||to_char(l_bon_dct_tbl_cnt14.count));
14078         hr_utility.trace('l_bon_dct_tbl_cnt15.count : '||to_char(l_bon_dct_tbl_cnt15.count));
14079         hr_utility.trace('l_wrk_tbl_mth1.count      : '||to_char(l_wrk_tbl_mth1.count));
14080         hr_utility.trace('l_wrk_tbl_mth2.count      : '||to_char(l_wrk_tbl_mth2.count));
14081         hr_utility.trace('l_wrk_tbl_mth3.count      : '||to_char(l_wrk_tbl_mth3.count));
14082         hr_utility.trace('l_wrk_tbl_mth4.count      : '||to_char(l_wrk_tbl_mth4.count));
14083         hr_utility.trace('l_wrk_tbl_mth5.count      : '||to_char(l_wrk_tbl_mth5.count));
14084         hr_utility.trace('l_wrk_tbl_mth6.count      : '||to_char(l_wrk_tbl_mth6.count));
14085         hr_utility.trace('l_wrk_tbl_mth7.count      : '||to_char(l_wrk_tbl_mth7.count));
14086         hr_utility.trace('l_wrk_tbl_mth8.count      : '||to_char(l_wrk_tbl_mth8.count));
14087         hr_utility.trace('l_wrk_tbl_mth9.count      : '||to_char(l_wrk_tbl_mth9.count));
14088         hr_utility.trace('l_wrk_tbl_mth10.count     : '||to_char(l_wrk_tbl_mth10.count));
14089         hr_utility.trace('l_wrk_tbl_mth11.count     : '||to_char(l_wrk_tbl_mth11.count));
14090         hr_utility.trace('l_wrk_tbl_mth12.count     : '||to_char(l_wrk_tbl_mth12.count));
14091       --
14092       end if;
14093       --
14094       if l_data_sal_ass_pay_tbl.count > 0
14095       and g_item_info_ind_tbl.count > 0 then
14096       --
14097         if g_debug
14098         and g_detail_debug = 'Y' then
14099           l_archive_step := 64;
14100         end if;
14101         --
14102         for i in 0..l_data_sal_ass_pay_tbl.count - 1 loop
14103         --
14104           if g_debug
14105           and g_detail_debug = 'Y' then
14106             l_archive_step := 65;
14107           end if;
14108           --
14109           if g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_start is not null
14110           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_end is not null
14111           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_start <= g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_end then
14112           --
14113             for j in g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_start..g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_end loop
14114             --
14115               l_skip := false;
14116               if nvl(g_item_info_sal_ern_tbl(j).item_null_valid,'N') = 'Y' then
14117               --
14118                 if valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
14119                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
14120                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
14121                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
14122                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
14123                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
14124                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
14125                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
14126                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
14127                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
14128                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
14129                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y' then
14130                 --
14131                   l_skip := true;
14132                 --
14133                 end if;
14134               --
14135               end if;
14136             --
14137               if not l_skip then
14138               --
14139                 -- set col_tot later, set_data_item_col_tot
14140                 pay_jp_itwb_dml_pkg.add_sal_earn(
14141                   p_assignment_action_id        => p_assignment_action_id,
14142                   p_assignment_id               => p_assignment_id,
14143                   p_effective_date              => g_effective_date,
14144                   p_item_pay_id                 => l_data_sal_ass_pay_tbl(i).payroll_id,
14145                   p_item_pay_ord                => l_data_sal_ass_pay_tbl(i).ord_num,
14146                   p_item_type                   => g_item_info_sal_ern_tbl(j).item_type,
14147                   p_item_id                     => g_item_info_sal_ern_tbl(j).item_id,
14148                   p_item_rep_seq                => g_item_info_sal_ern_tbl(j).item_rep_seq,
14149                   p_item_rep_name               => g_item_info_sal_ern_tbl(j).item_rep_name,
14150                   p_col_mth1                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_sal_ern_tbl(j).item_pk),
14151                   p_col_mth2                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_sal_ern_tbl(j).item_pk),
14152                   p_col_mth3                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_sal_ern_tbl(j).item_pk),
14153                   p_col_mth4                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_sal_ern_tbl(j).item_pk),
14154                   p_col_mth5                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_sal_ern_tbl(j).item_pk),
14155                   p_col_mth6                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_sal_ern_tbl(j).item_pk),
14156                   p_col_mth7                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_sal_ern_tbl(j).item_pk),
14157                   p_col_mth8                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_sal_ern_tbl(j).item_pk),
14158                   p_col_mth9                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_sal_ern_tbl(j).item_pk),
14159                   p_col_mth10                   => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_sal_ern_tbl(j).item_pk),
14160                   p_col_mth11                   => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_sal_ern_tbl(j).item_pk),
14161                   p_col_mth12                   => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_sal_ern_tbl(j).item_pk),
14162                   p_col_tot                     => null,
14163                   p_action_information_id       => l_action_information_id,
14164                   p_object_version_number       => l_object_version_number);
14165               --
14166               end if;
14167             --
14168             end loop;
14169           --
14170           end if;
14171         --
14172           if g_debug
14173           and g_detail_debug = 'Y' then
14174             l_archive_step := 66;
14175           end if;
14176         --
14177           if g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_start is not null
14178           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_end is not null
14179           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_start <= g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_end then
14180           --
14181             for k in g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_start..g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_end loop
14182             --
14183               l_skip := false;
14184               if nvl(g_item_info_sal_dct_tbl(k).item_null_valid,'N') = 'Y' then
14185               --
14186                 if valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
14187                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
14188                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
14189                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
14190                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
14191                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
14192                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
14193                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
14194                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
14195                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
14196                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
14197                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y' then
14198                 --
14199                   l_skip := true;
14200                 --
14201                 end if;
14202               --
14203               end if;
14204             --
14205               if not l_skip then
14206               --
14207                 pay_jp_itwb_dml_pkg.add_sal_dct(
14208                   p_assignment_action_id        => p_assignment_action_id,
14209                   p_assignment_id               => p_assignment_id,
14210                   p_effective_date              => g_effective_date,
14211                   p_item_pay_id                 => l_data_sal_ass_pay_tbl(i).payroll_id,
14212                   p_item_pay_ord                => l_data_sal_ass_pay_tbl(i).ord_num,
14213                   p_item_type                   => g_item_info_sal_dct_tbl(k).item_type,
14214                   p_item_id                     => g_item_info_sal_dct_tbl(k).item_id,
14215                   p_item_rep_seq                => g_item_info_sal_dct_tbl(k).item_rep_seq,
14216                   p_item_rep_name               => g_item_info_sal_dct_tbl(k).item_rep_name,
14217                   p_col_mth1                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_sal_dct_tbl(k).item_pk),
14218                   p_col_mth2                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_sal_dct_tbl(k).item_pk),
14219                   p_col_mth3                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_sal_dct_tbl(k).item_pk),
14220                   p_col_mth4                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_sal_dct_tbl(k).item_pk),
14221                   p_col_mth5                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_sal_dct_tbl(k).item_pk),
14222                   p_col_mth6                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_sal_dct_tbl(k).item_pk),
14223                   p_col_mth7                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_sal_dct_tbl(k).item_pk),
14224                   p_col_mth8                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_sal_dct_tbl(k).item_pk),
14225                   p_col_mth9                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_sal_dct_tbl(k).item_pk),
14226                   p_col_mth10                   => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_sal_dct_tbl(k).item_pk),
14227                   p_col_mth11                   => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_sal_dct_tbl(k).item_pk),
14228                   p_col_mth12                   => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_sal_dct_tbl(k).item_pk),
14229                   p_col_tot                     => null,
14230                   p_action_information_id       => l_action_information_id,
14231                   p_object_version_number       => l_object_version_number);
14232               --
14233               end if;
14234             --
14235             end loop;
14236           --
14237           end if;
14238         --
14239           if g_debug
14240           and g_detail_debug = 'Y' then
14241             l_archive_step := 67;
14242           end if;
14243         --
14244           if g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_start is not null
14245           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_end is not null
14246           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_start <= g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_end then
14247           --
14248             for l in g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_start..g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_end loop
14249             --
14250               l_skip := false;
14251               if nvl(g_item_info_wrk_tbl(l).item_null_valid,'N') = 'Y' then
14252               --
14253                 if valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
14254                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
14255                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
14256                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
14257                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
14258                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
14259                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
14260                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
14261                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
14262                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
14263                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
14264                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_wrk_tbl(l).item_pk) = 'Y' then
14265                 --
14266                   l_skip := true;
14267                 --
14268                 end if;
14269               --
14270               end if;
14271             --
14272               if not l_skip then
14273               --
14274                 pay_jp_itwb_dml_pkg.add_wrk(
14275                   p_assignment_action_id        => p_assignment_action_id,
14276                   p_assignment_id               => p_assignment_id,
14277                   p_effective_date              => g_effective_date,
14278                   p_item_pay_id                 => l_data_sal_ass_pay_tbl(i).payroll_id,
14279                   p_item_pay_ord                => l_data_sal_ass_pay_tbl(i).ord_num,
14280                   p_item_type                   => g_item_info_wrk_tbl(l).item_type,
14281                   p_item_id                     => g_item_info_wrk_tbl(l).item_id,
14282                   p_item_rep_seq                => g_item_info_wrk_tbl(l).item_rep_seq,
14283                   p_item_rep_name               => g_item_info_wrk_tbl(l).item_rep_name,
14284                   p_col_mth1                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_wrk_tbl(l).item_pk),
14285                   p_col_mth2                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_wrk_tbl(l).item_pk),
14286                   p_col_mth3                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_wrk_tbl(l).item_pk),
14287                   p_col_mth4                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_wrk_tbl(l).item_pk),
14288                   p_col_mth5                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_wrk_tbl(l).item_pk),
14289                   p_col_mth6                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_wrk_tbl(l).item_pk),
14290                   p_col_mth7                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_wrk_tbl(l).item_pk),
14291                   p_col_mth8                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_wrk_tbl(l).item_pk),
14292                   p_col_mth9                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_wrk_tbl(l).item_pk),
14293                   p_col_mth10                   => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_wrk_tbl(l).item_pk),
14294                   p_col_mth11                   => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_wrk_tbl(l).item_pk),
14295                   p_col_mth12                   => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_wrk_tbl(l).item_pk),
14296                   p_col_tot                     => null,
14297                   p_action_information_id       => l_action_information_id,
14298                   p_object_version_number       => l_object_version_number);
14299               --
14300               end if;
14301             --
14302             end loop;
14303           --
14304           end if;
14305         --
14306         end loop;
14307       --
14308         if g_debug
14309         and g_detail_debug = 'Y' then
14310           l_archive_step := 68;
14311         end if;
14312       --
14313         set_data_item_col_tot(
14314           p_assignment_action_id => p_assignment_action_id,
14315           p_type                 => 'SAL');
14316       --
14317       end if;
14318     --
14319       if g_debug
14320       and g_detail_debug = 'Y' then
14321         l_archive_step := 69;
14322       end if;
14323     --
14324       if l_data_bon_ass_pay_tbl.count > 0
14325       and g_item_info_ind_tbl.count > 0 then
14326       --
14327         if g_debug
14328         and g_detail_debug = 'Y' then
14329           l_archive_step := 70;
14330         end if;
14331         --
14332         for m in 0..l_data_bon_ass_pay_tbl.count - 1 loop
14333         --
14334           if g_debug
14335           and g_detail_debug = 'Y' then
14336             l_archive_step := 71;
14337           end if;
14338           --
14339           if g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_start is not null
14340           and g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_end is not null
14341           and g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_start <= g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_end then
14342           --
14343             for n in g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_start..g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_end loop
14344             --
14345               l_skip := false;
14346               if nvl(g_item_info_bon_ern_tbl(n).item_null_valid,'N') = 'Y' then
14347               --
14348                 if nvl(valid_null_val(l_bon_ern_tbl_cnt1,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14349                 and nvl(valid_null_val(l_bon_ern_tbl_cnt2,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14350                 and nvl(valid_null_val(l_bon_ern_tbl_cnt3,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14351                 and nvl(valid_null_val(l_bon_ern_tbl_cnt4,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14352                 and nvl(valid_null_val(l_bon_ern_tbl_cnt5,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14353                 and nvl(valid_null_val(l_bon_ern_tbl_cnt6,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14354                 and nvl(valid_null_val(l_bon_ern_tbl_cnt7,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14355                 and nvl(valid_null_val(l_bon_ern_tbl_cnt8,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14356                 and nvl(valid_null_val(l_bon_ern_tbl_cnt9,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14357                 and nvl(valid_null_val(l_bon_ern_tbl_cnt10,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14358                 and nvl(valid_null_val(l_bon_ern_tbl_cnt11,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14359                 and nvl(valid_null_val(l_bon_ern_tbl_cnt12,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14360                 and nvl(valid_null_val(l_bon_ern_tbl_cnt13,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14361                 and nvl(valid_null_val(l_bon_ern_tbl_cnt14,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
14362                 and nvl(valid_null_val(l_bon_ern_tbl_cnt15,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y' then
14363                 --
14364                   l_skip := true;
14365                 --
14366                 end if;
14367               --
14368               end if;
14369             --
14370               if not l_skip then
14371               --
14372                 pay_jp_itwb_dml_pkg.add_bon_earn(
14373                   p_assignment_action_id        => p_assignment_action_id,
14374                   p_assignment_id               => p_assignment_id,
14375                   p_effective_date              => g_effective_date,
14376                   p_item_pay_id                 => l_data_bon_ass_pay_tbl(m).payroll_id,
14377                   p_item_pay_ord                => l_data_bon_ass_pay_tbl(m).ord_num,
14378                   p_item_type                   => g_item_info_bon_ern_tbl(n).item_type,
14379                   p_item_id                     => g_item_info_bon_ern_tbl(n).item_id,
14380                   p_item_rep_seq                => g_item_info_bon_ern_tbl(n).item_rep_seq,
14381                   p_item_rep_name               => g_item_info_bon_ern_tbl(n).item_rep_name,
14382                   p_col_cnt1                    => cnv_null_val(l_bon_ern_tbl_cnt1,g_item_info_bon_ern_tbl(n).item_pk),
14383                   p_col_cnt2                    => cnv_null_val(l_bon_ern_tbl_cnt2,g_item_info_bon_ern_tbl(n).item_pk),
14384                   p_col_cnt3                    => cnv_null_val(l_bon_ern_tbl_cnt3,g_item_info_bon_ern_tbl(n).item_pk),
14385                   p_col_cnt4                    => cnv_null_val(l_bon_ern_tbl_cnt4,g_item_info_bon_ern_tbl(n).item_pk),
14386                   p_col_cnt5                    => cnv_null_val(l_bon_ern_tbl_cnt5,g_item_info_bon_ern_tbl(n).item_pk),
14387                   p_col_cnt6                    => cnv_null_val(l_bon_ern_tbl_cnt6,g_item_info_bon_ern_tbl(n).item_pk),
14388                   p_col_cnt7                    => cnv_null_val(l_bon_ern_tbl_cnt7,g_item_info_bon_ern_tbl(n).item_pk),
14389                   p_col_cnt8                    => cnv_null_val(l_bon_ern_tbl_cnt8,g_item_info_bon_ern_tbl(n).item_pk),
14390                   p_col_cnt9                    => cnv_null_val(l_bon_ern_tbl_cnt9,g_item_info_bon_ern_tbl(n).item_pk),
14391                   p_col_cnt10                   => cnv_null_val(l_bon_ern_tbl_cnt10,g_item_info_bon_ern_tbl(n).item_pk),
14392                   p_col_cnt11                   => cnv_null_val(l_bon_ern_tbl_cnt11,g_item_info_bon_ern_tbl(n).item_pk),
14393                   p_col_cnt12                   => cnv_null_val(l_bon_ern_tbl_cnt12,g_item_info_bon_ern_tbl(n).item_pk),
14394                   p_col_cnt13                   => cnv_null_val(l_bon_ern_tbl_cnt13,g_item_info_bon_ern_tbl(n).item_pk),
14395                   p_col_cnt14                   => cnv_null_val(l_bon_ern_tbl_cnt14,g_item_info_bon_ern_tbl(n).item_pk),
14396                   p_col_cnt15                   => cnv_null_val(l_bon_ern_tbl_cnt15,g_item_info_bon_ern_tbl(n).item_pk),
14397                   p_col_tot                     => null,
14398                   p_action_information_id       => l_action_information_id,
14399                   p_object_version_number       => l_object_version_number);
14400               --
14401               end if;
14402             --
14403             end loop;
14404           --
14405           end if;
14406         --
14407           if g_debug
14408           and g_detail_debug = 'Y' then
14409             l_archive_step := 72;
14410           end if;
14411         --
14412           if g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_start is not null
14413           and g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_end is not null
14414           and g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_start <= g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_end then
14415           --
14416             for o in g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_start..g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_end loop
14417             --
14418               l_skip := false;
14419               if nvl(g_item_info_bon_dct_tbl(o).item_null_valid,'N') = 'Y' then
14420               --
14421                 if nvl(valid_null_val(l_bon_dct_tbl_cnt1,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14422                 and nvl(valid_null_val(l_bon_dct_tbl_cnt2,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14423                 and nvl(valid_null_val(l_bon_dct_tbl_cnt3,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14424                 and nvl(valid_null_val(l_bon_dct_tbl_cnt4,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14425                 and nvl(valid_null_val(l_bon_dct_tbl_cnt5,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14426                 and nvl(valid_null_val(l_bon_dct_tbl_cnt6,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14427                 and nvl(valid_null_val(l_bon_dct_tbl_cnt7,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14428                 and nvl(valid_null_val(l_bon_dct_tbl_cnt8,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14429                 and nvl(valid_null_val(l_bon_dct_tbl_cnt9,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14430                 and nvl(valid_null_val(l_bon_dct_tbl_cnt10,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14431                 and nvl(valid_null_val(l_bon_dct_tbl_cnt11,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14432                 and nvl(valid_null_val(l_bon_dct_tbl_cnt12,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14433                 and nvl(valid_null_val(l_bon_dct_tbl_cnt13,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14434                 and nvl(valid_null_val(l_bon_dct_tbl_cnt14,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
14435                 and nvl(valid_null_val(l_bon_dct_tbl_cnt15,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y' then
14436                 --
14437                   l_skip := true;
14438                 --
14439                 end if;
14440               --
14441               end if;
14442             --
14443               if not l_skip then
14444               --
14445                 pay_jp_itwb_dml_pkg.add_bon_dct(
14446                   p_assignment_action_id        => p_assignment_action_id,
14447                   p_assignment_id               => p_assignment_id,
14448                   p_effective_date              => g_effective_date,
14449                   p_item_pay_id                 => l_data_bon_ass_pay_tbl(m).payroll_id,
14450                   p_item_pay_ord                => l_data_bon_ass_pay_tbl(m).ord_num,
14451                   p_item_type                   => g_item_info_bon_dct_tbl(o).item_type,
14452                   p_item_id                     => g_item_info_bon_dct_tbl(o).item_id,
14453                   p_item_rep_seq                => g_item_info_bon_dct_tbl(o).item_rep_seq,
14454                   p_item_rep_name               => g_item_info_bon_dct_tbl(o).item_rep_name,
14455                   p_col_cnt1                    => cnv_null_val(l_bon_dct_tbl_cnt1,g_item_info_bon_dct_tbl(o).item_pk),
14456                   p_col_cnt2                    => cnv_null_val(l_bon_dct_tbl_cnt2,g_item_info_bon_dct_tbl(o).item_pk),
14457                   p_col_cnt3                    => cnv_null_val(l_bon_dct_tbl_cnt3,g_item_info_bon_dct_tbl(o).item_pk),
14458                   p_col_cnt4                    => cnv_null_val(l_bon_dct_tbl_cnt4,g_item_info_bon_dct_tbl(o).item_pk),
14459                   p_col_cnt5                    => cnv_null_val(l_bon_dct_tbl_cnt5,g_item_info_bon_dct_tbl(o).item_pk),
14460                   p_col_cnt6                    => cnv_null_val(l_bon_dct_tbl_cnt6,g_item_info_bon_dct_tbl(o).item_pk),
14461                   p_col_cnt7                    => cnv_null_val(l_bon_dct_tbl_cnt7,g_item_info_bon_dct_tbl(o).item_pk),
14462                   p_col_cnt8                    => cnv_null_val(l_bon_dct_tbl_cnt8,g_item_info_bon_dct_tbl(o).item_pk),
14463                   p_col_cnt9                    => cnv_null_val(l_bon_dct_tbl_cnt9,g_item_info_bon_dct_tbl(o).item_pk),
14464                   p_col_cnt10                   => cnv_null_val(l_bon_dct_tbl_cnt10,g_item_info_bon_dct_tbl(o).item_pk),
14465                   p_col_cnt11                   => cnv_null_val(l_bon_dct_tbl_cnt11,g_item_info_bon_dct_tbl(o).item_pk),
14466                   p_col_cnt12                   => cnv_null_val(l_bon_dct_tbl_cnt12,g_item_info_bon_dct_tbl(o).item_pk),
14467                   p_col_cnt13                   => cnv_null_val(l_bon_dct_tbl_cnt13,g_item_info_bon_dct_tbl(o).item_pk),
14468                   p_col_cnt14                   => cnv_null_val(l_bon_dct_tbl_cnt14,g_item_info_bon_dct_tbl(o).item_pk),
14469                   p_col_cnt15                   => cnv_null_val(l_bon_dct_tbl_cnt15,g_item_info_bon_dct_tbl(o).item_pk),
14470                   p_col_tot                     => null,
14471                   p_action_information_id       => l_action_information_id,
14472                   p_object_version_number       => l_object_version_number);
14473               --
14474               end if;
14475             --
14476             end loop;
14477           --
14478           end if;
14479         --
14480           if g_debug
14481           and g_detail_debug = 'Y' then
14482             l_archive_step := 73;
14483           end if;
14484         --
14485         end loop;
14486       --
14487         if g_debug
14488         and g_detail_debug = 'Y' then
14489           l_archive_step := 74;
14490         end if;
14491       --
14492         set_data_item_col_tot(
14493           p_assignment_action_id => p_assignment_action_id,
14494           p_type                 => 'BON');
14495       --
14496       end if;
14497     --
14498       if g_debug
14499       and g_detail_debug = 'Y' then
14500         l_archive_step := 75;
14501       end if;
14502     --
14503       pay_jp_itwb_dml_pkg.copy_pjob(
14504         p_assignment_action_id        => p_assignment_action_id,
14505         p_effective_date              => g_effective_date,
14506         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o);
14507     --
14508       if g_debug
14509       and g_detail_debug = 'Y' then
14510         l_archive_step := 76;
14511       end if;
14512     --
14513       pay_jp_itwb_dml_pkg.copy_pai(
14514         p_action_context_id           => p_assignment_action_id,
14515         p_effective_date              => g_effective_date,
14516         p_action_context_id_o         => l_arch_assignment_action_id_o,
14517         p_action_context_type         => 'AAP',
14518         p_action_information_category => 'JP_ITWB_DEP',
14519         p_action_information_id       => l_action_information_id,
14520         p_object_version_number       => l_object_version_number);
14521     --
14522       if g_debug
14523       and g_detail_debug = 'Y' then
14524         l_archive_step := 77;
14525       end if;
14526     --
14527       -- add = update in only case when data is not null
14528       pay_jp_itwb_dml_pkg.add_yea_act(
14529         p_assignment_action_id        => p_assignment_action_id,
14530         p_effective_date              => g_effective_date,
14531         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14532         p_act                         => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_id,
14533         p_efd                         => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_efd,
14534         p_erd                         => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_erd,
14535         p_pay                         => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_pay,
14536         p_yea_type                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_type,
14537         p_yea_flag                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_include_flag,
14538         p_action_information_id       => l_action_information_id,
14539         p_object_version_number       => l_object_version_number);
14540     --
14541       if g_debug
14542       and g_detail_debug = 'Y' then
14543         l_archive_step := 78;
14544       end if;
14545     --
14546       -- add = update in only case when data is not null
14547       pay_jp_itwb_dml_pkg.add_yea_pay(
14548         p_assignment_action_id        => p_assignment_action_id,
14549         p_effective_date              => g_effective_date,
14550         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14551         p_sal_txbl_mon                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_sal_txbl_mon,
14552         p_sal_txbl_kind               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_sal_txbl_kind,
14553         p_sal_txbl                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_sal_txbl,
14554         p_bon_txbl_mon                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_txbl_mon,
14555         p_bon_txbl_kind               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_txbl_kind,
14556         p_bon_txbl                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_txbl,
14557         p_spb_txbl_mon                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_spb_txbl_mon,
14558         p_spb_txbl_kind               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_spb_txbl_kind,
14559         p_spb_txbl                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_spb_txbl,
14560         p_bon_txbl_tot                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_txbl_calc,
14561         p_txbl                        => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_txbl,
14562         p_sal_itx                     => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_sal_itx,
14563         p_bon_itx                     => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_itx,
14564         p_spb_itx                     => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_spb_itx,
14565         p_bon_itx_tot                 => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_itx_calc,
14566         p_withhold_itx                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_withhold_itx_calc,
14567         p_action_information_id       => l_action_information_id,
14568         p_object_version_number       => l_object_version_number);
14569     --
14570       if g_debug
14571       and g_detail_debug = 'Y' then
14572         l_archive_step := 79;
14573       end if;
14574     --
14575       -- add = update in only case when data is not null
14576       pay_jp_itwb_dml_pkg.add_yea_dct(
14577         p_assignment_action_id         => p_assignment_action_id,
14578         p_effective_date               => g_effective_date,
14579         p_arch_assignment_action_id_o  => l_arch_assignment_action_id_o,
14580         p_sal_dct_si_prem              => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sal_dct_si_prem_calc,
14581         p_dec_si_prem                  => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_dec_si_prem,
14582         p_dec_small_comp_mut_aid_prem  => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_dec_sc_mut_prem,
14583         p_life_ins_prem_exm            => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_life_ins_prem_exm,
14584         p_earthquake_ins_prem_exm      => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_eq_ins_prem_exm,
14585         p_spouse_sp_exm                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_spouse_sp_exm,
14586         p_basic_exm                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_basic_exm,
14587         p_gen_spouse_exm               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_gen_spouse_exm,
14588         p_elder_spouse_exm             => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_elder_spouse_exm,
14589         p_gen_dep_exm                  => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_gen_dep_exm,
14590         p_specific_dep_exm             => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_specific_dep_exm,
14591         p_junior_dep_exm               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_junior_dep_exm,
14592         p_elder_dep_exm                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_elder_dep_exm,
14593         p_elder_parent_lt_exm          => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_elder_parent_lt_exm,
14594         p_gen_disabled_exm             => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_gen_disabled_exm,
14595         p_sev_disabled_exm             => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sev_disabled_exm,
14596         p_sev_disabled_lt_exm          => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sev_disabled_lt_exm,
14597         p_elder_exm                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_elder_exm,
14598         p_widow_exm                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_widow_exm,
14599         p_sp_widow_exm                 => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sp_widow_exm,
14600         p_working_student_exm          => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_working_student_exm,
14601         p_dep_exm                      => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_dep_exm_calc,
14602         p_spouse_income                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_spouse_income,
14603         p_individual_pension_prem      => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_ind_pension_prem,
14604         p_long_term_nonlife_ins_prem   => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_lt_nonlife_ins_prem,
14605         p_small_comp_mut_aid_prem      => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sc_mut_prem_calc,
14606         p_national_pension_prem        => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_national_pension_prem,
14607         p_income_exm                   => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_income_exm,
14608         p_action_information_id        => l_action_information_id,
14609         p_object_version_number        => l_object_version_number);
14610     --
14611       if g_debug
14612       and g_detail_debug = 'Y' then
14613         l_archive_step := 80;
14614       end if;
14615     --
14616       -- add = update in only case when data is not null
14617       pay_jp_itwb_dml_pkg.add_yea_tax(
14618         p_assignment_action_id           => p_assignment_action_id,
14619         p_effective_date                 => g_effective_date,
14620         p_arch_assignment_action_id_o    => l_arch_assignment_action_id_o,
14621         p_amt_aft_emp_inc_dct            => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_amt_aft_emp_inc_dct,
14622         p_net_txbl_income                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_net_txbl_income,
14623         p_annual_tax                     => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_annual_tax,
14624         p_act_housing_loan_tax_credit    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_act_housing_loan,
14625         p_yea_annual_tax                 => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_yea_annual_tax,
14626 		p_yea_income_tax                 => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_yea_income_tax,
14627         p_yea_tax_pay                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_yea_tax_pay,
14628         p_action_information_id          => l_action_information_id,
14629         p_object_version_number          => l_object_version_number);
14630     --
14631       if g_debug
14632       and g_detail_debug = 'Y' then
14633         l_archive_step := 81;
14634       end if;
14635     --
14636       pay_jp_itwb_dml_pkg.copy_pai_type(
14637         p_action_context_id           => p_assignment_action_id,
14638         p_effective_date              => g_effective_date,
14639         p_action_context_id_o         => l_arch_assignment_action_id_o,
14640         p_action_context_type         => 'AAP',
14641         p_action_information_category => 'JP_ITWB_EMP_CUST',
14642         p_type                        => 'T',
14643         p_action_information_id       => l_action_information_id,
14644         p_object_version_number       => l_object_version_number);
14645     --
14646       if g_debug
14647       and g_detail_debug = 'Y' then
14648         l_archive_step := 82;
14649       end if;
14650     --
14651       pay_jp_itwb_dml_pkg.copy_pai_type(
14652         p_action_context_id           => p_assignment_action_id,
14653         p_effective_date              => g_effective_date,
14654         p_action_context_id_o         => l_arch_assignment_action_id_o,
14655         p_action_context_type         => 'AAP',
14656         p_action_information_category => 'JP_ITWB_EMP_CUST',
14657         p_type                        => 'D',
14658         p_action_information_id       => l_action_information_id,
14659         p_object_version_number       => l_object_version_number);
14660     --
14661       if g_debug
14662       and g_detail_debug = 'Y' then
14663         l_archive_step := 83;
14664       end if;
14665     --
14666       pay_jp_itwb_dml_pkg.copy_pai_type(
14667         p_action_context_id           => p_assignment_action_id,
14668         p_effective_date              => g_effective_date,
14669         p_action_context_id_o         => l_arch_assignment_action_id_o,
14670         p_action_context_type         => 'AAP',
14671         p_action_information_category => 'JP_ITWB_EMP_CUST',
14672         p_type                        => 'N',
14673         p_action_information_id       => l_action_information_id,
14674         p_object_version_number       => l_object_version_number);
14675     --
14676       if g_debug
14677       and g_detail_debug = 'Y' then
14678         l_archive_step := 84;
14679       end if;
14680     --
14681     -- -----------------------------------
14682     -- UPDATE (exist latest assact)
14683     -- -----------------------------------
14684     elsif g_arch_option = 'UPDATE'
14685     and l_arch_assignment_action_id_o is not null then
14686     --
14687       if g_debug
14688       and g_detail_debug = 'Y' then
14689         l_archive_step := 85;
14690         hr_utility.set_location(l_proc,50);
14691         hr_utility.trace('UPDATE mode');
14692       end if;
14693     --
14694       -- include copy, before updating
14695       -- update can be available for case when month is same
14696       -- but status should be update in any case
14697       -- update all data (inc null data) if difference
14698       pay_jp_itwb_dml_pkg.update_assact(
14699         p_assignment_action_id        => p_assignment_action_id,
14700         p_effective_date              => g_effective_date,
14701         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14702         p_proc_assignment_action_id   => l_proc_assignment_action_id,
14703         p_proc_assact_date_o          => l_proc_assact_date_o,
14704         p_status                      => g_arch_option,
14705         p_organization_id             => g_body_tbl(p_assignment_action_id).assact_organization_id,
14706         p_job_id                      => g_body_tbl(p_assignment_action_id).assact_job_id,
14707         p_payroll_id                  => g_body_tbl(p_assignment_action_id).assact_payroll_id,
14708         p_location_id                 => g_body_tbl(p_assignment_action_id).assact_location_id,
14709         p_termination_date            => g_body_tbl(p_assignment_action_id).assact_termination_date,
14710         p_leaving_reason              => g_body_tbl(p_assignment_action_id).assact_leaving_reason,
14711         p_action_information_id       => l_action_information_id,
14712         p_object_version_number       => l_object_version_number);
14713     --
14714       if g_debug
14715       and g_detail_debug = 'Y' then
14716         l_archive_step := 86;
14717       end if;
14718     --
14719       -- include copy, before updating
14720       -- update can be available for case when month is same
14721       -- update all data (inc null data) if difference
14722       pay_jp_itwb_dml_pkg.update_emp(
14723         p_assignment_action_id        => p_assignment_action_id,
14724         p_effective_date              => g_effective_date,
14725         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14726         p_proc_assignment_action_id   => l_proc_assignment_action_id,
14727         p_proc_assact_date_o          => l_proc_assact_date_o,
14728         p_person_id                   => g_body_tbl(p_assignment_action_id).emp_person_id,
14729         p_employee_number             => g_body_tbl(p_assignment_action_id).emp_employee_number,
14730         p_last_name                   => g_body_tbl(p_assignment_action_id).emp_last_name,
14731         p_first_name                  => g_body_tbl(p_assignment_action_id).emp_first_name,
14732         p_last_name_kana              => g_body_tbl(p_assignment_action_id).emp_last_name_kana,
14733         p_first_name_kana             => g_body_tbl(p_assignment_action_id).emp_first_name_kana,
14734         p_sex                         => g_body_tbl(p_assignment_action_id).emp_sex,
14735         p_birth_date                  => g_body_tbl(p_assignment_action_id).emp_birth_date,
14736         p_action_information_id       => l_action_information_id,
14737         p_object_version_number       => l_object_version_number);
14738     --
14739       if g_debug
14740       and g_detail_debug = 'Y' then
14741         l_archive_step := 87;
14742       end if;
14743     --
14744       pay_jp_itwb_dml_pkg.update_emp_add(
14745         p_assignment_action_id        => p_assignment_action_id,
14746         p_effective_date              => g_effective_date,
14747         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14748         p_proc_assignment_action_id   => l_proc_assignment_action_id,
14749         p_proc_assact_date_o          => l_proc_assact_date_o,
14750         p_address_id                  => g_body_tbl(p_assignment_action_id).emp_add_address_id,
14751         p_address_jp                  => g_body_tbl(p_assignment_action_id).emp_add_address_jp,
14752         p_postal_code                 => g_body_tbl(p_assignment_action_id).emp_add_postal_code,
14753         p_district_code               => g_body_tbl(p_assignment_action_id).emp_add_district_code,
14754         p_address1                    => substr(g_body_tbl(p_assignment_action_id).emp_add_address,1,80),
14755         p_address2                    => substr(g_body_tbl(p_assignment_action_id).emp_add_address,81,80),
14756         p_address_kana1               => substr(g_body_tbl(p_assignment_action_id).emp_add_address_kana,1,80),
14757         p_address_kana2               => substr(g_body_tbl(p_assignment_action_id).emp_add_address_kana,81,80),
14758         p_phone1                      => g_body_tbl(p_assignment_action_id).emp_add_phone1,
14759         p_phone2                      => g_body_tbl(p_assignment_action_id).emp_add_phone2,
14760         p_action_information_id       => l_action_information_id,
14761         p_object_version_number       => l_object_version_number);
14762     --
14763       if g_debug
14764       and g_detail_debug = 'Y' then
14765         l_archive_step := 88;
14766       end if;
14767     --
14768       pay_jp_itwb_dml_pkg.update_emp_ass(
14769         p_assignment_action_id        => p_assignment_action_id,
14770         p_effective_date              => g_effective_date,
14771         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14772         p_proc_assignment_action_id   => l_proc_assignment_action_id,
14773         p_proc_assact_date_o          => l_proc_assact_date_o,
14774         p_hire_date                   => g_body_tbl(p_assignment_action_id).emp_ass_hire_date,
14775         p_organization_name           => g_body_tbl(p_assignment_action_id).emp_ass_organization_name,
14776         p_job_name                    => g_body_tbl(p_assignment_action_id).emp_ass_job_name,
14777         p_payroll_name                => g_body_tbl(p_assignment_action_id).emp_ass_payroll_name,
14778         p_location_name               => g_body_tbl(p_assignment_action_id).emp_ass_location_name,
14779         p_action_information_id       => l_action_information_id,
14780         p_object_version_number       => l_object_version_number);
14781     --
14782       if g_debug
14783       and g_detail_debug = 'Y' then
14784         l_archive_step := 89;
14785       end if;
14786     --
14787       pay_jp_itwb_dml_pkg.update_emp_si(
14788         p_assignment_action_id        => p_assignment_action_id,
14789         p_effective_date              => g_effective_date,
14790         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14791         p_proc_assignment_action_id   => l_proc_assignment_action_id,
14792         p_proc_assact_date_o          => l_proc_assact_date_o,
14793         p_itax_org_id                 => g_body_tbl(p_assignment_action_id).emp_si_itax_org_id,
14794         p_itax_type                   => g_body_tbl(p_assignment_action_id).emp_si_itax_type,
14795         p_hi_org_id                   => g_body_tbl(p_assignment_action_id).emp_si_hi_org_id,
14796         p_hi_number                   => g_body_tbl(p_assignment_action_id).emp_si_hi_number,
14797         p_wp_org_id                   => g_body_tbl(p_assignment_action_id).emp_si_wp_org_id,
14798         p_wp_number                   => g_body_tbl(p_assignment_action_id).emp_si_wp_number,
14799         p_wpf_org_id                  => g_body_tbl(p_assignment_action_id).emp_si_wpf_org_id,
14800         p_wpf_number                  => g_body_tbl(p_assignment_action_id).emp_si_wpf_number,
14801         p_ei_org_id                   => g_body_tbl(p_assignment_action_id).emp_si_ei_org_id,
14802         p_ei_number                   => g_body_tbl(p_assignment_action_id).emp_si_ei_number,
14803         p_nres_flag                   => g_body_tbl(p_assignment_action_id).emp_si_nres_flag,
14804         p_nres_start_date             => g_body_tbl(p_assignment_action_id).emp_si_nres_start_date,
14805         p_projected_res_date          => g_body_tbl(p_assignment_action_id).emp_si_projected_res_date,
14806         p_action_information_id       => l_action_information_id,
14807         p_object_version_number       => l_object_version_number);
14808     --
14809       if g_debug
14810       and g_detail_debug = 'Y' then
14811         l_archive_step := 90;
14812       end if;
14813     --
14814       -- include copy, before updating
14815       -- update for all case
14816       pay_jp_itwb_dml_pkg.update_sal_act(
14817         p_assignment_action_id        => p_assignment_action_id,
14818         p_effective_date              => g_effective_date,
14819         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14820         p_category                    => 'ACT',
14821         p_col_mth1                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth1),
14822         p_col_mth2                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth2),
14823         p_col_mth3                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth3),
14824         p_col_mth4                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth4),
14825         p_col_mth5                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth5),
14826         p_col_mth6                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth6),
14827         p_col_mth7                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth7),
14828         p_col_mth8                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth8),
14829         p_col_mth9                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth9),
14830         p_col_mth10                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth10),
14831         p_col_mth11                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth11),
14832         p_col_mth12                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth12),
14833         p_action_information_id       => l_action_information_id,
14834         p_object_version_number       => l_object_version_number);
14835     --
14836       if g_debug
14837       and g_detail_debug = 'Y' then
14838         l_archive_step := 91;
14839       end if;
14840     --
14841       pay_jp_itwb_dml_pkg.update_sal_act(
14842         p_assignment_action_id        => p_assignment_action_id,
14843         p_effective_date              => g_effective_date,
14844         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14845         p_category                    => 'EFD',
14846         p_col_mth1                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_act_efd),
14847         p_col_mth2                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_act_efd),
14848         p_col_mth3                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_act_efd),
14849         p_col_mth4                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_act_efd),
14850         p_col_mth5                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_act_efd),
14851         p_col_mth6                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_act_efd),
14852         p_col_mth7                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_act_efd),
14853         p_col_mth8                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_act_efd),
14854         p_col_mth9                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_act_efd),
14855         p_col_mth10                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_act_efd),
14856         p_col_mth11                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_act_efd),
14857         p_col_mth12                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_act_efd),
14858         p_action_information_id       => l_action_information_id,
14859         p_object_version_number       => l_object_version_number);
14860     --
14861       if g_debug
14862       and g_detail_debug = 'Y' then
14863         l_archive_step := 92;
14864       end if;
14865     --
14866       pay_jp_itwb_dml_pkg.update_sal_act(
14867         p_assignment_action_id        => p_assignment_action_id,
14868         p_effective_date              => g_effective_date,
14869         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14870         p_category                    => 'ERD',
14871         p_col_mth1                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_act_erd),
14872         p_col_mth2                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_act_erd),
14873         p_col_mth3                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_act_erd),
14874         p_col_mth4                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_act_erd),
14875         p_col_mth5                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_act_erd),
14876         p_col_mth6                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_act_erd),
14877         p_col_mth7                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_act_erd),
14878         p_col_mth8                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_act_erd),
14879         p_col_mth9                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_act_erd),
14880         p_col_mth10                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_act_erd),
14881         p_col_mth11                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_act_erd),
14882         p_col_mth12                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_act_erd),
14883         p_action_information_id       => l_action_information_id,
14884         p_object_version_number       => l_object_version_number);
14885     --
14886       if g_debug
14887       and g_detail_debug = 'Y' then
14888         l_archive_step := 93;
14889       end if;
14890     --
14891       pay_jp_itwb_dml_pkg.update_sal_act(
14892         p_assignment_action_id        => p_assignment_action_id,
14893         p_effective_date              => g_effective_date,
14894         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14895         p_category                    => 'PAY',
14896         p_col_mth1                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_act_pay),
14897         p_col_mth2                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_act_pay),
14898         p_col_mth3                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_act_pay),
14899         p_col_mth4                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_act_pay),
14900         p_col_mth5                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_act_pay),
14901         p_col_mth6                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_act_pay),
14902         p_col_mth7                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_act_pay),
14903         p_col_mth8                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_act_pay),
14904         p_col_mth9                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_act_pay),
14905         p_col_mth10                   => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_act_pay),
14906         p_col_mth11                   => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_act_pay),
14907         p_col_mth12                   => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_act_pay),
14908         p_action_information_id       => l_action_information_id,
14909         p_object_version_number       => l_object_version_number);
14910     --
14911       if g_debug
14912       and g_detail_debug = 'Y' then
14913         l_archive_step := 94;
14914       end if;
14915     --
14916       -- set col_tot later, set_data_pay_col_tot
14917       pay_jp_itwb_dml_pkg.update_sal_pay(
14918         p_assignment_action_id        => p_assignment_action_id,
14919         p_effective_date              => g_effective_date,
14920         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14921         p_category                    => 'TXBL',
14922         p_col_mth1                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
14923         p_col_mth2                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
14924         p_col_mth3                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
14925         p_col_mth4                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
14926         p_col_mth5                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
14927         p_col_mth6                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
14928         p_col_mth7                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
14929         p_col_mth8                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
14930         p_col_mth9                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
14931         p_col_mth10                   => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
14932         p_col_mth11                   => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
14933         p_col_mth12                   => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
14934         p_col_tot                     => null,
14935         p_action_information_id       => l_action_information_id,
14936         p_object_version_number       => l_object_version_number);
14937     --
14938       if g_debug
14939       and g_detail_debug = 'Y' then
14940         l_archive_step := 95;
14941       end if;
14942     --
14943       pay_jp_itwb_dml_pkg.update_sal_pay(
14944         p_assignment_action_id        => p_assignment_action_id,
14945         p_effective_date              => g_effective_date,
14946         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14947         p_category                    => 'NTXBL',
14948         p_col_mth1                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
14949         p_col_mth2                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
14950         p_col_mth3                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
14951         p_col_mth4                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
14952         p_col_mth5                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
14953         p_col_mth6                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
14954         p_col_mth7                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
14955         p_col_mth8                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
14956         p_col_mth9                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
14957         p_col_mth10                   => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
14958         p_col_mth11                   => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
14959         p_col_mth12                   => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
14960         p_col_tot                     => null,
14961         p_action_information_id       => l_action_information_id,
14962         p_object_version_number       => l_object_version_number);
14963     --
14964       if g_debug
14965       and g_detail_debug = 'Y' then
14966         l_archive_step := 96;
14967       end if;
14968     --
14969       pay_jp_itwb_dml_pkg.update_sal_pay(
14970         p_assignment_action_id        => p_assignment_action_id,
14971         p_effective_date              => g_effective_date,
14972         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14973         p_category                    => 'PAY',
14974         p_col_mth1                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
14975         p_col_mth2                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
14976         p_col_mth3                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
14977         p_col_mth4                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
14978         p_col_mth5                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
14979         p_col_mth6                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
14980         p_col_mth7                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
14981         p_col_mth8                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
14982         p_col_mth9                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
14983         p_col_mth10                   => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
14984         p_col_mth11                   => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
14985         p_col_mth12                   => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
14986         p_col_tot                     => null,
14987         p_action_information_id       => l_action_information_id,
14988         p_object_version_number       => l_object_version_number);
14989     --
14990       if g_debug
14991       and g_detail_debug = 'Y' then
14992         l_archive_step := 97;
14993       end if;
14994     --
14995       pay_jp_itwb_dml_pkg.update_sal_pay(
14996         p_assignment_action_id        => p_assignment_action_id,
14997         p_effective_date              => g_effective_date,
14998         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
14999         p_category                    => 'HI',
15000         p_col_mth1                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
15001         p_col_mth2                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
15002         p_col_mth3                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
15003         p_col_mth4                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
15004         p_col_mth5                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
15005         p_col_mth6                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
15006         p_col_mth7                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
15007         p_col_mth8                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
15008         p_col_mth9                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
15009         p_col_mth10                   => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
15010         p_col_mth11                   => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
15011         p_col_mth12                   => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
15012         p_col_tot                     => null,
15013         p_action_information_id       => l_action_information_id,
15014         p_object_version_number       => l_object_version_number);
15015     --
15016       if g_debug
15017       and g_detail_debug = 'Y' then
15018         l_archive_step := 98;
15019       end if;
15020     --
15021       pay_jp_itwb_dml_pkg.update_sal_pay(
15022         p_assignment_action_id        => p_assignment_action_id,
15023         p_effective_date              => g_effective_date,
15024         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15025         p_category                    => 'CI',
15026         p_col_mth1                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
15027         p_col_mth2                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
15028         p_col_mth3                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
15029         p_col_mth4                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
15030         p_col_mth5                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
15031         p_col_mth6                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
15032         p_col_mth7                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
15033         p_col_mth8                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
15034         p_col_mth9                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
15035         p_col_mth10                   => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
15036         p_col_mth11                   => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
15037         p_col_mth12                   => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
15038         p_col_tot                     => null,
15039         p_action_information_id       => l_action_information_id,
15040         p_object_version_number       => l_object_version_number);
15041     --
15042       if g_debug
15043       and g_detail_debug = 'Y' then
15044         l_archive_step := 99;
15045       end if;
15046     --
15047       pay_jp_itwb_dml_pkg.update_sal_pay(
15048         p_assignment_action_id        => p_assignment_action_id,
15049         p_effective_date              => g_effective_date,
15050         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15051         p_category                    => 'WP',
15052         p_col_mth1                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
15053         p_col_mth2                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
15054         p_col_mth3                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
15055         p_col_mth4                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
15056         p_col_mth5                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
15057         p_col_mth6                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
15058         p_col_mth7                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
15059         p_col_mth8                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
15060         p_col_mth9                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
15061         p_col_mth10                   => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
15062         p_col_mth11                   => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
15063         p_col_mth12                   => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
15064         p_col_tot                     => null,
15065         p_action_information_id       => l_action_information_id,
15066         p_object_version_number       => l_object_version_number);
15067     --
15068       if g_debug
15069       and g_detail_debug = 'Y' then
15070         l_archive_step := 100;
15071       end if;
15072     --
15073       pay_jp_itwb_dml_pkg.update_sal_pay(
15074         p_assignment_action_id        => p_assignment_action_id,
15075         p_effective_date              => g_effective_date,
15076         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15077         p_category                    => 'WPF',
15078         p_col_mth1                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
15079         p_col_mth2                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
15080         p_col_mth3                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
15081         p_col_mth4                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
15082         p_col_mth5                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
15083         p_col_mth6                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
15084         p_col_mth7                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
15085         p_col_mth8                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
15086         p_col_mth9                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
15087         p_col_mth10                   => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
15088         p_col_mth11                   => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
15089         p_col_mth12                   => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
15090         p_col_tot                     => null,
15091         p_action_information_id       => l_action_information_id,
15092         p_object_version_number       => l_object_version_number);
15093     --
15094       if g_debug
15095       and g_detail_debug = 'Y' then
15096         l_archive_step := 101;
15097       end if;
15098     --
15099       pay_jp_itwb_dml_pkg.update_sal_pay(
15100         p_assignment_action_id        => p_assignment_action_id,
15101         p_effective_date              => g_effective_date,
15102         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15103         p_category                    => 'EI',
15104         p_col_mth1                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
15105         p_col_mth2                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
15106         p_col_mth3                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
15107         p_col_mth4                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
15108         p_col_mth5                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
15109         p_col_mth6                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
15110         p_col_mth7                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
15111         p_col_mth8                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
15112         p_col_mth9                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
15113         p_col_mth10                   => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
15114         p_col_mth11                   => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
15115         p_col_mth12                   => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
15116         p_col_tot                     => null,
15117         p_action_information_id       => l_action_information_id,
15118         p_object_version_number       => l_object_version_number);
15119     --
15120       if g_debug
15121       and g_detail_debug = 'Y' then
15122         l_archive_step := 102;
15123       end if;
15124     --
15125       pay_jp_itwb_dml_pkg.update_sal_pay(
15126         p_assignment_action_id        => p_assignment_action_id,
15127         p_effective_date              => g_effective_date,
15128         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15129         p_category                    => 'SI',
15130         p_col_mth1                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
15131         p_col_mth2                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
15132         p_col_mth3                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
15133         p_col_mth4                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
15134         p_col_mth5                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
15135         p_col_mth6                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
15136         p_col_mth7                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
15137         p_col_mth8                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
15138         p_col_mth9                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
15139         p_col_mth10                   => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
15140         p_col_mth11                   => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
15141         p_col_mth12                   => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
15142         p_col_tot                     => null,
15143         p_action_information_id       => l_action_information_id,
15144         p_object_version_number       => l_object_version_number);
15145     --
15146       if g_debug
15147       and g_detail_debug = 'Y' then
15148         l_archive_step := 103;
15149       end if;
15150     --
15151       pay_jp_itwb_dml_pkg.update_sal_pay(
15152         p_assignment_action_id        => p_assignment_action_id,
15153         p_effective_date              => g_effective_date,
15154         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15155         p_category                    => 'DCT_EARN',
15156         p_col_mth1                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
15157         p_col_mth2                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
15158         p_col_mth3                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
15159         p_col_mth4                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
15160         p_col_mth5                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
15161         p_col_mth6                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
15162         p_col_mth7                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
15163         p_col_mth8                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
15164         p_col_mth9                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
15165         p_col_mth10                   => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
15166         p_col_mth11                   => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
15167         p_col_mth12                   => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
15168         p_col_tot                     => null,
15169         p_action_information_id       => l_action_information_id,
15170         p_object_version_number       => l_object_version_number);
15171     --
15172       if g_debug
15173       and g_detail_debug = 'Y' then
15174         l_archive_step := 104;
15175       end if;
15176     --
15177       pay_jp_itwb_dml_pkg.update_sal_pay(
15178         p_assignment_action_id        => p_assignment_action_id,
15179         p_effective_date              => g_effective_date,
15180         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15181         p_category                    => 'DPT',
15182         p_col_mth1                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_pay_dpts,
15183         p_col_mth2                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_pay_dpts,
15184         p_col_mth3                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_pay_dpts,
15185         p_col_mth4                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_pay_dpts,
15186         p_col_mth5                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_pay_dpts,
15187         p_col_mth6                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_pay_dpts,
15188         p_col_mth7                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_pay_dpts,
15189         p_col_mth8                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_pay_dpts,
15190         p_col_mth9                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_pay_dpts,
15191         p_col_mth10                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_pay_dpts,
15192         p_col_mth11                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_pay_dpts,
15193         p_col_mth12                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_pay_dpts,
15194         p_col_tot                     => null,
15195         p_action_information_id       => l_action_information_id,
15196         p_object_version_number       => l_object_version_number);
15197     --
15198       if g_debug
15199       and g_detail_debug = 'Y' then
15200         l_archive_step := 105;
15201       end if;
15202     --
15203       pay_jp_itwb_dml_pkg.update_sal_pay(
15204         p_assignment_action_id        => p_assignment_action_id,
15205         p_effective_date              => g_effective_date,
15206         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15207         p_category                    => 'ITX',
15208         p_col_mth1                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
15209         p_col_mth2                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
15210         p_col_mth3                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
15211         p_col_mth4                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
15212         p_col_mth5                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
15213         p_col_mth6                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
15214         p_col_mth7                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
15215         p_col_mth8                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
15216         p_col_mth9                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
15217         p_col_mth10                   => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
15218         p_col_mth11                   => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
15219         p_col_mth12                   => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
15220         p_col_tot                     => null,
15221         p_action_information_id       => l_action_information_id,
15222         p_object_version_number       => l_object_version_number);
15223     --
15224       if g_debug
15225       and g_detail_debug = 'Y' then
15226         l_archive_step := 106;
15227       end if;
15228     --
15229       pay_jp_itwb_dml_pkg.update_sal_pay(
15230         p_assignment_action_id        => p_assignment_action_id,
15231         p_effective_date              => g_effective_date,
15232         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15233         p_category                    => 'YEA_ITX',
15234         p_col_mth1                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_pay_yea_itx,
15235         p_col_mth2                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_pay_yea_itx,
15236         p_col_mth3                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_pay_yea_itx,
15237         p_col_mth4                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_pay_yea_itx,
15238         p_col_mth5                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_pay_yea_itx,
15239         p_col_mth6                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_pay_yea_itx,
15240         p_col_mth7                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_pay_yea_itx,
15241         p_col_mth8                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_pay_yea_itx,
15242         p_col_mth9                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_pay_yea_itx,
15243         p_col_mth10                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_pay_yea_itx,
15244         p_col_mth11                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_pay_yea_itx,
15245         p_col_mth12                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_pay_yea_itx,
15246         p_col_tot                     => null,
15247         p_action_information_id       => l_action_information_id,
15248         p_object_version_number       => l_object_version_number);
15249     --
15250       if g_debug
15251       and g_detail_debug = 'Y' then
15252         l_archive_step := 107;
15253       end if;
15254     --
15255       pay_jp_itwb_dml_pkg.update_sal_pay(
15256         p_assignment_action_id        => p_assignment_action_id,
15257         p_effective_date              => g_effective_date,
15258         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15259         p_category                    => 'NET_ITX',
15260         p_col_mth1                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
15261         p_col_mth2                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
15262         p_col_mth3                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
15263         p_col_mth4                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
15264         p_col_mth5                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
15265         p_col_mth6                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
15266         p_col_mth7                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
15267         p_col_mth8                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
15268         p_col_mth9                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
15269         p_col_mth10                   => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
15270         p_col_mth11                   => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
15271         p_col_mth12                   => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
15272         p_col_tot                     => null,
15273         p_action_information_id       => l_action_information_id,
15274         p_object_version_number       => l_object_version_number);
15275     --
15276       if g_debug
15277       and g_detail_debug = 'Y' then
15278         l_archive_step := 108;
15279       end if;
15280     --
15281       pay_jp_itwb_dml_pkg.update_sal_pay(
15282         p_assignment_action_id        => p_assignment_action_id,
15283         p_effective_date              => g_effective_date,
15284         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15285         p_category                    => 'LTX',
15286         p_col_mth1                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
15287         p_col_mth2                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
15288         p_col_mth3                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
15289         p_col_mth4                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
15290         p_col_mth5                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
15291         p_col_mth6                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
15292         p_col_mth7                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
15293         p_col_mth8                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
15294         p_col_mth9                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
15295         p_col_mth10                   => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
15296         p_col_mth11                   => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
15297         p_col_mth12                   => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
15298         p_col_tot                     => null,
15299         p_action_information_id       => l_action_information_id,
15300         p_object_version_number       => l_object_version_number);
15301     --
15302       if g_debug
15303       and g_detail_debug = 'Y' then
15304         l_archive_step := 109;
15305       end if;
15306     --
15307       pay_jp_itwb_dml_pkg.update_sal_pay(
15308         p_assignment_action_id        => p_assignment_action_id,
15309         p_effective_date              => g_effective_date,
15310         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15311         p_category                    => 'LTX_LUMP',
15312         p_col_mth1                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
15313         p_col_mth2                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
15314         p_col_mth3                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
15315         p_col_mth4                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
15316         p_col_mth5                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
15317         p_col_mth6                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
15318         p_col_mth7                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
15319         p_col_mth8                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
15320         p_col_mth9                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
15321         p_col_mth10                   => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
15322         p_col_mth11                   => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
15323         p_col_mth12                   => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
15324         p_col_tot                     => null,
15325         p_action_information_id       => l_action_information_id,
15326         p_object_version_number       => l_object_version_number);
15327     --
15328       if g_debug
15329       and g_detail_debug = 'Y' then
15330         l_archive_step := 110;
15331       end if;
15332     --
15333       pay_jp_itwb_dml_pkg.update_sal_pay(
15334         p_assignment_action_id        => p_assignment_action_id,
15335         p_effective_date              => g_effective_date,
15336         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15337         p_category                    => 'DCT',
15338         p_col_mth1                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
15339         p_col_mth2                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
15340         p_col_mth3                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
15341         p_col_mth4                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
15342         p_col_mth5                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
15343         p_col_mth6                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
15344         p_col_mth7                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
15345         p_col_mth8                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
15346         p_col_mth9                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
15347         p_col_mth10                   => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
15348         p_col_mth11                   => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
15349         p_col_mth12                   => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
15350         p_col_tot                     => null,
15351         p_action_information_id       => l_action_information_id,
15352         p_object_version_number       => l_object_version_number);
15353     --
15354       if g_debug
15355       and g_detail_debug = 'Y' then
15356         l_archive_step := 111;
15357       end if;
15358     --
15359       pay_jp_itwb_dml_pkg.update_sal_pay(
15360         p_assignment_action_id        => p_assignment_action_id,
15361         p_effective_date              => g_effective_date,
15362         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15363         p_category                    => 'NET_PAY',
15364         p_col_mth1                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
15365         p_col_mth2                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
15366         p_col_mth3                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
15367         p_col_mth4                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
15368         p_col_mth5                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
15369         p_col_mth6                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
15370         p_col_mth7                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
15371         p_col_mth8                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
15372         p_col_mth9                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
15373         p_col_mth10                   => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
15374         p_col_mth11                   => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
15375         p_col_mth12                   => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
15376         p_col_tot                     => null,
15377         p_action_information_id       => l_action_information_id,
15378         p_object_version_number       => l_object_version_number);
15379     --
15380       if g_debug
15381       and g_detail_debug = 'Y' then
15382         l_archive_step := 112;
15383       end if;
15384     --
15385       pay_jp_itwb_dml_pkg.update_bon_act(
15386         p_assignment_action_id        => p_assignment_action_id,
15387         p_effective_date              => g_effective_date,
15388         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15389         p_category                    => 'ACT',
15390         p_col_cnt1                    => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt1),
15391         p_col_cnt2                    => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt2),
15392         p_col_cnt3                    => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt3),
15393         p_col_cnt4                    => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt4),
15394         p_col_cnt5                    => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt5),
15395         p_col_cnt6                    => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt6),
15396         p_col_cnt7                    => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt7),
15397         p_col_cnt8                    => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt8),
15398         p_col_cnt9                    => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt9),
15399         p_col_cnt10                   => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt10),
15400         p_col_cnt11                   => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt11),
15401         p_col_cnt12                   => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt12),
15402         p_col_cnt13                   => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt13),
15403         p_col_cnt14                   => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt14),
15404         p_col_cnt15                   => fnd_number.number_to_canonical(replace(to_char(sign(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15)),'0',null) * g_body_tbl(p_assignment_action_id).bon_act_act_cnt15),
15405         p_action_information_id       => l_action_information_id,
15406         p_object_version_number       => l_object_version_number);
15407     --
15408       if g_debug
15409       and g_detail_debug = 'Y' then
15410         l_archive_step := 113;
15411       end if;
15412     --
15413       pay_jp_itwb_dml_pkg.update_bon_act(
15414         p_assignment_action_id        => p_assignment_action_id,
15415         p_effective_date              => g_effective_date,
15416         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15417         p_category                    => 'TYPE',
15418         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_act_type,
15419         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_act_type,
15420         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_act_type,
15421         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_act_type,
15422         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_act_type,
15423         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_act_type,
15424         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_act_type,
15425         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_act_type,
15426         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_act_type,
15427         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_act_type,
15428         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_act_type,
15429         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_act_type,
15430         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_act_type,
15431         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_act_type,
15432         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_act_type,
15433         p_action_information_id       => l_action_information_id,
15434         p_object_version_number       => l_object_version_number);
15435     --
15436       if g_debug
15437       and g_detail_debug = 'Y' then
15438         l_archive_step := 114;
15439       end if;
15440     --
15441       pay_jp_itwb_dml_pkg.update_bon_act(
15442         p_assignment_action_id        => p_assignment_action_id,
15443         p_effective_date              => g_effective_date,
15444         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15445         p_category                    => 'EFD',
15446         p_col_cnt1                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_act_efd),
15447         p_col_cnt2                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_act_efd),
15448         p_col_cnt3                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_act_efd),
15449         p_col_cnt4                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_act_efd),
15450         p_col_cnt5                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_act_efd),
15451         p_col_cnt6                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_act_efd),
15452         p_col_cnt7                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_act_efd),
15453         p_col_cnt8                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_act_efd),
15454         p_col_cnt9                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_act_efd),
15455         p_col_cnt10                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_act_efd),
15456         p_col_cnt11                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_act_efd),
15457         p_col_cnt12                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_act_efd),
15458         p_col_cnt13                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_act_efd),
15459         p_col_cnt14                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_act_efd),
15460         p_col_cnt15                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_act_efd),
15461         p_action_information_id       => l_action_information_id,
15462         p_object_version_number       => l_object_version_number);
15463     --
15464       if g_debug
15465       and g_detail_debug = 'Y' then
15466         l_archive_step := 115;
15467       end if;
15468     --
15469       pay_jp_itwb_dml_pkg.update_bon_act(
15470         p_assignment_action_id        => p_assignment_action_id,
15471         p_effective_date              => g_effective_date,
15472         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15473         p_category                    => 'ERD',
15474         p_col_cnt1                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_act_erd),
15475         p_col_cnt2                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_act_erd),
15476         p_col_cnt3                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_act_erd),
15477         p_col_cnt4                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_act_erd),
15478         p_col_cnt5                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_act_erd),
15479         p_col_cnt6                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_act_erd),
15480         p_col_cnt7                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_act_erd),
15481         p_col_cnt8                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_act_erd),
15482         p_col_cnt9                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_act_erd),
15483         p_col_cnt10                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_act_erd),
15484         p_col_cnt11                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_act_erd),
15485         p_col_cnt12                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_act_erd),
15486         p_col_cnt13                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_act_erd),
15487         p_col_cnt14                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_act_erd),
15488         p_col_cnt15                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_act_erd),
15489         p_action_information_id       => l_action_information_id,
15490         p_object_version_number       => l_object_version_number);
15491     --
15492       if g_debug
15493       and g_detail_debug = 'Y' then
15494         l_archive_step := 116;
15495       end if;
15496     --
15497       pay_jp_itwb_dml_pkg.update_bon_act(
15498         p_assignment_action_id        => p_assignment_action_id,
15499         p_effective_date              => g_effective_date,
15500         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15501         p_category                    => 'PAY',
15502         p_col_cnt1                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_act_pay),
15503         p_col_cnt2                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_act_pay),
15504         p_col_cnt3                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_act_pay),
15505         p_col_cnt4                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_act_pay),
15506         p_col_cnt5                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_act_pay),
15507         p_col_cnt6                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_act_pay),
15508         p_col_cnt7                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_act_pay),
15509         p_col_cnt8                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_act_pay),
15510         p_col_cnt9                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_act_pay),
15511         p_col_cnt10                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_act_pay),
15512         p_col_cnt11                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_act_pay),
15513         p_col_cnt12                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_act_pay),
15514         p_col_cnt13                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_act_pay),
15515         p_col_cnt14                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_act_pay),
15516         p_col_cnt15                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_act_pay),
15517         p_action_information_id       => l_action_information_id,
15518         p_object_version_number       => l_object_version_number);
15519     --
15520       if g_debug
15521       and g_detail_debug = 'Y' then
15522         l_archive_step := 117;
15523       end if;
15524     --
15525       pay_jp_itwb_dml_pkg.update_bon_pay(
15526         p_assignment_action_id        => p_assignment_action_id,
15527         p_effective_date              => g_effective_date,
15528         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15529         p_category                    => 'TXBL',
15530         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_txbl,
15531         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_txbl,
15532         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_txbl,
15533         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_txbl,
15534         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_txbl,
15535         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_txbl,
15536         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_txbl,
15537         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_txbl,
15538         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_txbl,
15539         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_txbl,
15540         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_txbl,
15541         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_txbl,
15542         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_txbl,
15543         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_txbl,
15544         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_txbl,
15545         p_col_tot                     => null,
15546         p_action_information_id       => l_action_information_id,
15547         p_object_version_number       => l_object_version_number);
15548     --
15549       if g_debug
15550       and g_detail_debug = 'Y' then
15551         l_archive_step := 118;
15552       end if;
15553     --
15554       pay_jp_itwb_dml_pkg.update_bon_pay(
15555         p_assignment_action_id        => p_assignment_action_id,
15556         p_effective_date              => g_effective_date,
15557         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15558         p_category                    => 'NTXBL',
15559         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_ntxbl,
15560         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_ntxbl,
15561         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_ntxbl,
15562         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_ntxbl,
15563         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_ntxbl,
15564         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_ntxbl,
15565         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_ntxbl,
15566         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_ntxbl,
15567         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_ntxbl,
15568         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_ntxbl,
15569         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_ntxbl,
15570         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_ntxbl,
15571         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_ntxbl,
15572         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_ntxbl,
15573         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_ntxbl,
15574         p_col_tot                     => null,
15575         p_action_information_id       => l_action_information_id,
15576         p_object_version_number       => l_object_version_number);
15577     --
15578       if g_debug
15579       and g_detail_debug = 'Y' then
15580         l_archive_step := 119;
15581       end if;
15582     --
15583       pay_jp_itwb_dml_pkg.update_bon_pay(
15584         p_assignment_action_id        => p_assignment_action_id,
15585         p_effective_date              => g_effective_date,
15586         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15587         p_category                    => 'PAY',
15588         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_pay,
15589         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_pay,
15590         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_pay,
15591         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_pay,
15592         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_pay,
15593         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_pay,
15594         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_pay,
15595         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_pay,
15596         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_pay,
15597         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_pay,
15598         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_pay,
15599         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_pay,
15600         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_pay,
15601         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_pay,
15602         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_pay,
15603         p_col_tot                     => null,
15604         p_action_information_id       => l_action_information_id,
15605         p_object_version_number       => l_object_version_number);
15606     --
15607       if g_debug
15608       and g_detail_debug = 'Y' then
15609         l_archive_step := 120;
15610       end if;
15611     --
15612       pay_jp_itwb_dml_pkg.update_bon_pay(
15613         p_assignment_action_id        => p_assignment_action_id,
15614         p_effective_date              => g_effective_date,
15615         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15616         p_category                    => 'HI',
15617         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_hi,
15618         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_hi,
15619         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_hi,
15620         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_hi,
15621         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_hi,
15622         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_hi,
15623         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_hi,
15624         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_hi,
15625         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_hi,
15626         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_hi,
15627         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_hi,
15628         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_hi,
15629         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_hi,
15630         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_hi,
15631         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_hi,
15632         p_col_tot                     => null,
15633         p_action_information_id       => l_action_information_id,
15634         p_object_version_number       => l_object_version_number);
15635     --
15636       if g_debug
15637       and g_detail_debug = 'Y' then
15638         l_archive_step := 121;
15639       end if;
15640     --
15641       pay_jp_itwb_dml_pkg.update_bon_pay(
15642         p_assignment_action_id        => p_assignment_action_id,
15643         p_effective_date              => g_effective_date,
15644         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15645         p_category                    => 'CI',
15646         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_ci,
15647         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_ci,
15648         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_ci,
15649         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_ci,
15650         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_ci,
15651         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_ci,
15652         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_ci,
15653         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_ci,
15654         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_ci,
15655         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_ci,
15656         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_ci,
15657         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_ci,
15658         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_ci,
15659         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_ci,
15660         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_ci,
15661         p_col_tot                     => null,
15662         p_action_information_id       => l_action_information_id,
15663         p_object_version_number       => l_object_version_number);
15664     --
15665       if g_debug
15666       and g_detail_debug = 'Y' then
15667         l_archive_step := 122;
15668       end if;
15669     --
15670       pay_jp_itwb_dml_pkg.update_bon_pay(
15671         p_assignment_action_id        => p_assignment_action_id,
15672         p_effective_date              => g_effective_date,
15673         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15674         p_category                    => 'WP',
15675         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_wp,
15676         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_wp,
15677         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_wp,
15678         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_wp,
15679         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_wp,
15680         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_wp,
15681         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_wp,
15682         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_wp,
15683         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_wp,
15684         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_wp,
15685         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_wp,
15686         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_wp,
15687         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_wp,
15688         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_wp,
15689         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_wp,
15690         p_col_tot                     => null,
15691         p_action_information_id       => l_action_information_id,
15692         p_object_version_number       => l_object_version_number);
15693     --
15694       if g_debug
15695       and g_detail_debug = 'Y' then
15696         l_archive_step := 123;
15697       end if;
15698     --
15699       pay_jp_itwb_dml_pkg.update_bon_pay(
15700         p_assignment_action_id        => p_assignment_action_id,
15701         p_effective_date              => g_effective_date,
15702         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15703         p_category                    => 'WPF',
15704         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_wpf,
15705         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_wpf,
15706         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_wpf,
15707         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_wpf,
15708         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_wpf,
15709         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_wpf,
15710         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_wpf,
15711         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_wpf,
15712         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_wpf,
15713         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_wpf,
15714         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_wpf,
15715         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_wpf,
15716         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_wpf,
15717         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_wpf,
15718         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_wpf,
15719         p_col_tot                     => null,
15720         p_action_information_id       => l_action_information_id,
15721         p_object_version_number       => l_object_version_number);
15722     --
15723       if g_debug
15724       and g_detail_debug = 'Y' then
15725         l_archive_step := 124;
15726       end if;
15727     --
15728       pay_jp_itwb_dml_pkg.update_bon_pay(
15729         p_assignment_action_id        => p_assignment_action_id,
15730         p_effective_date              => g_effective_date,
15731         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15732         p_category                    => 'EI',
15733         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_ei,
15734         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_ei,
15735         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_ei,
15736         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_ei,
15737         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_ei,
15738         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_ei,
15739         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_ei,
15740         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_ei,
15741         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_ei,
15742         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_ei,
15743         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_ei,
15744         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_ei,
15745         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_ei,
15746         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_ei,
15747         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_ei,
15748         p_col_tot                     => null,
15749         p_action_information_id       => l_action_information_id,
15750         p_object_version_number       => l_object_version_number);
15751     --
15752       if g_debug
15753       and g_detail_debug = 'Y' then
15754         l_archive_step := 125;
15755       end if;
15756     --
15757       pay_jp_itwb_dml_pkg.update_bon_pay(
15758         p_assignment_action_id        => p_assignment_action_id,
15759         p_effective_date              => g_effective_date,
15760         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15761         p_category                    => 'SI',
15762         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_si,
15763         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_si,
15764         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_si,
15765         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_si,
15766         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_si,
15767         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_si,
15768         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_si,
15769         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_si,
15770         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_si,
15771         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_si,
15772         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_si,
15773         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_si,
15774         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_si,
15775         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_si,
15776         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_si,
15777         p_col_tot                     => null,
15778         p_action_information_id       => l_action_information_id,
15779         p_object_version_number       => l_object_version_number);
15780     --
15781       if g_debug
15782       and g_detail_debug = 'Y' then
15783         l_archive_step := 126;
15784       end if;
15785     --
15786       pay_jp_itwb_dml_pkg.update_bon_pay(
15787         p_assignment_action_id        => p_assignment_action_id,
15788         p_effective_date              => g_effective_date,
15789         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15790         p_category                    => 'DCT_EARN',
15791         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_dct_earn,
15792         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_dct_earn,
15793         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_dct_earn,
15794         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_dct_earn,
15795         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_dct_earn,
15796         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_dct_earn,
15797         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_dct_earn,
15798         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_dct_earn,
15799         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_dct_earn,
15800         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_dct_earn,
15801         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_dct_earn,
15802         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_dct_earn,
15803         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_dct_earn,
15804         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_dct_earn,
15805         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_dct_earn,
15806         p_col_tot                     => null,
15807         p_action_information_id       => l_action_information_id,
15808         p_object_version_number       => l_object_version_number);
15809     --
15810       if g_debug
15811       and g_detail_debug = 'Y' then
15812         l_archive_step := 127;
15813       end if;
15814     --
15815       pay_jp_itwb_dml_pkg.update_bon_pay(
15816         p_assignment_action_id        => p_assignment_action_id,
15817         p_effective_date              => g_effective_date,
15818         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15819         p_category                    => 'DPT',
15820         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_dpts,
15821         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_dpts,
15822         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_dpts,
15823         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_dpts,
15824         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_dpts,
15825         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_dpts,
15826         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_dpts,
15827         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_dpts,
15828         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_dpts,
15829         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_dpts,
15830         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_dpts,
15831         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_dpts,
15832         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_dpts,
15833         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_dpts,
15834         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_dpts,
15835         p_col_tot                     => null,
15836         p_action_information_id       => l_action_information_id,
15837         p_object_version_number       => l_object_version_number);
15838     --
15839       if g_debug
15840       and g_detail_debug = 'Y' then
15841         l_archive_step := 128;
15842       end if;
15843     --
15844       pay_jp_itwb_dml_pkg.update_bon_pay(
15845         p_assignment_action_id        => p_assignment_action_id,
15846         p_effective_date              => g_effective_date,
15847         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15848         p_category                    => 'ITX',
15849         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_itx,
15850         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_itx,
15851         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_itx,
15852         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_itx,
15853         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_itx,
15854         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_itx,
15855         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_itx,
15856         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_itx,
15857         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_itx,
15858         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_itx,
15859         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_itx,
15860         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_itx,
15861         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_itx,
15862         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_itx,
15863         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_itx,
15864         p_col_tot                     => null,
15865         p_action_information_id       => l_action_information_id,
15866         p_object_version_number       => l_object_version_number);
15867     --
15868       if g_debug
15869       and g_detail_debug = 'Y' then
15870         l_archive_step := 129;
15871       end if;
15872     --
15873       pay_jp_itwb_dml_pkg.update_bon_pay(
15874         p_assignment_action_id        => p_assignment_action_id,
15875         p_effective_date              => g_effective_date,
15876         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15877         p_category                    => 'ITX_RATE',
15878         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_itx_rate,
15879         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_itx_rate,
15880         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_itx_rate,
15881         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_itx_rate,
15882         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_itx_rate,
15883         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_itx_rate,
15884         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_itx_rate,
15885         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_itx_rate,
15886         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_itx_rate,
15887         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_itx_rate,
15888         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_itx_rate,
15889         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_itx_rate,
15890         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_itx_rate,
15891         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_itx_rate,
15892         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_itx_rate,
15893         p_col_tot                     => null,
15894         p_action_information_id       => l_action_information_id,
15895         p_object_version_number       => l_object_version_number);
15896     --
15897       if g_debug
15898       and g_detail_debug = 'Y' then
15899         l_archive_step := 130;
15900       end if;
15901     --
15902       pay_jp_itwb_dml_pkg.update_bon_pay(
15903         p_assignment_action_id        => p_assignment_action_id,
15904         p_effective_date              => g_effective_date,
15905         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15906         p_category                    => 'YEA_ITX',
15907         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_yea_itx,
15908         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_yea_itx,
15909         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_yea_itx,
15910         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_yea_itx,
15911         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_yea_itx,
15912         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_yea_itx,
15913         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_yea_itx,
15914         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_yea_itx,
15915         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_yea_itx,
15916         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_yea_itx,
15917         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_yea_itx,
15918         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_yea_itx,
15919         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_yea_itx,
15920         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_yea_itx,
15921         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_yea_itx,
15922         p_col_tot                     => null,
15923         p_action_information_id       => l_action_information_id,
15924         p_object_version_number       => l_object_version_number);
15925     --
15926       if g_debug
15927       and g_detail_debug = 'Y' then
15928         l_archive_step := 131;
15929       end if;
15930     --
15931       pay_jp_itwb_dml_pkg.update_bon_pay(
15932         p_assignment_action_id        => p_assignment_action_id,
15933         p_effective_date              => g_effective_date,
15934         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15935         p_category                    => 'NET_ITX',
15936         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_net_itx,
15937         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_net_itx,
15938         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_net_itx,
15939         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_net_itx,
15940         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_net_itx,
15941         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_net_itx,
15942         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_net_itx,
15943         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_net_itx,
15944         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_net_itx,
15945         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_net_itx,
15946         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_net_itx,
15947         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_net_itx,
15948         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_net_itx,
15949         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_net_itx,
15950         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_net_itx,
15951         p_col_tot                     => null,
15952         p_action_information_id       => l_action_information_id,
15953         p_object_version_number       => l_object_version_number);
15954     --
15955       if g_debug
15956       and g_detail_debug = 'Y' then
15957         l_archive_step := 132;
15958       end if;
15959     --
15960       pay_jp_itwb_dml_pkg.update_bon_pay(
15961         p_assignment_action_id        => p_assignment_action_id,
15962         p_effective_date              => g_effective_date,
15963         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15964         p_category                    => 'LTX_LUMP',
15965         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_ltx_lump,
15966         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_ltx_lump,
15967         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_ltx_lump,
15968         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_ltx_lump,
15969         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_ltx_lump,
15970         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_ltx_lump,
15971         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_ltx_lump,
15972         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_ltx_lump,
15973         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_ltx_lump,
15974         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_ltx_lump,
15975         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_ltx_lump,
15976         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_ltx_lump,
15977         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_ltx_lump,
15978         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_ltx_lump,
15979         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_ltx_lump,
15980         p_col_tot                     => null,
15981         p_action_information_id       => l_action_information_id,
15982         p_object_version_number       => l_object_version_number);
15983     --
15984       if g_debug
15985       and g_detail_debug = 'Y' then
15986         l_archive_step := 133;
15987       end if;
15988     --
15989       pay_jp_itwb_dml_pkg.update_bon_pay(
15990         p_assignment_action_id        => p_assignment_action_id,
15991         p_effective_date              => g_effective_date,
15992         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
15993         p_category                    => 'DCT',
15994         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_calc_dct,
15995         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_calc_dct,
15996         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_calc_dct,
15997         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_calc_dct,
15998         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_calc_dct,
15999         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_calc_dct,
16000         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_calc_dct,
16001         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_calc_dct,
16002         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_calc_dct,
16003         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_calc_dct,
16004         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_calc_dct,
16005         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_calc_dct,
16006         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_calc_dct,
16007         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_calc_dct,
16008         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_calc_dct,
16009         p_col_tot                     => null,
16010         p_action_information_id       => l_action_information_id,
16011         p_object_version_number       => l_object_version_number);
16012     --
16013       if g_debug
16014       and g_detail_debug = 'Y' then
16015         l_archive_step := 134;
16016       end if;
16017     --
16018       pay_jp_itwb_dml_pkg.update_bon_pay(
16019         p_assignment_action_id        => p_assignment_action_id,
16020         p_effective_date              => g_effective_date,
16021         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
16022         p_category                    => 'NET_PAY',
16023         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_net_pay,
16024         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_net_pay,
16025         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_net_pay,
16026         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_net_pay,
16027         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_net_pay,
16028         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_net_pay,
16029         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_net_pay,
16030         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_net_pay,
16031         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_net_pay,
16032         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_net_pay,
16033         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_net_pay,
16034         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_net_pay,
16035         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_net_pay,
16036         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_net_pay,
16037         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_net_pay,
16038         p_col_tot                     => null,
16039         p_action_information_id       => l_action_information_id,
16040         p_object_version_number       => l_object_version_number);
16041     --
16042       if g_debug
16043       and g_detail_debug = 'Y' then
16044         l_archive_step := 135;
16045       end if;
16046     --
16047       set_data_pay_col_tot(
16048         p_assignment_action_id => p_assignment_action_id);
16049     --
16050       if g_debug
16051       and g_detail_debug = 'Y' then
16052         l_archive_step := 136;
16053       end if;
16054     --
16055       pay_jp_itwb_dml_pkg.copy_pai_all_item(
16056         p_action_context_id           => p_assignment_action_id,
16057         p_effective_date              => g_effective_date,
16058         p_action_information_category => 'JP_ITWB_SAL_EARN',
16059         p_action_context_id_o         => l_arch_assignment_action_id_o);
16060       --
16061       if g_debug
16062       and g_detail_debug = 'Y' then
16063         l_archive_step := 137;
16064       end if;
16065       --
16066       pay_jp_itwb_dml_pkg.copy_pai_all_item(
16067         p_action_context_id           => p_assignment_action_id,
16068         p_effective_date              => g_effective_date,
16069         p_action_information_category => 'JP_ITWB_SAL_DCT',
16070         p_action_context_id_o         => l_arch_assignment_action_id_o);
16071       --
16072       if g_debug
16073       and g_detail_debug = 'Y' then
16074         l_archive_step := 138;
16075       end if;
16076       --
16077       pay_jp_itwb_dml_pkg.copy_pai_all_item(
16078         p_action_context_id           => p_assignment_action_id,
16079         p_effective_date              => g_effective_date,
16080         p_action_information_category => 'JP_ITWB_BON_EARN',
16081         p_action_context_id_o         => l_arch_assignment_action_id_o);
16082       --
16083       if g_debug
16084       and g_detail_debug = 'Y' then
16085         l_archive_step := 139;
16086       end if;
16087       --
16088       pay_jp_itwb_dml_pkg.copy_pai_all_item(
16089         p_action_context_id           => p_assignment_action_id,
16090         p_effective_date              => g_effective_date,
16091         p_action_information_category => 'JP_ITWB_BON_DCT',
16092         p_action_context_id_o         => l_arch_assignment_action_id_o);
16093       --
16094       if g_debug
16095       and g_detail_debug = 'Y' then
16096         l_archive_step := 140;
16097       end if;
16098       --
16099       pay_jp_itwb_dml_pkg.copy_pai_all_item(
16100         p_action_context_id           => p_assignment_action_id,
16101         p_effective_date              => g_effective_date,
16102         p_action_information_category => 'JP_ITWB_WRK',
16103         p_action_context_id_o         => l_arch_assignment_action_id_o);
16104       --
16105       if g_debug
16106       and g_detail_debug = 'Y' then
16107         l_archive_step := 141;
16108       end if;
16109     --
16110       if g_body_tbl(p_assignment_action_id).sal_act is not null then
16111       --
16112         l_data_sal_ass_pay_tbl := g_data_pay_tbl(p_assignment_action_id).sal_pay_tbl;
16113       --
16114       end if;
16115     --
16116       if g_debug
16117       and g_detail_debug = 'Y' then
16118         l_archive_step := 142;
16119       end if;
16120     --
16121       if g_body_tbl(p_assignment_action_id).bon_act is not null then
16122       --
16123         l_data_bon_ass_pay_tbl := g_data_pay_tbl(p_assignment_action_id).bon_pay_tbl;
16124       --
16125       end if;
16126     --
16127       if g_debug
16128       and g_detail_debug = 'Y' then
16129         l_archive_step := 143;
16130         hr_utility.trace('l_data_sal_ass_pay_tbl.count : '||to_char(l_data_sal_ass_pay_tbl.count));
16131         hr_utility.trace('l_data_bon_ass_pay_tbl.count : '||to_char(l_data_bon_ass_pay_tbl.count));
16132         hr_utility.trace('g_item_info_ind_tbl.count    : '||to_char(g_item_info_ind_tbl.count));
16133       end if;
16134     --
16135       l_sal_ern_tbl_mth1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_ern_tbl;
16136       l_sal_ern_tbl_mth2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_ern_tbl;
16137       l_sal_ern_tbl_mth3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_ern_tbl;
16138       l_sal_ern_tbl_mth4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_ern_tbl;
16139       l_sal_ern_tbl_mth5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_ern_tbl;
16140       l_sal_ern_tbl_mth6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_ern_tbl;
16141       l_sal_ern_tbl_mth7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_ern_tbl;
16142       l_sal_ern_tbl_mth8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_ern_tbl;
16143       l_sal_ern_tbl_mth9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_ern_tbl;
16144       l_sal_ern_tbl_mth10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_ern_tbl;
16145       l_sal_ern_tbl_mth11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_ern_tbl;
16146       l_sal_ern_tbl_mth12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_ern_tbl;
16147       --
16148       l_sal_dct_tbl_mth1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_dct_tbl;
16149       l_sal_dct_tbl_mth2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_dct_tbl;
16150       l_sal_dct_tbl_mth3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_dct_tbl;
16151       l_sal_dct_tbl_mth4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_dct_tbl;
16152       l_sal_dct_tbl_mth5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_dct_tbl;
16153       l_sal_dct_tbl_mth6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_dct_tbl;
16154       l_sal_dct_tbl_mth7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_dct_tbl;
16155       l_sal_dct_tbl_mth8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_dct_tbl;
16156       l_sal_dct_tbl_mth9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_dct_tbl;
16157       l_sal_dct_tbl_mth10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_dct_tbl;
16158       l_sal_dct_tbl_mth11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_dct_tbl;
16159       l_sal_dct_tbl_mth12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_dct_tbl;
16160       --
16161       l_bon_ern_tbl_cnt1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_ern_tbl;
16162       l_bon_ern_tbl_cnt2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_ern_tbl;
16163       l_bon_ern_tbl_cnt3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_ern_tbl;
16164       l_bon_ern_tbl_cnt4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_ern_tbl;
16165       l_bon_ern_tbl_cnt5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_ern_tbl;
16166       l_bon_ern_tbl_cnt6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_ern_tbl;
16167       l_bon_ern_tbl_cnt7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_ern_tbl;
16168       l_bon_ern_tbl_cnt8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_ern_tbl;
16169       l_bon_ern_tbl_cnt9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_ern_tbl;
16170       l_bon_ern_tbl_cnt10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_ern_tbl;
16171       l_bon_ern_tbl_cnt11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_ern_tbl;
16172       l_bon_ern_tbl_cnt12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_ern_tbl;
16173       l_bon_ern_tbl_cnt13 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_ern_tbl;
16174       l_bon_ern_tbl_cnt14 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_ern_tbl;
16175       l_bon_ern_tbl_cnt15 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_ern_tbl;
16176       --
16177       l_bon_dct_tbl_cnt1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_dct_tbl;
16178       l_bon_dct_tbl_cnt2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_dct_tbl;
16179       l_bon_dct_tbl_cnt3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_dct_tbl;
16180       l_bon_dct_tbl_cnt4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_dct_tbl;
16181       l_bon_dct_tbl_cnt5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_dct_tbl;
16182       l_bon_dct_tbl_cnt6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_dct_tbl;
16183       l_bon_dct_tbl_cnt7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_dct_tbl;
16184       l_bon_dct_tbl_cnt8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_dct_tbl;
16185       l_bon_dct_tbl_cnt9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_dct_tbl;
16186       l_bon_dct_tbl_cnt10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_dct_tbl;
16187       l_bon_dct_tbl_cnt11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_dct_tbl;
16188       l_bon_dct_tbl_cnt12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_dct_tbl;
16189       l_bon_dct_tbl_cnt13 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_dct_tbl;
16190       l_bon_dct_tbl_cnt14 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_dct_tbl;
16191       l_bon_dct_tbl_cnt15 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_dct_tbl;
16192       --
16193       l_wrk_tbl_mth1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).wrk_tbl;
16194       l_wrk_tbl_mth2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).wrk_tbl;
16195       l_wrk_tbl_mth3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).wrk_tbl;
16196       l_wrk_tbl_mth4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).wrk_tbl;
16197       l_wrk_tbl_mth5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).wrk_tbl;
16198       l_wrk_tbl_mth6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).wrk_tbl;
16199       l_wrk_tbl_mth7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).wrk_tbl;
16200       l_wrk_tbl_mth8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).wrk_tbl;
16201       l_wrk_tbl_mth9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).wrk_tbl;
16202       l_wrk_tbl_mth10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).wrk_tbl;
16203       l_wrk_tbl_mth11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).wrk_tbl;
16204       l_wrk_tbl_mth12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).wrk_tbl;
16205       --
16206       if g_debug
16207       and g_detail_debug = 'Y' then
16208         l_archive_step := 144;
16209         hr_utility.trace('l_sal_ern_tbl_mth1.count  : '||to_char(l_sal_ern_tbl_mth1.count));
16210         hr_utility.trace('l_sal_ern_tbl_mth2.count  : '||to_char(l_sal_ern_tbl_mth2.count));
16211         hr_utility.trace('l_sal_ern_tbl_mth3.count  : '||to_char(l_sal_ern_tbl_mth3.count));
16212         hr_utility.trace('l_sal_ern_tbl_mth4.count  : '||to_char(l_sal_ern_tbl_mth4.count));
16213         hr_utility.trace('l_sal_ern_tbl_mth5.count  : '||to_char(l_sal_ern_tbl_mth5.count));
16214         hr_utility.trace('l_sal_ern_tbl_mth6.count  : '||to_char(l_sal_ern_tbl_mth6.count));
16215         hr_utility.trace('l_sal_ern_tbl_mth7.count  : '||to_char(l_sal_ern_tbl_mth7.count));
16216         hr_utility.trace('l_sal_ern_tbl_mth8.count  : '||to_char(l_sal_ern_tbl_mth8.count));
16217         hr_utility.trace('l_sal_ern_tbl_mth9.count  : '||to_char(l_sal_ern_tbl_mth9.count));
16218         hr_utility.trace('l_sal_ern_tbl_mth10.count : '||to_char(l_sal_ern_tbl_mth10.count));
16219         hr_utility.trace('l_sal_ern_tbl_mth11.count : '||to_char(l_sal_ern_tbl_mth11.count));
16220         hr_utility.trace('l_sal_ern_tbl_mth12.count : '||to_char(l_sal_ern_tbl_mth12.count));
16221         hr_utility.trace('l_sal_dct_tbl_mth1.count  : '||to_char(l_sal_dct_tbl_mth1.count));
16222         hr_utility.trace('l_sal_dct_tbl_mth2.count  : '||to_char(l_sal_dct_tbl_mth2.count));
16223         hr_utility.trace('l_sal_dct_tbl_mth3.count  : '||to_char(l_sal_dct_tbl_mth3.count));
16224         hr_utility.trace('l_sal_dct_tbl_mth4.count  : '||to_char(l_sal_dct_tbl_mth4.count));
16225         hr_utility.trace('l_sal_dct_tbl_mth5.count  : '||to_char(l_sal_dct_tbl_mth5.count));
16226         hr_utility.trace('l_sal_dct_tbl_mth6.count  : '||to_char(l_sal_dct_tbl_mth6.count));
16227         hr_utility.trace('l_sal_dct_tbl_mth7.count  : '||to_char(l_sal_dct_tbl_mth7.count));
16228         hr_utility.trace('l_sal_dct_tbl_mth8.count  : '||to_char(l_sal_dct_tbl_mth8.count));
16229         hr_utility.trace('l_sal_dct_tbl_mth9.count  : '||to_char(l_sal_dct_tbl_mth9.count));
16230         hr_utility.trace('l_sal_dct_tbl_mth10.count : '||to_char(l_sal_dct_tbl_mth10.count));
16231         hr_utility.trace('l_sal_dct_tbl_mth11.count : '||to_char(l_sal_dct_tbl_mth11.count));
16232         hr_utility.trace('l_sal_dct_tbl_mth12.count : '||to_char(l_sal_dct_tbl_mth12.count));
16233         hr_utility.trace('l_bon_ern_tbl_cnt1.count  : '||to_char(l_bon_ern_tbl_cnt1.count));
16234         hr_utility.trace('l_bon_ern_tbl_cnt2.count  : '||to_char(l_bon_ern_tbl_cnt2.count));
16235         hr_utility.trace('l_bon_ern_tbl_cnt3.count  : '||to_char(l_bon_ern_tbl_cnt3.count));
16236         hr_utility.trace('l_bon_ern_tbl_cnt4.count  : '||to_char(l_bon_ern_tbl_cnt4.count));
16237         hr_utility.trace('l_bon_ern_tbl_cnt5.count  : '||to_char(l_bon_ern_tbl_cnt5.count));
16238         hr_utility.trace('l_bon_ern_tbl_cnt6.count  : '||to_char(l_bon_ern_tbl_cnt6.count));
16239         hr_utility.trace('l_bon_ern_tbl_cnt7.count  : '||to_char(l_bon_ern_tbl_cnt7.count));
16240         hr_utility.trace('l_bon_ern_tbl_cnt8.count  : '||to_char(l_bon_ern_tbl_cnt8.count));
16241         hr_utility.trace('l_bon_ern_tbl_cnt9.count  : '||to_char(l_bon_ern_tbl_cnt9.count));
16242         hr_utility.trace('l_bon_ern_tbl_cnt10.count : '||to_char(l_bon_ern_tbl_cnt10.count));
16243         hr_utility.trace('l_bon_ern_tbl_cnt11.count : '||to_char(l_bon_ern_tbl_cnt11.count));
16244         hr_utility.trace('l_bon_ern_tbl_cnt12.count : '||to_char(l_bon_ern_tbl_cnt12.count));
16245         hr_utility.trace('l_bon_ern_tbl_cnt13.count : '||to_char(l_bon_ern_tbl_cnt13.count));
16246         hr_utility.trace('l_bon_ern_tbl_cnt14.count : '||to_char(l_bon_ern_tbl_cnt14.count));
16247         hr_utility.trace('l_bon_ern_tbl_cnt15.count : '||to_char(l_bon_ern_tbl_cnt15.count));
16248         hr_utility.trace('l_bon_dct_tbl_cnt1.count  : '||to_char(l_bon_dct_tbl_cnt1.count));
16249         hr_utility.trace('l_bon_dct_tbl_cnt2.count  : '||to_char(l_bon_dct_tbl_cnt2.count));
16250         hr_utility.trace('l_bon_dct_tbl_cnt3.count  : '||to_char(l_bon_dct_tbl_cnt3.count));
16251         hr_utility.trace('l_bon_dct_tbl_cnt4.count  : '||to_char(l_bon_dct_tbl_cnt4.count));
16252         hr_utility.trace('l_bon_dct_tbl_cnt5.count  : '||to_char(l_bon_dct_tbl_cnt5.count));
16253         hr_utility.trace('l_bon_dct_tbl_cnt6.count  : '||to_char(l_bon_dct_tbl_cnt6.count));
16254         hr_utility.trace('l_bon_dct_tbl_cnt7.count  : '||to_char(l_bon_dct_tbl_cnt7.count));
16255         hr_utility.trace('l_bon_dct_tbl_cnt8.count  : '||to_char(l_bon_dct_tbl_cnt8.count));
16256         hr_utility.trace('l_bon_dct_tbl_cnt9.count  : '||to_char(l_bon_dct_tbl_cnt9.count));
16257         hr_utility.trace('l_bon_dct_tbl_cnt10.count : '||to_char(l_bon_dct_tbl_cnt10.count));
16258         hr_utility.trace('l_bon_dct_tbl_cnt11.count : '||to_char(l_bon_dct_tbl_cnt11.count));
16259         hr_utility.trace('l_bon_dct_tbl_cnt12.count : '||to_char(l_bon_dct_tbl_cnt12.count));
16260         hr_utility.trace('l_bon_dct_tbl_cnt13.count : '||to_char(l_bon_dct_tbl_cnt13.count));
16261         hr_utility.trace('l_bon_dct_tbl_cnt14.count : '||to_char(l_bon_dct_tbl_cnt14.count));
16262         hr_utility.trace('l_bon_dct_tbl_cnt15.count : '||to_char(l_bon_dct_tbl_cnt15.count));
16263         hr_utility.trace('l_wrk_tbl_mth1.count      : '||to_char(l_wrk_tbl_mth1.count));
16264         hr_utility.trace('l_wrk_tbl_mth2.count      : '||to_char(l_wrk_tbl_mth2.count));
16265         hr_utility.trace('l_wrk_tbl_mth3.count      : '||to_char(l_wrk_tbl_mth3.count));
16266         hr_utility.trace('l_wrk_tbl_mth4.count      : '||to_char(l_wrk_tbl_mth4.count));
16267         hr_utility.trace('l_wrk_tbl_mth5.count      : '||to_char(l_wrk_tbl_mth5.count));
16268         hr_utility.trace('l_wrk_tbl_mth6.count      : '||to_char(l_wrk_tbl_mth6.count));
16269         hr_utility.trace('l_wrk_tbl_mth7.count      : '||to_char(l_wrk_tbl_mth7.count));
16270         hr_utility.trace('l_wrk_tbl_mth8.count      : '||to_char(l_wrk_tbl_mth8.count));
16271         hr_utility.trace('l_wrk_tbl_mth9.count      : '||to_char(l_wrk_tbl_mth9.count));
16272         hr_utility.trace('l_wrk_tbl_mth10.count     : '||to_char(l_wrk_tbl_mth10.count));
16273         hr_utility.trace('l_wrk_tbl_mth11.count     : '||to_char(l_wrk_tbl_mth11.count));
16274         hr_utility.trace('l_wrk_tbl_mth12.count     : '||to_char(l_wrk_tbl_mth12.count));
16275       end if;
16276     --
16277       if l_data_sal_ass_pay_tbl.count > 0
16278       and g_item_info_ind_tbl.count > 0 then
16279       --
16280         if g_debug
16281         and g_detail_debug = 'Y' then
16282           l_archive_step := 145;
16283         end if;
16284       --
16285         for i in 0..l_data_sal_ass_pay_tbl.count - 1 loop
16286         --
16287           if g_debug
16288           and g_detail_debug = 'Y' then
16289             l_archive_step := 146;
16290           end if;
16291         --
16292           if g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_start is not null
16293           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_end is not null
16294           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_start <= g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_end then
16295           --
16296             for j in g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_start..g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_end loop
16297             --
16298               l_skip := false;
16299               if nvl(g_item_info_sal_ern_tbl(j).item_null_valid,'N') = 'Y' then
16300               --
16301                 if valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
16302                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
16303                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
16304                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
16305                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
16306                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
16307                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
16308                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
16309                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
16310                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
16311                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
16312                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y' then
16313                 --
16314                   l_skip := true;
16315                 --
16316                 end if;
16317               --
16318               end if;
16319             --
16320               if not l_skip then
16321               --
16322                 -- set col_tot later, set_data_item_col_tot
16323                 pay_jp_itwb_dml_pkg.update_sal_earn(
16324                   p_assignment_action_id        => p_assignment_action_id,
16325                   p_assignment_id               => p_assignment_id,
16326                   p_effective_date              => g_effective_date,
16327                   p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
16328                   p_item_pay_id                 => l_data_sal_ass_pay_tbl(i).payroll_id,
16329                   p_item_pay_ord                => l_data_sal_ass_pay_tbl(i).ord_num,
16330                   p_item_type                   => g_item_info_sal_ern_tbl(j).item_type,
16331                   p_item_id                     => g_item_info_sal_ern_tbl(j).item_id,
16332                   p_item_rep_seq                => g_item_info_sal_ern_tbl(j).item_rep_seq,
16333                   p_item_rep_name               => g_item_info_sal_ern_tbl(j).item_rep_name,
16334                   p_col_mth1                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_sal_ern_tbl(j).item_pk),
16335                   p_col_mth2                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_sal_ern_tbl(j).item_pk),
16336                   p_col_mth3                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_sal_ern_tbl(j).item_pk),
16337                   p_col_mth4                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_sal_ern_tbl(j).item_pk),
16338                   p_col_mth5                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_sal_ern_tbl(j).item_pk),
16339                   p_col_mth6                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_sal_ern_tbl(j).item_pk),
16340                   p_col_mth7                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_sal_ern_tbl(j).item_pk),
16341                   p_col_mth8                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_sal_ern_tbl(j).item_pk),
16342                   p_col_mth9                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_sal_ern_tbl(j).item_pk),
16343                   p_col_mth10                   => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_sal_ern_tbl(j).item_pk),
16344                   p_col_mth11                   => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_sal_ern_tbl(j).item_pk),
16345                   p_col_mth12                   => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_sal_ern_tbl(j).item_pk),
16346                   p_col_tot                     => null,
16347                   p_action_information_id       => l_action_information_id,
16348                   p_object_version_number       => l_object_version_number);
16349               --
16350               end if;
16351             --
16352             end loop;
16353           --
16354           end if;
16355         --
16356           if g_debug
16357           and g_detail_debug = 'Y' then
16358             l_archive_step := 147;
16359           end if;
16360         --
16361           if g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_start is not null
16362           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_end is not null
16363           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_start <= g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_end then
16364           --
16365             for k in g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_start..g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_end loop
16366             --
16367               l_skip := false;
16368               if nvl(g_item_info_sal_dct_tbl(k).item_null_valid,'N') = 'Y' then
16369               --
16370                 if valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
16371                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
16372                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
16373                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
16374                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
16375                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
16376                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
16377                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
16378                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
16379                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
16380                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
16381                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y' then
16382                 --
16383                   l_skip := true;
16384                 --
16385                 end if;
16386               --
16387               end if;
16388             --
16389               if not l_skip then
16390               --
16391                 pay_jp_itwb_dml_pkg.update_sal_dct(
16392                   p_assignment_action_id        => p_assignment_action_id,
16393                   p_assignment_id               => p_assignment_id,
16394                   p_effective_date              => g_effective_date,
16395                   p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
16396                   p_item_pay_id                 => l_data_sal_ass_pay_tbl(i).payroll_id,
16397                   p_item_pay_ord                => l_data_sal_ass_pay_tbl(i).ord_num,
16398                   p_item_type                   => g_item_info_sal_dct_tbl(k).item_type,
16399                   p_item_id                     => g_item_info_sal_dct_tbl(k).item_id,
16400                   p_item_rep_seq                => g_item_info_sal_dct_tbl(k).item_rep_seq,
16401                   p_item_rep_name               => g_item_info_sal_dct_tbl(k).item_rep_name,
16402                   p_col_mth1                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_sal_dct_tbl(k).item_pk),
16403                   p_col_mth2                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_sal_dct_tbl(k).item_pk),
16404                   p_col_mth3                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_sal_dct_tbl(k).item_pk),
16405                   p_col_mth4                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_sal_dct_tbl(k).item_pk),
16406                   p_col_mth5                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_sal_dct_tbl(k).item_pk),
16407                   p_col_mth6                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_sal_dct_tbl(k).item_pk),
16408                   p_col_mth7                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_sal_dct_tbl(k).item_pk),
16409                   p_col_mth8                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_sal_dct_tbl(k).item_pk),
16410                   p_col_mth9                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_sal_dct_tbl(k).item_pk),
16411                   p_col_mth10                   => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_sal_dct_tbl(k).item_pk),
16412                   p_col_mth11                   => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_sal_dct_tbl(k).item_pk),
16413                   p_col_mth12                   => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_sal_dct_tbl(k).item_pk),
16414                   p_col_tot                     => null,
16415                   p_action_information_id       => l_action_information_id,
16416                   p_object_version_number       => l_object_version_number);
16417               --
16418               end if;
16419             --
16420             end loop;
16421           --
16422           end if;
16423         --
16424           if g_debug
16425           and g_detail_debug = 'Y' then
16426             l_archive_step := 148;
16427           end if;
16428         --
16429           if g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_start is not null
16430           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_end is not null
16431           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_start <= g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_end then
16432           --
16433             for l in g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_start..g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_end loop
16434             --
16435               l_skip := false;
16436               if nvl(g_item_info_wrk_tbl(l).item_null_valid,'N') = 'Y' then
16437               --
16438                 if valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
16439                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
16440                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
16441                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
16442                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
16443                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
16444                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
16445                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
16446                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
16447                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
16448                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
16449                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_wrk_tbl(l).item_pk) = 'Y' then
16450                 --
16451                   l_skip := true;
16452                 --
16453                 end if;
16454               --
16455               end if;
16456             --
16457               if not l_skip then
16458               --
16459                 pay_jp_itwb_dml_pkg.update_wrk(
16460                   p_assignment_action_id        => p_assignment_action_id,
16461                   p_assignment_id               => p_assignment_id,
16462                   p_effective_date              => g_effective_date,
16463                   p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
16464                   p_item_pay_id                 => l_data_sal_ass_pay_tbl(i).payroll_id,
16465                   p_item_pay_ord                => l_data_sal_ass_pay_tbl(i).ord_num,
16466                   p_item_type                   => g_item_info_wrk_tbl(l).item_type,
16467                   p_item_id                     => g_item_info_wrk_tbl(l).item_id,
16468                   p_item_rep_seq                => g_item_info_wrk_tbl(l).item_rep_seq,
16469                   p_item_rep_name               => g_item_info_wrk_tbl(l).item_rep_name,
16470                   p_col_mth1                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_wrk_tbl(l).item_pk),
16471                   p_col_mth2                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_wrk_tbl(l).item_pk),
16472                   p_col_mth3                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_wrk_tbl(l).item_pk),
16473                   p_col_mth4                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_wrk_tbl(l).item_pk),
16474                   p_col_mth5                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_wrk_tbl(l).item_pk),
16475                   p_col_mth6                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_wrk_tbl(l).item_pk),
16476                   p_col_mth7                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_wrk_tbl(l).item_pk),
16477                   p_col_mth8                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_wrk_tbl(l).item_pk),
16478                   p_col_mth9                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_wrk_tbl(l).item_pk),
16479                   p_col_mth10                   => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_wrk_tbl(l).item_pk),
16480                   p_col_mth11                   => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_wrk_tbl(l).item_pk),
16481                   p_col_mth12                   => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_wrk_tbl(l).item_pk),
16482                   p_col_tot                     => null,
16483                   p_action_information_id       => l_action_information_id,
16484                   p_object_version_number       => l_object_version_number);
16485               --
16486               end if;
16487             --
16488             end loop;
16489           --
16490           end if;
16491         --
16492         end loop;
16493       --
16494         if g_debug
16495         and g_detail_debug = 'Y' then
16496           l_archive_step := 149;
16497         end if;
16498       --
16499         set_data_item_col_tot(
16500           p_assignment_action_id => p_assignment_action_id,
16501           p_type                 => 'SAL');
16502       --
16503         if g_debug
16504         and g_detail_debug = 'Y' then
16505           l_archive_step := 150;
16506         end if;
16507       --
16508       end if;
16509     --
16510       if g_debug
16511       and g_detail_debug = 'Y' then
16512         l_archive_step := 151;
16513       end if;
16514     --
16515       if l_data_bon_ass_pay_tbl.count > 0
16516       and g_item_info_ind_tbl.count > 0 then
16517       --
16518         if g_debug
16519         and g_detail_debug = 'Y' then
16520           l_archive_step := 152;
16521         end if;
16522       --
16523         for m in 0..l_data_bon_ass_pay_tbl.count - 1 loop
16524         --
16525           if g_debug
16526           and g_detail_debug = 'Y' then
16527             l_archive_step := 153;
16528           end if;
16529         --
16530           if g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_start is not null
16531           and g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_end is not null
16532           and g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_start <= g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_end then
16533           --
16534             for n in g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_start..g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_end loop
16535             --
16536               l_skip := false;
16537               if nvl(g_item_info_bon_ern_tbl(n).item_null_valid,'N') = 'Y' then
16538               --
16539                 if nvl(valid_null_val(l_bon_ern_tbl_cnt1,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16540                 and nvl(valid_null_val(l_bon_ern_tbl_cnt2,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16541                 and nvl(valid_null_val(l_bon_ern_tbl_cnt3,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16542                 and nvl(valid_null_val(l_bon_ern_tbl_cnt4,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16543                 and nvl(valid_null_val(l_bon_ern_tbl_cnt5,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16544                 and nvl(valid_null_val(l_bon_ern_tbl_cnt6,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16545                 and nvl(valid_null_val(l_bon_ern_tbl_cnt7,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16546                 and nvl(valid_null_val(l_bon_ern_tbl_cnt8,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16547                 and nvl(valid_null_val(l_bon_ern_tbl_cnt9,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16548                 and nvl(valid_null_val(l_bon_ern_tbl_cnt10,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16549                 and nvl(valid_null_val(l_bon_ern_tbl_cnt11,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16550                 and nvl(valid_null_val(l_bon_ern_tbl_cnt12,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16551                 and nvl(valid_null_val(l_bon_ern_tbl_cnt13,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16552                 and nvl(valid_null_val(l_bon_ern_tbl_cnt14,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
16553                 and nvl(valid_null_val(l_bon_ern_tbl_cnt15,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y' then
16554                 --
16555                   l_skip := true;
16556                 --
16557                 end if;
16558               --
16559               end if;
16560             --
16561               if not l_skip then
16562               --
16563                 pay_jp_itwb_dml_pkg.update_bon_earn(
16564                   p_assignment_action_id        => p_assignment_action_id,
16565                   p_assignment_id               => p_assignment_id,
16566                   p_effective_date              => g_effective_date,
16567                   p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
16568                   p_item_pay_id                 => l_data_bon_ass_pay_tbl(m).payroll_id,
16569                   p_item_pay_ord                => l_data_bon_ass_pay_tbl(m).ord_num,
16570                   p_item_type                   => g_item_info_bon_ern_tbl(n).item_type,
16571                   p_item_id                     => g_item_info_bon_ern_tbl(n).item_id,
16572                   p_item_rep_seq                => g_item_info_bon_ern_tbl(n).item_rep_seq,
16573                   p_item_rep_name               => g_item_info_bon_ern_tbl(n).item_rep_name,
16574                   p_col_cnt1                    => cnv_null_val(l_bon_ern_tbl_cnt1,g_item_info_bon_ern_tbl(n).item_pk),
16575                   p_col_cnt2                    => cnv_null_val(l_bon_ern_tbl_cnt2,g_item_info_bon_ern_tbl(n).item_pk),
16576                   p_col_cnt3                    => cnv_null_val(l_bon_ern_tbl_cnt3,g_item_info_bon_ern_tbl(n).item_pk),
16577                   p_col_cnt4                    => cnv_null_val(l_bon_ern_tbl_cnt4,g_item_info_bon_ern_tbl(n).item_pk),
16578                   p_col_cnt5                    => cnv_null_val(l_bon_ern_tbl_cnt5,g_item_info_bon_ern_tbl(n).item_pk),
16579                   p_col_cnt6                    => cnv_null_val(l_bon_ern_tbl_cnt6,g_item_info_bon_ern_tbl(n).item_pk),
16580                   p_col_cnt7                    => cnv_null_val(l_bon_ern_tbl_cnt7,g_item_info_bon_ern_tbl(n).item_pk),
16581                   p_col_cnt8                    => cnv_null_val(l_bon_ern_tbl_cnt8,g_item_info_bon_ern_tbl(n).item_pk),
16582                   p_col_cnt9                    => cnv_null_val(l_bon_ern_tbl_cnt9,g_item_info_bon_ern_tbl(n).item_pk),
16583                   p_col_cnt10                   => cnv_null_val(l_bon_ern_tbl_cnt10,g_item_info_bon_ern_tbl(n).item_pk),
16584                   p_col_cnt11                   => cnv_null_val(l_bon_ern_tbl_cnt11,g_item_info_bon_ern_tbl(n).item_pk),
16585                   p_col_cnt12                   => cnv_null_val(l_bon_ern_tbl_cnt12,g_item_info_bon_ern_tbl(n).item_pk),
16586                   p_col_cnt13                   => cnv_null_val(l_bon_ern_tbl_cnt13,g_item_info_bon_ern_tbl(n).item_pk),
16587                   p_col_cnt14                   => cnv_null_val(l_bon_ern_tbl_cnt14,g_item_info_bon_ern_tbl(n).item_pk),
16588                   p_col_cnt15                   => cnv_null_val(l_bon_ern_tbl_cnt15,g_item_info_bon_ern_tbl(n).item_pk),
16589                   p_col_tot                     => null,
16590                   p_action_information_id       => l_action_information_id,
16591                   p_object_version_number       => l_object_version_number);
16592               --
16593               end if;
16594             --
16595             end loop;
16596           --
16597           end if;
16598         --
16599           if g_debug
16600           and g_detail_debug = 'Y' then
16601             l_archive_step := 154;
16602           end if;
16603         --
16604           if g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_start is not null
16605           and g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_end is not null
16606           and g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_start <= g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_end then
16607           --
16608             for o in g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_start..g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_end loop
16609             --
16610               l_skip := false;
16611               if nvl(g_item_info_bon_dct_tbl(o).item_null_valid,'N') = 'Y' then
16612               --
16613                 if nvl(valid_null_val(l_bon_dct_tbl_cnt1,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16614                 and nvl(valid_null_val(l_bon_dct_tbl_cnt2,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16615                 and nvl(valid_null_val(l_bon_dct_tbl_cnt3,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16616                 and nvl(valid_null_val(l_bon_dct_tbl_cnt4,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16617                 and nvl(valid_null_val(l_bon_dct_tbl_cnt5,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16618                 and nvl(valid_null_val(l_bon_dct_tbl_cnt6,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16619                 and nvl(valid_null_val(l_bon_dct_tbl_cnt7,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16620                 and nvl(valid_null_val(l_bon_dct_tbl_cnt8,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16621                 and nvl(valid_null_val(l_bon_dct_tbl_cnt9,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16622                 and nvl(valid_null_val(l_bon_dct_tbl_cnt10,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16623                 and nvl(valid_null_val(l_bon_dct_tbl_cnt11,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16624                 and nvl(valid_null_val(l_bon_dct_tbl_cnt12,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16625                 and nvl(valid_null_val(l_bon_dct_tbl_cnt13,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16626                 and nvl(valid_null_val(l_bon_dct_tbl_cnt14,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
16627                 and nvl(valid_null_val(l_bon_dct_tbl_cnt15,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y' then
16628                 --
16629                   l_skip := true;
16630                 --
16631                 end if;
16632               --
16633               end if;
16634             --
16635               if not l_skip then
16636               --
16637                 pay_jp_itwb_dml_pkg.update_bon_dct(
16638                   p_assignment_action_id        => p_assignment_action_id,
16639                   p_assignment_id               => p_assignment_id,
16640                   p_effective_date              => g_effective_date,
16641                   p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
16642                   p_item_pay_id                 => l_data_bon_ass_pay_tbl(m).payroll_id,
16643                   p_item_pay_ord                => l_data_bon_ass_pay_tbl(m).ord_num,
16644                   p_item_type                   => g_item_info_bon_dct_tbl(o).item_type,
16645                   p_item_id                     => g_item_info_bon_dct_tbl(o).item_id,
16646                   p_item_rep_seq                => g_item_info_bon_dct_tbl(o).item_rep_seq,
16647                   p_item_rep_name               => g_item_info_bon_dct_tbl(o).item_rep_name,
16648                   p_col_cnt1                    => cnv_null_val(l_bon_dct_tbl_cnt1,g_item_info_bon_dct_tbl(o).item_pk),
16649                   p_col_cnt2                    => cnv_null_val(l_bon_dct_tbl_cnt2,g_item_info_bon_dct_tbl(o).item_pk),
16650                   p_col_cnt3                    => cnv_null_val(l_bon_dct_tbl_cnt3,g_item_info_bon_dct_tbl(o).item_pk),
16651                   p_col_cnt4                    => cnv_null_val(l_bon_dct_tbl_cnt4,g_item_info_bon_dct_tbl(o).item_pk),
16652                   p_col_cnt5                    => cnv_null_val(l_bon_dct_tbl_cnt5,g_item_info_bon_dct_tbl(o).item_pk),
16653                   p_col_cnt6                    => cnv_null_val(l_bon_dct_tbl_cnt6,g_item_info_bon_dct_tbl(o).item_pk),
16654                   p_col_cnt7                    => cnv_null_val(l_bon_dct_tbl_cnt7,g_item_info_bon_dct_tbl(o).item_pk),
16655                   p_col_cnt8                    => cnv_null_val(l_bon_dct_tbl_cnt8,g_item_info_bon_dct_tbl(o).item_pk),
16656                   p_col_cnt9                    => cnv_null_val(l_bon_dct_tbl_cnt9,g_item_info_bon_dct_tbl(o).item_pk),
16657                   p_col_cnt10                   => cnv_null_val(l_bon_dct_tbl_cnt10,g_item_info_bon_dct_tbl(o).item_pk),
16658                   p_col_cnt11                   => cnv_null_val(l_bon_dct_tbl_cnt11,g_item_info_bon_dct_tbl(o).item_pk),
16659                   p_col_cnt12                   => cnv_null_val(l_bon_dct_tbl_cnt12,g_item_info_bon_dct_tbl(o).item_pk),
16660                   p_col_cnt13                   => cnv_null_val(l_bon_dct_tbl_cnt13,g_item_info_bon_dct_tbl(o).item_pk),
16661                   p_col_cnt14                   => cnv_null_val(l_bon_dct_tbl_cnt14,g_item_info_bon_dct_tbl(o).item_pk),
16662                   p_col_cnt15                   => cnv_null_val(l_bon_dct_tbl_cnt15,g_item_info_bon_dct_tbl(o).item_pk),
16663                   p_col_tot                     => null,
16664                   p_action_information_id       => l_action_information_id,
16665                   p_object_version_number       => l_object_version_number);
16666               --
16667               end if;
16668             --
16669             end loop;
16670           --
16671           end if;
16672         --
16673           if g_debug
16674           and g_detail_debug = 'Y' then
16675             l_archive_step := 155;
16676           end if;
16677         --
16678         end loop;
16679       --
16680         if g_debug
16681         and g_detail_debug = 'Y' then
16682           l_archive_step := 156;
16683         end if;
16684       --
16685         set_data_item_col_tot(
16686           p_assignment_action_id => p_assignment_action_id,
16687           p_type                 => 'BON');
16688       --
16689         if g_debug
16690         and g_detail_debug = 'Y' then
16691           l_archive_step := 157;
16692         end if;
16693       --
16694       end if;
16695     --
16696       if g_debug
16697       and g_detail_debug = 'Y' then
16698         l_archive_step := 158;
16699       end if;
16700     --
16701       if nvl(g_body_tbl(p_assignment_action_id).pjob_cnt,0) > 0 then
16702       --
16703         if g_debug
16704         and g_detail_debug = 'Y' then
16705           l_archive_step := 159;
16706         end if;
16707       --
16708         l_pjob_copy := 'N';
16709       --
16710         for p in 1..15 loop
16711         --
16712           l_pjob_rec_ind := null;
16713           l_action_information_id := null;
16714           l_object_version_number := null;
16715         --
16716           if p = 1 then
16717           --
16718             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind1;
16719           --
16720           elsif p = 2 then
16721           --
16722             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind2;
16723           --
16724           elsif p = 3 then
16725           --
16726             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind3;
16727           --
16728           elsif p = 4 then
16729           --
16730             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind4;
16731           --
16732           elsif p = 5 then
16733           --
16734             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind5;
16735           --
16736           elsif p = 6 then
16737           --
16738             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind6;
16739           --
16740           elsif p = 7 then
16741           --
16742             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind7;
16743           --
16744           elsif p = 8 then
16745           --
16746             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind8;
16747           --
16748           elsif p = 9 then
16749           --
16750             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind9;
16751           --
16752           elsif p = 10 then
16753           --
16754             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind10;
16755           --
16756           elsif p = 11 then
16757           --
16758             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind11;
16759           --
16760           elsif p = 12 then
16761           --
16762             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind12;
16763           --
16764           elsif p = 13 then
16765           --
16766             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind13;
16767           --
16768           elsif p = 14 then
16769           --
16770             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind14;
16771           --
16772           elsif p = 15 then
16773           --
16774             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind15;
16775           --
16776           end if;
16777         --
16778           if l_pjob_rec_ind is not null then
16779           --
16780             -- update can be available for case when month is same
16781             pay_jp_itwb_dml_pkg.update_pjob(
16782               p_assignment_action_id        => p_assignment_action_id,
16783               p_assignment_id               => p_assignment_id,
16784               p_effective_date              => g_effective_date,
16785               p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
16786               p_proc_assignment_action_id   => l_proc_assignment_action_id,
16787               p_proc_assact_date_o          => l_proc_assact_date_o,
16788               p_term_date                   => g_data_pjob_tbl(l_pjob_rec_ind).term_date,
16789               p_employer_name               => g_data_pjob_tbl(l_pjob_rec_ind).employer_name,
16790               p_employer_name_kana          => g_data_pjob_tbl(l_pjob_rec_ind).employer_name_kana,
16791               p_employer_address            => g_data_pjob_tbl(l_pjob_rec_ind).employer_address,
16792               p_employer_address_kana       => g_data_pjob_tbl(l_pjob_rec_ind).employer_address_kana,
16793               p_txbl_inc                    => g_data_pjob_tbl(l_pjob_rec_ind).txbl_inc,
16794               p_si_prem                     => g_data_pjob_tbl(l_pjob_rec_ind).si_prem,
16795               p_mutual_aid_prem             => g_data_pjob_tbl(l_pjob_rec_ind).mutual_aid_prem,
16796               p_itax                        => g_data_pjob_tbl(l_pjob_rec_ind).itax,
16797               p_action_information_id       => l_action_information_id,
16798               p_object_version_number       => l_object_version_number);
16799           --
16800           end if;
16801         --
16802         end loop;
16803       --
16804       else
16805       --
16806         -- copy action once for multiple loop when month is different, no l_action_information_id by update_pjob
16807         pay_jp_itwb_dml_pkg.copy_pjob(
16808           p_assignment_action_id        => p_assignment_action_id,
16809           p_effective_date              => g_effective_date,
16810           p_arch_assignment_action_id_o => l_arch_assignment_action_id_o);
16811       --
16812       end if;
16813     --
16814       if g_debug
16815       and g_detail_debug = 'Y' then
16816         l_archive_step := 160;
16817       end if;
16818     --
16819       -- update can be available for case when month is same
16820       -- or g_body_tbl(p_assignment_action_id).yea_act is not null
16821       if g_body_tbl(p_assignment_action_id).yea_act is not null
16822       or to_char(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_date_o,'MM') = to_char(g_effective_date,'MM')
16823       or nvl(g_upd_force,'N') = 'Y' then
16824       --
16825         pay_jp_itwb_dml_pkg.update_dep(
16826           p_assignment_action_id        => p_assignment_action_id,
16827           p_effective_date              => g_effective_date,
16828           p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
16829           p_proc_assignment_action_id   => l_proc_assignment_action_id,
16830           p_dep_itax_type               => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_itx_type,
16831           p_declare_flag                => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_declare_flag,
16832           p_spouse_type                 => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_spouse_type,
16833           p_spouse_flag                 => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_spouse_flag,
16834           p_dep_spouse                  => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_gen_spouse_flag,
16835           p_aged_dep_spouse             => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_elder_spouse_flag,
16836           p_ord_dep_num                 => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_dep,
16837           p_sp_dep_num                  => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_specific_dep,
16838           p_aged_parent_dep_lt_num      => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_elder_parent_lt,
16839           p_aged_dep_num                => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_elder_dep,
16840           p_ord_disable_num             => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_gen_disabled,
16841           p_sp_disable_num              => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_sev_disabled,
16842           p_sp_disable_lt_num           => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_sev_disabled_lt,
16843           p_disable_type                => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_disable_type,
16844           p_widow_type                  => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_widow_type,
16845           p_working_student_type        => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_working_student_type,
16846           p_otsu_spouse_dep_num         => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_otsu_dep,
16847           p_non_res_flag                => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_nres_flag,
16848           p_action_information_id       => l_action_information_id,
16849           p_object_version_number       => l_object_version_number);
16850       --
16851       else
16852       --
16853         pay_jp_itwb_dml_pkg.copy_pai(
16854           p_assignment_action_id,
16855           g_effective_date,
16856           l_arch_assignment_action_id_o,
16857           'AAP',
16858           'JP_ITWB_DEP',
16859           l_action_information_id,
16860           l_object_version_number);
16861       --
16862       end if;
16863     --
16864       if g_debug
16865       and g_detail_debug = 'Y' then
16866         l_archive_step := 161;
16867       end if;
16868     --
16869       -- update can be available for case when month is same
16870       pay_jp_itwb_dml_pkg.update_yea_act(
16871         p_assignment_action_id        => p_assignment_action_id,
16872         p_effective_date              => g_effective_date,
16873         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
16874         p_proc_assignment_action_id   => l_proc_assignment_action_id,
16875         p_proc_assact_date_o          => l_proc_assact_date_o,
16876         p_act                         => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_id,
16877         p_efd                         => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_efd,
16878         p_erd                         => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_erd,
16879         p_pay                         => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_pay,
16880         p_yea_type                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_type,
16881         p_yea_flag                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_include_flag,
16882         p_action_information_id       => l_action_information_id,
16883         p_object_version_number       => l_object_version_number);
16884     --
16885       if g_debug
16886       and g_detail_debug = 'Y' then
16887         l_archive_step := 162;
16888       end if;
16889     --
16890       pay_jp_itwb_dml_pkg.update_yea_pay(
16891         p_assignment_action_id        => p_assignment_action_id,
16892         p_effective_date              => g_effective_date,
16893         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
16894         p_proc_assignment_action_id   => l_proc_assignment_action_id,
16895         p_proc_assact_date_o          => l_proc_assact_date_o,
16896         p_sal_txbl_mon                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_sal_txbl_mon,
16897         p_sal_txbl_kind               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_sal_txbl_kind,
16898         p_sal_txbl                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_sal_txbl,
16899         p_bon_txbl_mon                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_txbl_mon,
16900         p_bon_txbl_kind               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_txbl_kind,
16901         p_bon_txbl                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_txbl,
16902         p_spb_txbl_mon                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_spb_txbl_mon,
16903         p_spb_txbl_kind               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_spb_txbl_kind,
16904         p_spb_txbl                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_spb_txbl,
16905         p_bon_txbl_tot                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_txbl_calc,
16906         p_txbl                        => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_txbl,
16907         p_sal_itx                     => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_sal_itx,
16908         p_bon_itx                     => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_itx,
16909         p_spb_itx                     => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_spb_itx,
16910         p_bon_itx_tot                 => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_itx_calc,
16911         p_withhold_itx                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_withhold_itx_calc,
16912         p_action_information_id       => l_action_information_id,
16913         p_object_version_number       => l_object_version_number);
16914     --
16915       if g_debug
16916       and g_detail_debug = 'Y' then
16917         l_archive_step := 163;
16918       end if;
16919     --
16920       pay_jp_itwb_dml_pkg.update_yea_dct(
16921         p_assignment_action_id        => p_assignment_action_id,
16922         p_effective_date              => g_effective_date,
16923         p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
16924         p_proc_assignment_action_id   => l_proc_assignment_action_id,
16925         p_proc_assact_date_o          => l_proc_assact_date_o,
16926         p_sal_dct_si_prem              => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sal_dct_si_prem_calc,
16927         p_dec_si_prem                  => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_dec_si_prem,
16928         p_dec_small_comp_mut_aid_prem  => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_dec_sc_mut_prem,
16929         p_life_ins_prem_exm            => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_life_ins_prem_exm,
16930         p_earthquake_ins_prem_exm      => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_eq_ins_prem_exm,
16931         p_spouse_sp_exm                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_spouse_sp_exm,
16932         p_basic_exm                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_basic_exm,
16933         p_gen_spouse_exm               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_gen_spouse_exm,
16934         p_elder_spouse_exm             => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_elder_spouse_exm,
16935         p_gen_dep_exm                  => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_gen_dep_exm,
16936         p_specific_dep_exm             => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_specific_dep_exm,
16937         p_junior_dep_exm               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_junior_dep_exm,
16938         p_elder_dep_exm                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_elder_dep_exm,
16939         p_elder_parent_lt_exm          => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_elder_parent_lt_exm,
16940         p_gen_disabled_exm             => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_gen_disabled_exm,
16941         p_sev_disabled_exm             => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sev_disabled_exm,
16942         p_sev_disabled_lt_exm          => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sev_disabled_lt_exm,
16943         p_elder_exm                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_elder_exm,
16944         p_widow_exm                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_widow_exm,
16945         p_sp_widow_exm                 => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sp_widow_exm,
16946         p_working_student_exm          => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_working_student_exm,
16947         p_dep_exm                      => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_dep_exm_calc,
16948         p_spouse_income                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_spouse_income,
16949         p_individual_pension_prem      => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_ind_pension_prem,
16950         p_long_term_nonlife_ins_prem   => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_lt_nonlife_ins_prem,
16951         p_small_comp_mut_aid_prem      => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sc_mut_prem_calc,
16952         p_national_pension_prem        => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_national_pension_prem,
16953         p_income_exm                   => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_income_exm,
16954         p_action_information_id        => l_action_information_id,
16955         p_object_version_number        => l_object_version_number);
16956     --
16957       if g_debug
16958       and g_detail_debug = 'Y' then
16959         l_archive_step := 164;
16960       end if;
16961     --
16962       pay_jp_itwb_dml_pkg.update_yea_tax(
16963         p_assignment_action_id           => p_assignment_action_id,
16964         p_effective_date                 => g_effective_date,
16965         p_arch_assignment_action_id_o    => l_arch_assignment_action_id_o,
16966         p_proc_assignment_action_id      => l_proc_assignment_action_id,
16967         p_proc_assact_date_o          => l_proc_assact_date_o,
16968         p_amt_aft_emp_inc_dct            => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_amt_aft_emp_inc_dct,
16969         p_net_txbl_income                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_net_txbl_income,
16970         p_annual_tax                     => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_annual_tax,
16971         p_act_housing_loan_tax_credit    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_act_housing_loan,
16972         p_yea_annual_tax                 => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_yea_annual_tax,
16973 		p_yea_income_tax                 => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_yea_income_tax,
16974         p_yea_tax_pay                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_yea_tax_pay,
16975         p_action_information_id          => l_action_information_id,
16976         p_object_version_number          => l_object_version_number);
16977     --
16978       if g_debug
16979       and g_detail_debug = 'Y' then
16980         l_archive_step := 165;
16981       end if;
16982     --
16983       if g_org_cust_proc is not null
16984       and (to_char(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_date_o,'MM') = to_char(g_effective_date,'MM')
16985           or nvl(g_upd_force,'N') = 'Y') then
16986       --
16987         pay_jp_itwb_dml_pkg.update_emp_cust(
16988           p_assignment_action_id        => p_assignment_action_id,
16989           p_assignment_id               => p_assignment_id,
16990           p_effective_date              => g_effective_date,
16991           p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
16992           p_data_type                   => 'T',
16993           p_information1                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information1,
16994           p_information2                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information2,
16995           p_information3                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information3,
16996           p_information4                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information4,
16997           p_information5                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information5,
16998           p_information6                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information6,
16999           p_information7                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information7,
17000           p_information8                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information8,
17001           p_information9                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information9,
17002           p_information10               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information10,
17003           p_information11               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information11,
17004           p_information12               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information12,
17005           p_information13               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information13,
17006           p_information14               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information14,
17007           p_information15               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information15,
17008           p_information16               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information16,
17009           p_information17               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information17,
17010           p_information18               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information18,
17011           p_information19               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information19,
17012           p_information20               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information20,
17013           p_information21               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information21,
17014           p_information22               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information22,
17015           p_information23               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information23,
17016           p_information24               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information24,
17017           p_information25               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information25,
17018           p_action_information_id       => l_action_information_id,
17019           p_object_version_number       => l_object_version_number);
17020       --
17021         if g_debug
17022         and g_detail_debug = 'Y' then
17023           l_archive_step := 166;
17024         end if;
17025       --
17026         pay_jp_itwb_dml_pkg.update_emp_cust(
17027           p_assignment_action_id        => p_assignment_action_id,
17028           p_assignment_id               => p_assignment_id,
17029           p_effective_date              => g_effective_date,
17030           p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
17031           p_data_type                   => 'D',
17032           p_information1                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information1,
17033           p_information2                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information2,
17034           p_information3                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information3,
17035           p_information4                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information4,
17036           p_information5                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information5,
17037           p_information6                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information6,
17038           p_information7                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information7,
17039           p_information8                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information8,
17040           p_information9                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information9,
17041           p_information10               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information10,
17042           p_information11               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information11,
17043           p_information12               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information12,
17044           p_information13               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information13,
17045           p_information14               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information14,
17046           p_information15               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information15,
17047           p_information16               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information16,
17048           p_information17               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information17,
17049           p_information18               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information18,
17050           p_information19               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information19,
17051           p_information20               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information20,
17052           p_information21               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information21,
17053           p_information22               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information22,
17054           p_information23               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information23,
17055           p_information24               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information24,
17056           p_information25               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information25,
17057           p_action_information_id       => l_action_information_id,
17058           p_object_version_number       => l_object_version_number);
17059       --
17060         if g_debug
17061         and g_detail_debug = 'Y' then
17062           l_archive_step := 167;
17063         end if;
17064       --
17065         pay_jp_itwb_dml_pkg.update_emp_cust(
17066           p_assignment_action_id        => p_assignment_action_id,
17067           p_assignment_id               => p_assignment_id,
17068           p_effective_date              => g_effective_date,
17069           p_arch_assignment_action_id_o => l_arch_assignment_action_id_o,
17070           p_data_type                   => 'N',
17071           p_information1                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information1,
17072           p_information2                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information2,
17073           p_information3                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information3,
17074           p_information4                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information4,
17075           p_information5                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information5,
17076           p_information6                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information6,
17077           p_information7                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information7,
17078           p_information8                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information8,
17079           p_information9                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information9,
17080           p_information10               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information10,
17081           p_information11               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information11,
17082           p_information12               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information12,
17083           p_information13               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information13,
17084           p_information14               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information14,
17085           p_information15               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information15,
17086           p_information16               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information16,
17087           p_information17               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information17,
17088           p_information18               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information18,
17089           p_information19               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information19,
17090           p_information20               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information20,
17091           p_information21               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information21,
17092           p_information22               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information22,
17093           p_information23               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information23,
17094           p_information24               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information24,
17095           p_information25               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information25,
17096           p_action_information_id       => l_action_information_id,
17097           p_object_version_number       => l_object_version_number);
17098       --
17099       else
17100       --
17101         pay_jp_itwb_dml_pkg.copy_pai_type(
17102           p_assignment_action_id,
17103           g_effective_date,
17104           l_arch_assignment_action_id_o,
17105           'AAP',
17106           'JP_ITWB_EMP_CUST',
17107           'T',
17108           l_action_information_id,
17109           l_object_version_number);
17110       --
17111         pay_jp_itwb_dml_pkg.copy_pai_type(
17112           p_assignment_action_id,
17113           g_effective_date,
17114           l_arch_assignment_action_id_o,
17115           'AAP',
17116           'JP_ITWB_EMP_CUST',
17117           'D',
17118           l_action_information_id,
17119           l_object_version_number);
17120       --
17121         pay_jp_itwb_dml_pkg.copy_pai_type(
17122           p_assignment_action_id,
17123           g_effective_date,
17124           l_arch_assignment_action_id_o,
17125           'AAP',
17126           'JP_ITWB_EMP_CUST',
17127           'N',
17128           l_action_information_id,
17129           l_object_version_number);
17130       --
17131       end if;
17132     --
17133       if g_debug
17134       and g_detail_debug = 'Y' then
17135         l_archive_step := 168;
17136       end if;
17137     --
17138     -- -----------------------------------
17139     -- RENEW, ADD, UPDATE (no latest assact)
17140     -- -----------------------------------
17141     else
17142     --
17143       if g_debug
17144       and g_detail_debug = 'Y' then
17145         l_archive_step := 169;
17146         hr_utility.set_location(l_proc,60);
17147         hr_utility.trace('RENEW mode or no latest assact in ADD mode');
17148       end if;
17149     --
17150       pay_jp_itwb_dml_pkg.create_assact(
17151         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17152         p_assignment_action_id        => p_assignment_action_id,
17153         p_action_context_type         => 'AAP',
17154         p_assignment_id               => p_assignment_id,
17155         p_effective_date              => g_effective_date,
17156         p_action_information_category => 'JP_ITWB_ASSACT',
17157         p_status                      => g_arch_option,
17158         p_proc_assignment_action_id   => l_proc_assignment_action_id,
17159         p_organization_id             => g_body_tbl(p_assignment_action_id).assact_organization_id,
17160         p_job_id                      => g_body_tbl(p_assignment_action_id).assact_job_id,
17161         p_payroll_id                  => g_body_tbl(p_assignment_action_id).assact_payroll_id,
17162         p_location_id                 => g_body_tbl(p_assignment_action_id).assact_location_id,
17163         p_termination_date            => g_body_tbl(p_assignment_action_id).assact_termination_date,
17164         p_leaving_reason              => g_body_tbl(p_assignment_action_id).assact_leaving_reason,
17165         p_arch_assignment_action_id_o => null,
17166         p_object_version_number       => l_object_version_number);
17167     --
17168       if g_debug
17169       and g_detail_debug = 'Y' then
17170         l_archive_step := 170;
17171       end if;
17172     --
17173       pay_jp_itwb_dml_pkg.create_emp(
17174         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17175         p_assignment_action_id        => p_assignment_action_id,
17176         p_action_context_type         => 'AAP',
17177         p_assignment_id               => p_assignment_id,
17178         p_effective_date              => g_effective_date,
17179         p_action_information_category => 'JP_ITWB_EMP',
17180         p_person_id                   => g_body_tbl(p_assignment_action_id).emp_person_id,
17181         p_employee_number             => g_body_tbl(p_assignment_action_id).emp_employee_number,
17182         p_last_name                   => g_body_tbl(p_assignment_action_id).emp_last_name,
17183         p_first_name                  => g_body_tbl(p_assignment_action_id).emp_first_name,
17184         p_last_name_kana              => g_body_tbl(p_assignment_action_id).emp_last_name_kana,
17185         p_first_name_kana             => g_body_tbl(p_assignment_action_id).emp_first_name_kana,
17186         p_sex                         => g_body_tbl(p_assignment_action_id).emp_sex,
17187         p_birth_date                  => g_body_tbl(p_assignment_action_id).emp_birth_date,
17188         p_object_version_number       => l_object_version_number);
17189     --
17190       if g_debug
17191       and g_detail_debug = 'Y' then
17192         l_archive_step := 171;
17193       end if;
17194     --
17195       pay_jp_itwb_dml_pkg.create_emp_add(
17196         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17197         p_assignment_action_id        => p_assignment_action_id,
17198         p_action_context_type         => 'AAP',
17199         p_assignment_id               => p_assignment_id,
17200         p_effective_date              => g_effective_date,
17201         p_action_information_category => 'JP_ITWB_EMP_ADD',
17202         p_address_id                  => g_body_tbl(p_assignment_action_id).emp_add_address_id,
17203         p_address_jp                  => g_body_tbl(p_assignment_action_id).emp_add_address_jp,
17204         p_postal_code                 => g_body_tbl(p_assignment_action_id).emp_add_postal_code,
17205         p_district_code               => g_body_tbl(p_assignment_action_id).emp_add_district_code,
17206         p_address1                    => substr(g_body_tbl(p_assignment_action_id).emp_add_address,1,80),
17207         p_address2                    => substr(g_body_tbl(p_assignment_action_id).emp_add_address,81,80),
17208         p_address_kana1               => substr(g_body_tbl(p_assignment_action_id).emp_add_address_kana,1,80),
17209         p_address_kana2               => substr(g_body_tbl(p_assignment_action_id).emp_add_address_kana,81,80),
17210         p_phone1                      => g_body_tbl(p_assignment_action_id).emp_add_phone1,
17211         p_phone2                      => g_body_tbl(p_assignment_action_id).emp_add_phone2,
17212         p_object_version_number       => l_object_version_number);
17213     --
17214       if g_debug
17215       and g_detail_debug = 'Y' then
17216         l_archive_step := 172;
17217       end if;
17218     --
17219       pay_jp_itwb_dml_pkg.create_emp_ass(
17220         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17221         p_assignment_action_id        => p_assignment_action_id,
17222         p_action_context_type         => 'AAP',
17223         p_assignment_id               => p_assignment_id,
17224         p_effective_date              => g_effective_date,
17225         p_action_information_category => 'JP_ITWB_EMP_ASS',
17226         p_hire_date                   => g_body_tbl(p_assignment_action_id).emp_ass_hire_date,
17227         p_organization_name           => g_body_tbl(p_assignment_action_id).emp_ass_organization_name,
17228         p_job_name                    => g_body_tbl(p_assignment_action_id).emp_ass_job_name,
17229         p_payroll_name                => g_body_tbl(p_assignment_action_id).emp_ass_payroll_name,
17230         p_location_name               => g_body_tbl(p_assignment_action_id).emp_ass_location_name,
17231         p_object_version_number       => l_object_version_number);
17232     --
17233       if g_debug
17234       and g_detail_debug = 'Y' then
17235         l_archive_step := 173;
17236       end if;
17237     --
17238       pay_jp_itwb_dml_pkg.create_emp_si(
17239         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17240         p_assignment_action_id        => p_assignment_action_id,
17241         p_action_context_type         => 'AAP',
17242         p_assignment_id               => p_assignment_id,
17243         p_effective_date              => g_effective_date,
17244         p_action_information_category => 'JP_ITWB_EMP_SI',
17245         p_itax_org_id                 => g_body_tbl(p_assignment_action_id).emp_si_itax_org_id,
17246         p_itax_type                   => g_body_tbl(p_assignment_action_id).emp_si_itax_type,
17247         p_hi_org_id                   => g_body_tbl(p_assignment_action_id).emp_si_hi_org_id,
17248         p_hi_number                   => g_body_tbl(p_assignment_action_id).emp_si_hi_number,
17249         p_wp_org_id                   => g_body_tbl(p_assignment_action_id).emp_si_wp_org_id,
17250         p_wp_number                   => g_body_tbl(p_assignment_action_id).emp_si_wp_number,
17251         p_wpf_org_id                  => g_body_tbl(p_assignment_action_id).emp_si_wpf_org_id,
17252         p_wpf_number                  => g_body_tbl(p_assignment_action_id).emp_si_wpf_number,
17253         p_ei_org_id                   => g_body_tbl(p_assignment_action_id).emp_si_ei_org_id,
17254         p_ei_number                   => g_body_tbl(p_assignment_action_id).emp_si_ei_number,
17255         p_nres_flag                   => g_body_tbl(p_assignment_action_id).emp_si_nres_flag,
17256         p_nres_start_date             => g_body_tbl(p_assignment_action_id).emp_si_nres_start_date,
17257         p_projected_res_date          => g_body_tbl(p_assignment_action_id).emp_si_projected_res_date,
17258         p_object_version_number       => l_object_version_number);
17259     --
17260       if g_debug
17261       and g_detail_debug = 'Y' then
17262         l_archive_step := 174;
17263       end if;
17264     --
17265       pay_jp_itwb_dml_pkg.create_sal_act(
17266         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17267         p_assignment_action_id        => p_assignment_action_id,
17268         p_action_context_type         => 'AAP',
17269         p_assignment_id               => p_assignment_id,
17270         p_effective_date              => g_effective_date,
17271         p_action_information_category => 'JP_ITWB_SAL_ACT',
17272         p_category                    => 'ACT',
17273         p_col_mth1                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth1),
17274         p_col_mth2                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth2),
17275         p_col_mth3                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth3),
17276         p_col_mth4                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth4),
17277         p_col_mth5                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth5),
17278         p_col_mth6                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth6),
17279         p_col_mth7                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth7),
17280         p_col_mth8                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth8),
17281         p_col_mth9                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth9),
17282         p_col_mth10                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth10),
17283         p_col_mth11                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth11),
17284         p_col_mth12                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).sal_act_act_mth12),
17285         p_object_version_number       => l_object_version_number);
17286     --
17287       if g_debug
17288       and g_detail_debug = 'Y' then
17289         l_archive_step := 175;
17290       end if;
17291     --
17292       pay_jp_itwb_dml_pkg.create_sal_act(
17293         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17294         p_assignment_action_id        => p_assignment_action_id,
17295         p_action_context_type         => 'AAP',
17296         p_assignment_id               => p_assignment_id,
17297         p_effective_date              => g_effective_date,
17298         p_action_information_category => 'JP_ITWB_SAL_ACT',
17299         p_category                    => 'EFD',
17300         p_col_mth1                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_act_efd),
17301         p_col_mth2                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_act_efd),
17302         p_col_mth3                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_act_efd),
17303         p_col_mth4                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_act_efd),
17304         p_col_mth5                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_act_efd),
17305         p_col_mth6                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_act_efd),
17306         p_col_mth7                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_act_efd),
17307         p_col_mth8                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_act_efd),
17308         p_col_mth9                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_act_efd),
17309         p_col_mth10                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_act_efd),
17310         p_col_mth11                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_act_efd),
17311         p_col_mth12                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_act_efd),
17312         p_object_version_number       => l_object_version_number);
17313     --
17314       if g_debug
17315       and g_detail_debug = 'Y' then
17316         l_archive_step := 176;
17317       end if;
17318     --
17319       pay_jp_itwb_dml_pkg.create_sal_act(
17320         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17321         p_assignment_action_id        => p_assignment_action_id,
17322         p_action_context_type         => 'AAP',
17323         p_assignment_id               => p_assignment_id,
17324         p_effective_date              => g_effective_date,
17325         p_action_information_category => 'JP_ITWB_SAL_ACT',
17326         p_category                    => 'ERD',
17327         p_col_mth1                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_act_erd),
17328         p_col_mth2                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_act_erd),
17329         p_col_mth3                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_act_erd),
17330         p_col_mth4                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_act_erd),
17331         p_col_mth5                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_act_erd),
17332         p_col_mth6                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_act_erd),
17333         p_col_mth7                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_act_erd),
17334         p_col_mth8                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_act_erd),
17335         p_col_mth9                    => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_act_erd),
17336         p_col_mth10                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_act_erd),
17337         p_col_mth11                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_act_erd),
17338         p_col_mth12                   => fnd_date.date_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_act_erd),
17339         p_object_version_number       => l_object_version_number);
17340     --
17341       if g_debug
17342       and g_detail_debug = 'Y' then
17343         l_archive_step := 177;
17344       end if;
17345     --
17346       pay_jp_itwb_dml_pkg.create_sal_act(
17347         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17348         p_assignment_action_id        => p_assignment_action_id,
17349         p_action_context_type         => 'AAP',
17350         p_assignment_id               => p_assignment_id,
17351         p_effective_date              => g_effective_date,
17352         p_action_information_category => 'JP_ITWB_SAL_ACT',
17353         p_category                    => 'PAY',
17354         p_col_mth1                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_act_pay),
17355         p_col_mth2                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_act_pay),
17356         p_col_mth3                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_act_pay),
17357         p_col_mth4                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_act_pay),
17358         p_col_mth5                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_act_pay),
17359         p_col_mth6                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_act_pay),
17360         p_col_mth7                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_act_pay),
17361         p_col_mth8                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_act_pay),
17362         p_col_mth9                    => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_act_pay),
17363         p_col_mth10                   => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_act_pay),
17364         p_col_mth11                   => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_act_pay),
17365         p_col_mth12                   => fnd_number.number_to_canonical(g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_act_pay),
17366         p_object_version_number       => l_object_version_number);
17367     --
17368       if g_debug
17369       and g_detail_debug = 'Y' then
17370         l_archive_step := 178;
17371       end if;
17372     --
17373       -- set col_tot later, set_data_pay_col_tot
17374       pay_jp_itwb_dml_pkg.create_sal_pay(
17375         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17376         p_assignment_action_id        => p_assignment_action_id,
17377         p_action_context_type         => 'AAP',
17378         p_assignment_id               => p_assignment_id,
17379         p_effective_date              => g_effective_date,
17380         p_action_information_category => 'JP_ITWB_SAL_PAY',
17381         p_category                    => 'TXBL',
17382         p_col_mth1                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17383         p_col_mth2                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17384         p_col_mth3                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17385         p_col_mth4                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17386         p_col_mth5                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17387         p_col_mth6                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17388         p_col_mth7                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17389         p_col_mth8                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17390         p_col_mth9                    => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17391         p_col_mth10                   => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17392         p_col_mth11                   => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17393         p_col_mth12                   => sum_data_sal_tbl('TXBL',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17394         p_col_tot                     => null,
17395         p_object_version_number       => l_object_version_number);
17396     --
17397       if g_debug
17398       and g_detail_debug = 'Y' then
17399         l_archive_step := 179;
17400       end if;
17401     --
17402       pay_jp_itwb_dml_pkg.create_sal_pay(
17403         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17404         p_assignment_action_id        => p_assignment_action_id,
17405         p_action_context_type         => 'AAP',
17406         p_assignment_id               => p_assignment_id,
17407         p_effective_date              => g_effective_date,
17408         p_action_information_category => 'JP_ITWB_SAL_PAY',
17409         p_category                    => 'NTXBL',
17410         p_col_mth1                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17411         p_col_mth2                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17412         p_col_mth3                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17413         p_col_mth4                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17414         p_col_mth5                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17415         p_col_mth6                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17416         p_col_mth7                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17417         p_col_mth8                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17418         p_col_mth9                    => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17419         p_col_mth10                   => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17420         p_col_mth11                   => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17421         p_col_mth12                   => sum_data_sal_tbl('NTXBL',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17422         p_col_tot                     => null,
17423         p_object_version_number       => l_object_version_number);
17424     --
17425       if g_debug
17426       and g_detail_debug = 'Y' then
17427         l_archive_step := 180;
17428       end if;
17429     --
17430       pay_jp_itwb_dml_pkg.create_sal_pay(
17431         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17432         p_assignment_action_id        => p_assignment_action_id,
17433         p_action_context_type         => 'AAP',
17434         p_assignment_id               => p_assignment_id,
17435         p_effective_date              => g_effective_date,
17436         p_action_information_category => 'JP_ITWB_SAL_PAY',
17437         p_category                    => 'PAY',
17438         p_col_mth1                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17439         p_col_mth2                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17440         p_col_mth3                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17441         p_col_mth4                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17442         p_col_mth5                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17443         p_col_mth6                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17444         p_col_mth7                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17445         p_col_mth8                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17446         p_col_mth9                    => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17447         p_col_mth10                   => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17448         p_col_mth11                   => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17449         p_col_mth12                   => sum_data_sal_tbl('PAY',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17450         p_col_tot                     => null,
17451         p_object_version_number       => l_object_version_number);
17452     --
17453       if g_debug
17454       and g_detail_debug = 'Y' then
17455         l_archive_step := 181;
17456       end if;
17457     --
17458       pay_jp_itwb_dml_pkg.create_sal_pay(
17459         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17460         p_assignment_action_id        => p_assignment_action_id,
17461         p_action_context_type         => 'AAP',
17462         p_assignment_id               => p_assignment_id,
17463         p_effective_date              => g_effective_date,
17464         p_action_information_category => 'JP_ITWB_SAL_PAY',
17465         p_category                    => 'HI',
17466         p_col_mth1                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17467         p_col_mth2                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17468         p_col_mth3                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17469         p_col_mth4                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17470         p_col_mth5                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17471         p_col_mth6                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17472         p_col_mth7                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17473         p_col_mth8                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17474         p_col_mth9                    => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17475         p_col_mth10                   => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17476         p_col_mth11                   => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17477         p_col_mth12                   => sum_data_sal_tbl('HI',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17478         p_col_tot                     => null,
17479         p_object_version_number       => l_object_version_number);
17480     --
17481       if g_debug
17482       and g_detail_debug = 'Y' then
17483         l_archive_step := 182;
17484       end if;
17485     --
17486       pay_jp_itwb_dml_pkg.create_sal_pay(
17487         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17488         p_assignment_action_id        => p_assignment_action_id,
17489         p_action_context_type         => 'AAP',
17490         p_assignment_id               => p_assignment_id,
17491         p_effective_date              => g_effective_date,
17492         p_action_information_category => 'JP_ITWB_SAL_PAY',
17493         p_category                    => 'CI',
17494         p_col_mth1                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17495         p_col_mth2                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17496         p_col_mth3                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17497         p_col_mth4                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17498         p_col_mth5                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17499         p_col_mth6                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17500         p_col_mth7                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17501         p_col_mth8                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17502         p_col_mth9                    => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17503         p_col_mth10                   => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17504         p_col_mth11                   => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17505         p_col_mth12                   => sum_data_sal_tbl('CI',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17506         p_col_tot                     => null,
17507         p_object_version_number       => l_object_version_number);
17508     --
17509       if g_debug
17510       and g_detail_debug = 'Y' then
17511         l_archive_step := 183;
17512       end if;
17513     --
17514       pay_jp_itwb_dml_pkg.create_sal_pay(
17515         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17516         p_assignment_action_id        => p_assignment_action_id,
17517         p_action_context_type         => 'AAP',
17518         p_assignment_id               => p_assignment_id,
17519         p_effective_date              => g_effective_date,
17520         p_action_information_category => 'JP_ITWB_SAL_PAY',
17521         p_category                    => 'WP',
17522         p_col_mth1                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17523         p_col_mth2                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17524         p_col_mth3                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17525         p_col_mth4                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17526         p_col_mth5                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17527         p_col_mth6                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17528         p_col_mth7                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17529         p_col_mth8                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17530         p_col_mth9                    => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17531         p_col_mth10                   => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17532         p_col_mth11                   => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17533         p_col_mth12                   => sum_data_sal_tbl('WP',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17534         p_col_tot                     => null,
17535         p_object_version_number       => l_object_version_number);
17536     --
17537       if g_debug
17538       and g_detail_debug = 'Y' then
17539         l_archive_step := 184;
17540       end if;
17541     --
17542       pay_jp_itwb_dml_pkg.create_sal_pay(
17543         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17544         p_assignment_action_id        => p_assignment_action_id,
17545         p_action_context_type         => 'AAP',
17546         p_assignment_id               => p_assignment_id,
17547         p_effective_date              => g_effective_date,
17548         p_action_information_category => 'JP_ITWB_SAL_PAY',
17549         p_category                    => 'WPF',
17550         p_col_mth1                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17551         p_col_mth2                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17552         p_col_mth3                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17553         p_col_mth4                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17554         p_col_mth5                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17555         p_col_mth6                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17556         p_col_mth7                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17557         p_col_mth8                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17558         p_col_mth9                    => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17559         p_col_mth10                   => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17560         p_col_mth11                   => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17561         p_col_mth12                   => sum_data_sal_tbl('WPF',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17562         p_col_tot                     => null,
17563         p_object_version_number       => l_object_version_number);
17564     --
17565       if g_debug
17566       and g_detail_debug = 'Y' then
17567         l_archive_step := 185;
17568       end if;
17569     --
17570       pay_jp_itwb_dml_pkg.create_sal_pay(
17571         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17572         p_assignment_action_id        => p_assignment_action_id,
17573         p_action_context_type         => 'AAP',
17574         p_assignment_id               => p_assignment_id,
17575         p_effective_date              => g_effective_date,
17576         p_action_information_category => 'JP_ITWB_SAL_PAY',
17577         p_category                    => 'EI',
17578         p_col_mth1                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17579         p_col_mth2                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17580         p_col_mth3                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17581         p_col_mth4                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17582         p_col_mth5                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17583         p_col_mth6                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17584         p_col_mth7                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17585         p_col_mth8                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17586         p_col_mth9                    => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17587         p_col_mth10                   => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17588         p_col_mth11                   => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17589         p_col_mth12                   => sum_data_sal_tbl('EI',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17590         p_col_tot                     => null,
17591         p_object_version_number       => l_object_version_number);
17592     --
17593       if g_debug
17594       and g_detail_debug = 'Y' then
17595         l_archive_step := 186;
17596       end if;
17597     --
17598       pay_jp_itwb_dml_pkg.create_sal_pay(
17599         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17600         p_assignment_action_id        => p_assignment_action_id,
17601         p_action_context_type         => 'AAP',
17602         p_assignment_id               => p_assignment_id,
17603         p_effective_date              => g_effective_date,
17604         p_action_information_category => 'JP_ITWB_SAL_PAY',
17605         p_category                    => 'SI',
17606         p_col_mth1                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17607         p_col_mth2                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17608         p_col_mth3                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17609         p_col_mth4                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17610         p_col_mth5                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17611         p_col_mth6                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17612         p_col_mth7                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17613         p_col_mth8                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17614         p_col_mth9                    => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17615         p_col_mth10                   => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17616         p_col_mth11                   => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17617         p_col_mth12                   => sum_data_sal_tbl('SI',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17618         p_col_tot                     => null,
17619         p_object_version_number       => l_object_version_number);
17620     --
17621       if g_debug
17622       and g_detail_debug = 'Y' then
17623         l_archive_step := 187;
17624       end if;
17625     --
17626       pay_jp_itwb_dml_pkg.create_sal_pay(
17627         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17628         p_assignment_action_id        => p_assignment_action_id,
17629         p_action_context_type         => 'AAP',
17630         p_assignment_id               => p_assignment_id,
17631         p_effective_date              => g_effective_date,
17632         p_action_information_category => 'JP_ITWB_SAL_PAY',
17633         p_category                    => 'DCT_EARN',
17634         p_col_mth1                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17635         p_col_mth2                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17636         p_col_mth3                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17637         p_col_mth4                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17638         p_col_mth5                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17639         p_col_mth6                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17640         p_col_mth7                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17641         p_col_mth8                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17642         p_col_mth9                    => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17643         p_col_mth10                   => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17644         p_col_mth11                   => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17645         p_col_mth12                   => sum_data_sal_tbl('DCT_EARN',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17646         p_col_tot                     => null,
17647         p_object_version_number       => l_object_version_number);
17648     --
17649       if g_debug
17650       and g_detail_debug = 'Y' then
17651         l_archive_step := 188;
17652       end if;
17653     --
17654       pay_jp_itwb_dml_pkg.create_sal_pay(
17655         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17656         p_assignment_action_id        => p_assignment_action_id,
17657         p_action_context_type         => 'AAP',
17658         p_assignment_id               => p_assignment_id,
17659         p_effective_date              => g_effective_date,
17660         p_action_information_category => 'JP_ITWB_SAL_PAY',
17661         p_category                    => 'DPT',
17662         p_col_mth1                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_pay_dpts,
17663         p_col_mth2                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_pay_dpts,
17664         p_col_mth3                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_pay_dpts,
17665         p_col_mth4                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_pay_dpts,
17666         p_col_mth5                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_pay_dpts,
17667         p_col_mth6                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_pay_dpts,
17668         p_col_mth7                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_pay_dpts,
17669         p_col_mth8                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_pay_dpts,
17670         p_col_mth9                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_pay_dpts,
17671         p_col_mth10                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_pay_dpts,
17672         p_col_mth11                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_pay_dpts,
17673         p_col_mth12                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_pay_dpts,
17674         p_col_tot                     => null,
17675         p_object_version_number       => l_object_version_number);
17676     --
17677       if g_debug
17678       and g_detail_debug = 'Y' then
17679         l_archive_step := 189;
17680       end if;
17681     --
17682       pay_jp_itwb_dml_pkg.create_sal_pay(
17683         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17684         p_assignment_action_id        => p_assignment_action_id,
17685         p_action_context_type         => 'AAP',
17686         p_assignment_id               => p_assignment_id,
17687         p_effective_date              => g_effective_date,
17688         p_action_information_category => 'JP_ITWB_SAL_PAY',
17689         p_category                    => 'ITX',
17690         p_col_mth1                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17691         p_col_mth2                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17692         p_col_mth3                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17693         p_col_mth4                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17694         p_col_mth5                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17695         p_col_mth6                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17696         p_col_mth7                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17697         p_col_mth8                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17698         p_col_mth9                    => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17699         p_col_mth10                   => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17700         p_col_mth11                   => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17701         p_col_mth12                   => sum_data_sal_tbl('ITX',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17702         p_col_tot                     => null,
17703         p_object_version_number       => l_object_version_number);
17704     --
17705       if g_debug
17706       and g_detail_debug = 'Y' then
17707         l_archive_step := 190;
17708       end if;
17709     --
17710       pay_jp_itwb_dml_pkg.create_sal_pay(
17711         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17712         p_assignment_action_id        => p_assignment_action_id,
17713         p_action_context_type         => 'AAP',
17714         p_assignment_id               => p_assignment_id,
17715         p_effective_date              => g_effective_date,
17716         p_action_information_category => 'JP_ITWB_SAL_PAY',
17717         p_category                    => 'YEA_ITX',
17718         p_col_mth1                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_pay_yea_itx,
17719         p_col_mth2                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_pay_yea_itx,
17720         p_col_mth3                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_pay_yea_itx,
17721         p_col_mth4                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_pay_yea_itx,
17722         p_col_mth5                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_pay_yea_itx,
17723         p_col_mth6                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_pay_yea_itx,
17724         p_col_mth7                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_pay_yea_itx,
17725         p_col_mth8                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_pay_yea_itx,
17726         p_col_mth9                    => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_pay_yea_itx,
17727         p_col_mth10                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_pay_yea_itx,
17728         p_col_mth11                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_pay_yea_itx,
17729         p_col_mth12                   => g_data_sal_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_pay_yea_itx,
17730         p_col_tot                     => null,
17731         p_object_version_number       => l_object_version_number);
17732     --
17733       if g_debug
17734       and g_detail_debug = 'Y' then
17735         l_archive_step := 191;
17736       end if;
17737     --
17738       pay_jp_itwb_dml_pkg.create_sal_pay(
17739         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17740         p_assignment_action_id        => p_assignment_action_id,
17741         p_action_context_type         => 'AAP',
17742         p_assignment_id               => p_assignment_id,
17743         p_effective_date              => g_effective_date,
17744         p_action_information_category => 'JP_ITWB_SAL_PAY',
17745         p_category                    => 'NET_ITX',
17746         p_col_mth1                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17747         p_col_mth2                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17748         p_col_mth3                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17749         p_col_mth4                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17750         p_col_mth5                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17751         p_col_mth6                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17752         p_col_mth7                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17753         p_col_mth8                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17754         p_col_mth9                    => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17755         p_col_mth10                   => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17756         p_col_mth11                   => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17757         p_col_mth12                   => sum_data_sal_tbl('NET_ITX',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17758         p_col_tot                     => null,
17759         p_object_version_number       => l_object_version_number);
17760     --
17761       if g_debug
17762       and g_detail_debug = 'Y' then
17763         l_archive_step := 192;
17764       end if;
17765     --
17766       pay_jp_itwb_dml_pkg.create_sal_pay(
17767         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17768         p_assignment_action_id        => p_assignment_action_id,
17769         p_action_context_type         => 'AAP',
17770         p_assignment_id               => p_assignment_id,
17771         p_effective_date              => g_effective_date,
17772         p_action_information_category => 'JP_ITWB_SAL_PAY',
17773         p_category                    => 'LTX',
17774         p_col_mth1                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17775         p_col_mth2                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17776         p_col_mth3                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17777         p_col_mth4                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17778         p_col_mth5                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17779         p_col_mth6                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17780         p_col_mth7                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17781         p_col_mth8                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17782         p_col_mth9                    => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17783         p_col_mth10                   => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17784         p_col_mth11                   => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17785         p_col_mth12                   => sum_data_sal_tbl('LTX',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17786         p_col_tot                     => null,
17787         p_object_version_number       => l_object_version_number);
17788     --
17789       if g_debug
17790       and g_detail_debug = 'Y' then
17791         l_archive_step := 193;
17792       end if;
17793     --
17794       pay_jp_itwb_dml_pkg.create_sal_pay(
17795         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17796         p_assignment_action_id        => p_assignment_action_id,
17797         p_action_context_type         => 'AAP',
17798         p_assignment_id               => p_assignment_id,
17799         p_effective_date              => g_effective_date,
17800         p_action_information_category => 'JP_ITWB_SAL_PAY',
17801         p_category                    => 'LTX_LUMP',
17802         p_col_mth1                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17803         p_col_mth2                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17804         p_col_mth3                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17805         p_col_mth4                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17806         p_col_mth5                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17807         p_col_mth6                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17808         p_col_mth7                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17809         p_col_mth8                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17810         p_col_mth9                    => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17811         p_col_mth10                   => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17812         p_col_mth11                   => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17813         p_col_mth12                   => sum_data_sal_tbl('LTX_LUMP',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17814         p_col_tot                     => null,
17815         p_object_version_number       => l_object_version_number);
17816     --
17817       if g_debug
17818       and g_detail_debug = 'Y' then
17819         l_archive_step := 194;
17820       end if;
17821     --
17822       pay_jp_itwb_dml_pkg.create_sal_pay(
17823         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17824         p_assignment_action_id        => p_assignment_action_id,
17825         p_action_context_type         => 'AAP',
17826         p_assignment_id               => p_assignment_id,
17827         p_effective_date              => g_effective_date,
17828         p_action_information_category => 'JP_ITWB_SAL_PAY',
17829         p_category                    => 'DCT',
17830         p_col_mth1                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17831         p_col_mth2                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17832         p_col_mth3                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17833         p_col_mth4                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17834         p_col_mth5                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17835         p_col_mth6                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17836         p_col_mth7                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17837         p_col_mth8                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17838         p_col_mth9                    => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17839         p_col_mth10                   => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17840         p_col_mth11                   => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17841         p_col_mth12                   => sum_data_sal_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17842         p_col_tot                     => null,
17843         p_object_version_number       => l_object_version_number);
17844     --
17845       if g_debug
17846       and g_detail_debug = 'Y' then
17847         l_archive_step := 195;
17848       end if;
17849     --
17850       pay_jp_itwb_dml_pkg.create_sal_pay(
17851         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17852         p_assignment_action_id        => p_assignment_action_id,
17853         p_action_context_type         => 'AAP',
17854         p_assignment_id               => p_assignment_id,
17855         p_effective_date              => g_effective_date,
17856         p_action_information_category => 'JP_ITWB_SAL_PAY',
17857         p_category                    => 'NET_PAY',
17858         p_col_mth1                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)),
17859         p_col_mth2                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)),
17860         p_col_mth3                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)),
17861         p_col_mth4                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)),
17862         p_col_mth5                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)),
17863         p_col_mth6                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)),
17864         p_col_mth7                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)),
17865         p_col_mth8                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)),
17866         p_col_mth9                    => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)),
17867         p_col_mth10                   => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)),
17868         p_col_mth11                   => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)),
17869         p_col_mth12                   => sum_data_sal_tbl('NET_PAY',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)),
17870         p_col_tot                     => null,
17871         p_object_version_number       => l_object_version_number);
17872     --
17873       if g_debug
17874       and g_detail_debug = 'Y' then
17875         l_archive_step := 196;
17876       end if;
17877     --
17878       pay_jp_itwb_dml_pkg.create_bon_act(
17879         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17880         p_assignment_action_id        => p_assignment_action_id,
17881         p_action_context_type         => 'AAP',
17882         p_assignment_id               => p_assignment_id,
17883         p_effective_date              => g_effective_date,
17884         p_action_information_category => 'JP_ITWB_BON_ACT',
17885         p_category                    => 'ACT',
17886         p_col_cnt1                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1),
17887         p_col_cnt2                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2),
17888         p_col_cnt3                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3),
17889         p_col_cnt4                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4),
17890         p_col_cnt5                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5),
17891         p_col_cnt6                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6),
17892         p_col_cnt7                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7),
17893         p_col_cnt8                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8),
17894         p_col_cnt9                    => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9),
17895         p_col_cnt10                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10),
17896         p_col_cnt11                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11),
17897         p_col_cnt12                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12),
17898         p_col_cnt13                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13),
17899         p_col_cnt14                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14),
17900         p_col_cnt15                   => fnd_number.number_to_canonical(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15),
17901         p_object_version_number       => l_object_version_number);
17902     --
17903       if g_debug
17904       and g_detail_debug = 'Y' then
17905         l_archive_step := 197;
17906       end if;
17907     --
17908       pay_jp_itwb_dml_pkg.create_bon_act(
17909         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17910         p_assignment_action_id        => p_assignment_action_id,
17911         p_action_context_type         => 'AAP',
17912         p_assignment_id               => p_assignment_id,
17913         p_effective_date              => g_effective_date,
17914         p_action_information_category => 'JP_ITWB_BON_ACT',
17915         p_category                    => 'TYPE',
17916         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_act_type,
17917         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_act_type,
17918         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_act_type,
17919         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_act_type,
17920         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_act_type,
17921         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_act_type,
17922         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_act_type,
17923         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_act_type,
17924         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_act_type,
17925         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_act_type,
17926         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_act_type,
17927         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_act_type,
17928         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_act_type,
17929         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_act_type,
17930         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_act_type,
17931         p_object_version_number       => l_object_version_number);
17932     --
17933       if g_debug
17934       and g_detail_debug = 'Y' then
17935         l_archive_step := 198;
17936       end if;
17937     --
17938       pay_jp_itwb_dml_pkg.create_bon_act(
17939         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17940         p_assignment_action_id        => p_assignment_action_id,
17941         p_action_context_type         => 'AAP',
17942         p_assignment_id               => p_assignment_id,
17943         p_effective_date              => g_effective_date,
17944         p_action_information_category => 'JP_ITWB_BON_ACT',
17945         p_category                    => 'EFD',
17946         p_col_cnt1                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_act_efd),
17947         p_col_cnt2                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_act_efd),
17948         p_col_cnt3                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_act_efd),
17949         p_col_cnt4                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_act_efd),
17950         p_col_cnt5                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_act_efd),
17951         p_col_cnt6                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_act_efd),
17952         p_col_cnt7                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_act_efd),
17953         p_col_cnt8                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_act_efd),
17954         p_col_cnt9                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_act_efd),
17955         p_col_cnt10                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_act_efd),
17956         p_col_cnt11                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_act_efd),
17957         p_col_cnt12                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_act_efd),
17958         p_col_cnt13                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_act_efd),
17959         p_col_cnt14                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_act_efd),
17960         p_col_cnt15                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_act_efd),
17961         p_object_version_number       => l_object_version_number);
17962     --
17963       if g_debug
17964       and g_detail_debug = 'Y' then
17965         l_archive_step := 199;
17966       end if;
17967     --
17968       pay_jp_itwb_dml_pkg.create_bon_act(
17969         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
17970         p_assignment_action_id        => p_assignment_action_id,
17971         p_action_context_type         => 'AAP',
17972         p_assignment_id               => p_assignment_id,
17973         p_effective_date              => g_effective_date,
17974         p_action_information_category => 'JP_ITWB_BON_ACT',
17975         p_category                    => 'ERD',
17976         p_col_cnt1                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_act_erd),
17977         p_col_cnt2                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_act_erd),
17978         p_col_cnt3                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_act_erd),
17979         p_col_cnt4                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_act_erd),
17980         p_col_cnt5                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_act_erd),
17981         p_col_cnt6                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_act_erd),
17982         p_col_cnt7                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_act_erd),
17983         p_col_cnt8                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_act_erd),
17984         p_col_cnt9                    => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_act_erd),
17985         p_col_cnt10                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_act_erd),
17986         p_col_cnt11                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_act_erd),
17987         p_col_cnt12                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_act_erd),
17988         p_col_cnt13                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_act_erd),
17989         p_col_cnt14                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_act_erd),
17990         p_col_cnt15                   => fnd_date.date_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_act_erd),
17991         p_object_version_number       => l_object_version_number);
17992     --
17993       if g_debug
17994       and g_detail_debug = 'Y' then
17995         l_archive_step := 200;
17996       end if;
17997     --
17998       pay_jp_itwb_dml_pkg.create_bon_act(
17999         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18000         p_assignment_action_id        => p_assignment_action_id,
18001         p_action_context_type         => 'AAP',
18002         p_assignment_id               => p_assignment_id,
18003         p_effective_date              => g_effective_date,
18004         p_action_information_category => 'JP_ITWB_BON_ACT',
18005         p_category                    => 'PAY',
18006         p_col_cnt1                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_act_pay),
18007         p_col_cnt2                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_act_pay),
18008         p_col_cnt3                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_act_pay),
18009         p_col_cnt4                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_act_pay),
18010         p_col_cnt5                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_act_pay),
18011         p_col_cnt6                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_act_pay),
18012         p_col_cnt7                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_act_pay),
18013         p_col_cnt8                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_act_pay),
18014         p_col_cnt9                    => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_act_pay),
18015         p_col_cnt10                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_act_pay),
18016         p_col_cnt11                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_act_pay),
18017         p_col_cnt12                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_act_pay),
18018         p_col_cnt13                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_act_pay),
18019         p_col_cnt14                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_act_pay),
18020         p_col_cnt15                   => fnd_number.number_to_canonical(g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_act_pay),
18021         p_object_version_number       => l_object_version_number);
18022     --
18023       if g_debug
18024       and g_detail_debug = 'Y' then
18025         l_archive_step := 201;
18026       end if;
18027     --
18028       pay_jp_itwb_dml_pkg.create_bon_pay(
18029         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18030         p_assignment_action_id        => p_assignment_action_id,
18031         p_action_context_type         => 'AAP',
18032         p_assignment_id               => p_assignment_id,
18033         p_effective_date              => g_effective_date,
18034         p_action_information_category => 'JP_ITWB_BON_PAY',
18035         p_category                    => 'TXBL',
18036         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_txbl,
18037         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_txbl,
18038         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_txbl,
18039         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_txbl,
18040         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_txbl,
18041         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_txbl,
18042         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_txbl,
18043         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_txbl,
18044         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_txbl,
18045         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_txbl,
18046         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_txbl,
18047         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_txbl,
18048         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_txbl,
18049         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_txbl,
18050         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_txbl,
18051         p_col_tot                     => null,
18052         p_object_version_number       => l_object_version_number);
18053     --
18054       if g_debug
18055       and g_detail_debug = 'Y' then
18056         l_archive_step := 202;
18057       end if;
18058     --
18059       pay_jp_itwb_dml_pkg.create_bon_pay(
18060         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18061         p_assignment_action_id        => p_assignment_action_id,
18062         p_action_context_type         => 'AAP',
18063         p_assignment_id               => p_assignment_id,
18064         p_effective_date              => g_effective_date,
18065         p_action_information_category => 'JP_ITWB_BON_PAY',
18066         p_category                    => 'NTXBL',
18067         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_ntxbl,
18068         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_ntxbl,
18069         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_ntxbl,
18070         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_ntxbl,
18071         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_ntxbl,
18072         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_ntxbl,
18073         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_ntxbl,
18074         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_ntxbl,
18075         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_ntxbl,
18076         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_ntxbl,
18077         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_ntxbl,
18078         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_ntxbl,
18079         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_ntxbl,
18080         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_ntxbl,
18081         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_ntxbl,
18082         p_col_tot                     => null,
18083         p_object_version_number       => l_object_version_number);
18084     --
18085       if g_debug
18086       and g_detail_debug = 'Y' then
18087         l_archive_step := 203;
18088       end if;
18089     --
18090       pay_jp_itwb_dml_pkg.create_bon_pay(
18091         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18092         p_assignment_action_id        => p_assignment_action_id,
18093         p_action_context_type         => 'AAP',
18094         p_assignment_id               => p_assignment_id,
18095         p_effective_date              => g_effective_date,
18096         p_action_information_category => 'JP_ITWB_BON_PAY',
18097         p_category                    => 'PAY',
18098         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_pay,
18099         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_pay,
18100         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_pay,
18101         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_pay,
18102         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_pay,
18103         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_pay,
18104         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_pay,
18105         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_pay,
18106         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_pay,
18107         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_pay,
18108         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_pay,
18109         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_pay,
18110         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_pay,
18111         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_pay,
18112         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_pay,
18113         p_col_tot                     => null,
18114         p_object_version_number       => l_object_version_number);
18115     --
18116       if g_debug
18117       and g_detail_debug = 'Y' then
18118         l_archive_step := 204;
18119       end if;
18120     --
18121       pay_jp_itwb_dml_pkg.create_bon_pay(
18122         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18123         p_assignment_action_id        => p_assignment_action_id,
18124         p_action_context_type         => 'AAP',
18125         p_assignment_id               => p_assignment_id,
18126         p_effective_date              => g_effective_date,
18127         p_action_information_category => 'JP_ITWB_BON_PAY',
18128         p_category                    => 'HI',
18129         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_hi,
18130         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_hi,
18131         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_hi,
18132         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_hi,
18133         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_hi,
18134         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_hi,
18135         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_hi,
18136         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_hi,
18137         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_hi,
18138         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_hi,
18139         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_hi,
18140         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_hi,
18141         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_hi,
18142         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_hi,
18143         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_hi,
18144         p_col_tot                     => null,
18145         p_object_version_number       => l_object_version_number);
18146     --
18147       if g_debug
18148       and g_detail_debug = 'Y' then
18149         l_archive_step := 205;
18150       end if;
18151     --
18152       pay_jp_itwb_dml_pkg.create_bon_pay(
18153         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18154         p_assignment_action_id        => p_assignment_action_id,
18155         p_action_context_type         => 'AAP',
18156         p_assignment_id               => p_assignment_id,
18157         p_effective_date              => g_effective_date,
18158         p_action_information_category => 'JP_ITWB_BON_PAY',
18159         p_category                    => 'CI',
18160         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_ci,
18161         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_ci,
18162         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_ci,
18163         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_ci,
18164         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_ci,
18165         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_ci,
18166         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_ci,
18167         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_ci,
18168         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_ci,
18169         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_ci,
18170         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_ci,
18171         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_ci,
18172         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_ci,
18173         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_ci,
18174         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_ci,
18175         p_col_tot                     => null,
18176         p_object_version_number       => l_object_version_number);
18177     --
18178       if g_debug
18179       and g_detail_debug = 'Y' then
18180         l_archive_step := 206;
18181       end if;
18182     --
18183       pay_jp_itwb_dml_pkg.create_bon_pay(
18184         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18185         p_assignment_action_id        => p_assignment_action_id,
18186         p_action_context_type         => 'AAP',
18187         p_assignment_id               => p_assignment_id,
18188         p_effective_date              => g_effective_date,
18189         p_action_information_category => 'JP_ITWB_BON_PAY',
18190         p_category                    => 'WP',
18191         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_wp,
18192         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_wp,
18193         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_wp,
18194         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_wp,
18195         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_wp,
18196         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_wp,
18197         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_wp,
18198         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_wp,
18199         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_wp,
18200         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_wp,
18201         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_wp,
18202         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_wp,
18203         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_wp,
18204         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_wp,
18205         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_wp,
18206         p_col_tot                     => null,
18207         p_object_version_number       => l_object_version_number);
18208     --
18209       if g_debug
18210       and g_detail_debug = 'Y' then
18211         l_archive_step := 207;
18212       end if;
18213     --
18214       pay_jp_itwb_dml_pkg.create_bon_pay(
18215         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18216         p_assignment_action_id        => p_assignment_action_id,
18217         p_action_context_type         => 'AAP',
18218         p_assignment_id               => p_assignment_id,
18219         p_effective_date              => g_effective_date,
18220         p_action_information_category => 'JP_ITWB_BON_PAY',
18221         p_category                    => 'WPF',
18222         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_wpf,
18223         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_wpf,
18224         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_wpf,
18225         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_wpf,
18226         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_wpf,
18227         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_wpf,
18228         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_wpf,
18229         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_wpf,
18230         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_wpf,
18231         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_wpf,
18232         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_wpf,
18233         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_wpf,
18234         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_wpf,
18235         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_wpf,
18236         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_wpf,
18237         p_col_tot                     => null,
18238         p_object_version_number       => l_object_version_number);
18239     --
18240       if g_debug
18241       and g_detail_debug = 'Y' then
18242         l_archive_step := 208;
18243       end if;
18244     --
18245       pay_jp_itwb_dml_pkg.create_bon_pay(
18246         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18247         p_assignment_action_id        => p_assignment_action_id,
18248         p_action_context_type         => 'AAP',
18249         p_assignment_id               => p_assignment_id,
18250         p_effective_date              => g_effective_date,
18251         p_action_information_category => 'JP_ITWB_BON_PAY',
18252         p_category                    => 'EI',
18253         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_ei,
18254         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_ei,
18255         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_ei,
18256         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_ei,
18257         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_ei,
18258         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_ei,
18259         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_ei,
18260         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_ei,
18261         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_ei,
18262         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_ei,
18263         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_ei,
18264         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_ei,
18265         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_ei,
18266         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_ei,
18267         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_ei,
18268         p_col_tot                     => null,
18269         p_object_version_number       => l_object_version_number);
18270     --
18271       if g_debug
18272       and g_detail_debug = 'Y' then
18273         l_archive_step := 209;
18274       end if;
18275     --
18276       pay_jp_itwb_dml_pkg.create_bon_pay(
18277         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18278         p_assignment_action_id        => p_assignment_action_id,
18279         p_action_context_type         => 'AAP',
18280         p_assignment_id               => p_assignment_id,
18281         p_effective_date              => g_effective_date,
18282         p_action_information_category => 'JP_ITWB_BON_PAY',
18283         p_category                    => 'SI',
18284         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_si,
18285         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_si,
18286         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_si,
18287         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_si,
18288         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_si,
18289         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_si,
18290         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_si,
18291         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_si,
18292         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_si,
18293         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_si,
18294         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_si,
18295         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_si,
18296         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_si,
18297         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_si,
18298         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_si,
18299         p_col_tot                     => null,
18300         p_object_version_number       => l_object_version_number);
18301     --
18302       if g_debug
18303       and g_detail_debug = 'Y' then
18304         l_archive_step := 210;
18305       end if;
18306     --
18307       pay_jp_itwb_dml_pkg.create_bon_pay(
18308         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18309         p_assignment_action_id        => p_assignment_action_id,
18310         p_action_context_type         => 'AAP',
18311         p_assignment_id               => p_assignment_id,
18312         p_effective_date              => g_effective_date,
18313         p_action_information_category => 'JP_ITWB_BON_PAY',
18314         p_category                    => 'DCT_EARN',
18315         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_dct_earn,
18316         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_dct_earn,
18317         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_dct_earn,
18318         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_dct_earn,
18319         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_dct_earn,
18320         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_dct_earn,
18321         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_dct_earn,
18322         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_dct_earn,
18323         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_dct_earn,
18324         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_dct_earn,
18325         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_dct_earn,
18326         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_dct_earn,
18327         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_dct_earn,
18328         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_dct_earn,
18329         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_dct_earn,
18330         p_col_tot                     => null,
18331         p_object_version_number       => l_object_version_number);
18332     --
18333       if g_debug
18334       and g_detail_debug = 'Y' then
18335         l_archive_step := 211;
18336       end if;
18337     --
18338       pay_jp_itwb_dml_pkg.create_bon_pay(
18339         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18340         p_assignment_action_id        => p_assignment_action_id,
18341         p_action_context_type         => 'AAP',
18342         p_assignment_id               => p_assignment_id,
18343         p_effective_date              => g_effective_date,
18344         p_action_information_category => 'JP_ITWB_BON_PAY',
18345         p_category                    => 'DPT',
18346         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_dpts,
18347         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_dpts,
18348         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_dpts,
18349         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_dpts,
18350         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_dpts,
18351         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_dpts,
18352         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_dpts,
18353         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_dpts,
18354         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_dpts,
18355         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_dpts,
18356         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_dpts,
18357         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_dpts,
18358         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_dpts,
18359         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_dpts,
18360         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_dpts,
18361         p_col_tot                     => null,
18362         p_object_version_number       => l_object_version_number);
18363     --
18364       if g_debug
18365       and g_detail_debug = 'Y' then
18366         l_archive_step := 212;
18367       end if;
18368     --
18369       pay_jp_itwb_dml_pkg.create_bon_pay(
18370         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18371         p_assignment_action_id        => p_assignment_action_id,
18372         p_action_context_type         => 'AAP',
18373         p_assignment_id               => p_assignment_id,
18374         p_effective_date              => g_effective_date,
18375         p_action_information_category => 'JP_ITWB_BON_PAY',
18376         p_category                    => 'ITX',
18377         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_itx,
18378         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_itx,
18379         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_itx,
18380         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_itx,
18381         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_itx,
18382         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_itx,
18383         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_itx,
18384         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_itx,
18385         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_itx,
18386         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_itx,
18387         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_itx,
18388         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_itx,
18389         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_itx,
18390         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_itx,
18391         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_itx,
18392         p_col_tot                     => null,
18393         p_object_version_number       => l_object_version_number);
18394     --
18395       if g_debug
18396       and g_detail_debug = 'Y' then
18397         l_archive_step := 213;
18398       end if;
18399     --
18400       pay_jp_itwb_dml_pkg.create_bon_pay(
18401         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18402         p_assignment_action_id        => p_assignment_action_id,
18403         p_action_context_type         => 'AAP',
18404         p_assignment_id               => p_assignment_id,
18405         p_effective_date              => g_effective_date,
18406         p_action_information_category => 'JP_ITWB_BON_PAY',
18407         p_category                    => 'ITX_RATE',
18408         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_itx_rate,
18409         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_itx_rate,
18410         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_itx_rate,
18411         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_itx_rate,
18412         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_itx_rate,
18413         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_itx_rate,
18414         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_itx_rate,
18415         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_itx_rate,
18416         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_itx_rate,
18417         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_itx_rate,
18418         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_itx_rate,
18419         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_itx_rate,
18420         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_itx_rate,
18421         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_itx_rate,
18422         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_itx_rate,
18423         p_col_tot                     => null,
18424         p_object_version_number       => l_object_version_number);
18425     --
18426       if g_debug
18427       and g_detail_debug = 'Y' then
18428         l_archive_step := 214;
18429       end if;
18430     --
18431       pay_jp_itwb_dml_pkg.create_bon_pay(
18432         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18433         p_assignment_action_id        => p_assignment_action_id,
18434         p_action_context_type         => 'AAP',
18435         p_assignment_id               => p_assignment_id,
18436         p_effective_date              => g_effective_date,
18437         p_action_information_category => 'JP_ITWB_BON_PAY',
18438         p_category                    => 'YEA_ITX',
18439         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_yea_itx,
18440         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_yea_itx,
18441         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_yea_itx,
18442         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_yea_itx,
18443         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_yea_itx,
18444         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_yea_itx,
18445         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_yea_itx,
18446         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_yea_itx,
18447         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_yea_itx,
18448         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_yea_itx,
18449         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_yea_itx,
18450         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_yea_itx,
18451         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_yea_itx,
18452         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_yea_itx,
18453         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_yea_itx,
18454         p_col_tot                     => null,
18455         p_object_version_number       => l_object_version_number);
18456     --
18457       if g_debug
18458       and g_detail_debug = 'Y' then
18459         l_archive_step := 215;
18460       end if;
18461     --
18462       pay_jp_itwb_dml_pkg.create_bon_pay(
18463         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18464         p_assignment_action_id        => p_assignment_action_id,
18465         p_action_context_type         => 'AAP',
18466         p_assignment_id               => p_assignment_id,
18467         p_effective_date              => g_effective_date,
18468         p_action_information_category => 'JP_ITWB_BON_PAY',
18469         p_category                    => 'NET_ITX',
18470         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_net_itx,
18471         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_net_itx,
18472         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_net_itx,
18473         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_net_itx,
18474         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_net_itx,
18475         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_net_itx,
18476         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_net_itx,
18477         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_net_itx,
18478         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_net_itx,
18479         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_net_itx,
18480         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_net_itx,
18481         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_net_itx,
18482         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_net_itx,
18483         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_net_itx,
18484         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_net_itx,
18485         p_col_tot                     => null,
18486         p_object_version_number       => l_object_version_number);
18487     --
18488       if g_debug
18489       and g_detail_debug = 'Y' then
18490         l_archive_step := 216;
18491       end if;
18492     --
18493       pay_jp_itwb_dml_pkg.create_bon_pay(
18494         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18495         p_assignment_action_id        => p_assignment_action_id,
18496         p_action_context_type         => 'AAP',
18497         p_assignment_id               => p_assignment_id,
18498         p_effective_date              => g_effective_date,
18499         p_action_information_category => 'JP_ITWB_BON_PAY',
18500         p_category                    => 'LTX_LUMP',
18501         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_ltx_lump,
18502         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_ltx_lump,
18503         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_ltx_lump,
18504         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_ltx_lump,
18505         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_ltx_lump,
18506         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_ltx_lump,
18507         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_ltx_lump,
18508         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_ltx_lump,
18509         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_ltx_lump,
18510         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_ltx_lump,
18511         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_ltx_lump,
18512         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_ltx_lump,
18513         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_ltx_lump,
18514         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_ltx_lump,
18515         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_ltx_lump,
18516         p_col_tot                     => null,
18517         p_object_version_number       => l_object_version_number);
18518     --
18519       if g_debug
18520       and g_detail_debug = 'Y' then
18521         l_archive_step := 217;
18522       end if;
18523     --
18524       pay_jp_itwb_dml_pkg.create_bon_pay(
18525         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18526         p_assignment_action_id        => p_assignment_action_id,
18527         p_action_context_type         => 'AAP',
18528         p_assignment_id               => p_assignment_id,
18529         p_effective_date              => g_effective_date,
18530         p_action_information_category => 'JP_ITWB_BON_PAY',
18531         p_category                    => 'DCT',
18532         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_calc_dct,
18533         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_calc_dct,
18534         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_calc_dct,
18535         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_calc_dct,
18536         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_calc_dct,
18537         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_calc_dct,
18538         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_calc_dct,
18539         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_calc_dct,
18540         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_calc_dct,
18541         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_calc_dct,
18542         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_calc_dct,
18543         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_calc_dct,
18544         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_calc_dct,
18545         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_calc_dct,
18546         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_calc_dct,
18547         p_col_tot                     => null,
18548         p_object_version_number       => l_object_version_number);
18549     --
18550       if g_debug
18551       and g_detail_debug = 'Y' then
18552         l_archive_step := 218;
18553       end if;
18554     --
18555       pay_jp_itwb_dml_pkg.create_bon_pay(
18556         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18557         p_assignment_action_id        => p_assignment_action_id,
18558         p_action_context_type         => 'AAP',
18559         p_assignment_id               => p_assignment_id,
18560         p_effective_date              => g_effective_date,
18561         p_action_information_category => 'JP_ITWB_BON_PAY',
18562         p_category                    => 'NET_PAY',
18563         p_col_cnt1                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_pay_net_pay,
18564         p_col_cnt2                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_pay_net_pay,
18565         p_col_cnt3                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_pay_net_pay,
18566         p_col_cnt4                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_pay_net_pay,
18567         p_col_cnt5                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_pay_net_pay,
18568         p_col_cnt6                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_pay_net_pay,
18569         p_col_cnt7                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_pay_net_pay,
18570         p_col_cnt8                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_pay_net_pay,
18571         p_col_cnt9                    => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_pay_net_pay,
18572         p_col_cnt10                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_pay_net_pay,
18573         p_col_cnt11                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_pay_net_pay,
18574         p_col_cnt12                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_pay_net_pay,
18575         p_col_cnt13                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_pay_net_pay,
18576         p_col_cnt14                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_pay_net_pay,
18577         p_col_cnt15                   => g_data_bon_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_pay_net_pay,
18578         p_col_tot                     => null,
18579         p_object_version_number       => l_object_version_number);
18580     --
18581       if g_debug
18582       and g_detail_debug = 'Y' then
18583         l_archive_step := 219;
18584       end if;
18585     --
18586       set_data_pay_col_tot(
18587         p_assignment_action_id => p_assignment_action_id);
18588     --
18589       if g_debug
18590       and g_detail_debug = 'Y' then
18591         l_archive_step := 220;
18592       end if;
18593     --
18594       if g_body_tbl(p_assignment_action_id).sal_act is not null then
18595       --
18596         l_data_sal_ass_pay_tbl := g_data_pay_tbl(p_assignment_action_id).sal_pay_tbl;
18597       --
18598       end if;
18599     --
18600       if g_body_tbl(p_assignment_action_id).bon_act is not null then
18601       --
18602         l_data_bon_ass_pay_tbl := g_data_pay_tbl(p_assignment_action_id).bon_pay_tbl;
18603       --
18604       end if;
18605     --
18606       if g_debug
18607       and g_detail_debug = 'Y' then
18608         l_archive_step := 221;
18609         hr_utility.trace('l_data_sal_ass_pay_tbl.count : '||to_char(l_data_sal_ass_pay_tbl.count));
18610         hr_utility.trace('l_data_bon_ass_pay_tbl.count : '||to_char(l_data_bon_ass_pay_tbl.count));
18611         hr_utility.trace('g_item_info_ind_tbl.count    : '||to_char(g_item_info_ind_tbl.count));
18612       end if;
18613       --
18614       l_sal_ern_tbl_mth1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_ern_tbl;
18615       l_sal_ern_tbl_mth2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_ern_tbl;
18616       l_sal_ern_tbl_mth3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_ern_tbl;
18617       l_sal_ern_tbl_mth4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_ern_tbl;
18618       l_sal_ern_tbl_mth5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_ern_tbl;
18619       l_sal_ern_tbl_mth6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_ern_tbl;
18620       l_sal_ern_tbl_mth7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_ern_tbl;
18621       l_sal_ern_tbl_mth8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_ern_tbl;
18622       l_sal_ern_tbl_mth9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_ern_tbl;
18623       l_sal_ern_tbl_mth10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_ern_tbl;
18624       l_sal_ern_tbl_mth11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_ern_tbl;
18625       l_sal_ern_tbl_mth12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_ern_tbl;
18626       --
18627       l_sal_dct_tbl_mth1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).sal_dct_tbl;
18628       l_sal_dct_tbl_mth2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).sal_dct_tbl;
18629       l_sal_dct_tbl_mth3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).sal_dct_tbl;
18630       l_sal_dct_tbl_mth4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).sal_dct_tbl;
18631       l_sal_dct_tbl_mth5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).sal_dct_tbl;
18632       l_sal_dct_tbl_mth6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).sal_dct_tbl;
18633       l_sal_dct_tbl_mth7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).sal_dct_tbl;
18634       l_sal_dct_tbl_mth8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).sal_dct_tbl;
18635       l_sal_dct_tbl_mth9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).sal_dct_tbl;
18636       l_sal_dct_tbl_mth10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).sal_dct_tbl;
18637       l_sal_dct_tbl_mth11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).sal_dct_tbl;
18638       l_sal_dct_tbl_mth12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).sal_dct_tbl;
18639       --
18640       l_bon_ern_tbl_cnt1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_ern_tbl;
18641       l_bon_ern_tbl_cnt2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_ern_tbl;
18642       l_bon_ern_tbl_cnt3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_ern_tbl;
18643       l_bon_ern_tbl_cnt4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_ern_tbl;
18644       l_bon_ern_tbl_cnt5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_ern_tbl;
18645       l_bon_ern_tbl_cnt6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_ern_tbl;
18646       l_bon_ern_tbl_cnt7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_ern_tbl;
18647       l_bon_ern_tbl_cnt8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_ern_tbl;
18648       l_bon_ern_tbl_cnt9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_ern_tbl;
18649       l_bon_ern_tbl_cnt10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_ern_tbl;
18650       l_bon_ern_tbl_cnt11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_ern_tbl;
18651       l_bon_ern_tbl_cnt12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_ern_tbl;
18652       l_bon_ern_tbl_cnt13 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_ern_tbl;
18653       l_bon_ern_tbl_cnt14 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_ern_tbl;
18654       l_bon_ern_tbl_cnt15 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_ern_tbl;
18655       --
18656       l_bon_dct_tbl_cnt1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt1,0)).bon_dct_tbl;
18657       l_bon_dct_tbl_cnt2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt2,0)).bon_dct_tbl;
18658       l_bon_dct_tbl_cnt3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt3,0)).bon_dct_tbl;
18659       l_bon_dct_tbl_cnt4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt4,0)).bon_dct_tbl;
18660       l_bon_dct_tbl_cnt5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt5,0)).bon_dct_tbl;
18661       l_bon_dct_tbl_cnt6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt6,0)).bon_dct_tbl;
18662       l_bon_dct_tbl_cnt7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt7,0)).bon_dct_tbl;
18663       l_bon_dct_tbl_cnt8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt8,0)).bon_dct_tbl;
18664       l_bon_dct_tbl_cnt9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt9,0)).bon_dct_tbl;
18665       l_bon_dct_tbl_cnt10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt10,0)).bon_dct_tbl;
18666       l_bon_dct_tbl_cnt11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt11,0)).bon_dct_tbl;
18667       l_bon_dct_tbl_cnt12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt12,0)).bon_dct_tbl;
18668       l_bon_dct_tbl_cnt13 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt13,0)).bon_dct_tbl;
18669       l_bon_dct_tbl_cnt14 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt14,0)).bon_dct_tbl;
18670       l_bon_dct_tbl_cnt15 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).bon_act_act_cnt15,0)).bon_dct_tbl;
18671       --
18672       l_wrk_tbl_mth1  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0)).wrk_tbl;
18673       l_wrk_tbl_mth2  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0)).wrk_tbl;
18674       l_wrk_tbl_mth3  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0)).wrk_tbl;
18675       l_wrk_tbl_mth4  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0)).wrk_tbl;
18676       l_wrk_tbl_mth5  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0)).wrk_tbl;
18677       l_wrk_tbl_mth6  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0)).wrk_tbl;
18678       l_wrk_tbl_mth7  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0)).wrk_tbl;
18679       l_wrk_tbl_mth8  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0)).wrk_tbl;
18680       l_wrk_tbl_mth9  := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0)).wrk_tbl;
18681       l_wrk_tbl_mth10 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0)).wrk_tbl;
18682       l_wrk_tbl_mth11 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0)).wrk_tbl;
18683       l_wrk_tbl_mth12 := g_data_item_tbl(nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0)).wrk_tbl;
18684       --
18685       if g_debug
18686       and g_detail_debug = 'Y' then
18687         l_archive_step := 222;
18688         hr_utility.trace('l_sal_ern_tbl_mth1.count  : '||to_char(l_sal_ern_tbl_mth1.count));
18689         hr_utility.trace('l_sal_ern_tbl_mth2.count  : '||to_char(l_sal_ern_tbl_mth2.count));
18690         hr_utility.trace('l_sal_ern_tbl_mth3.count  : '||to_char(l_sal_ern_tbl_mth3.count));
18691         hr_utility.trace('l_sal_ern_tbl_mth4.count  : '||to_char(l_sal_ern_tbl_mth4.count));
18692         hr_utility.trace('l_sal_ern_tbl_mth5.count  : '||to_char(l_sal_ern_tbl_mth5.count));
18693         hr_utility.trace('l_sal_ern_tbl_mth6.count  : '||to_char(l_sal_ern_tbl_mth6.count));
18694         hr_utility.trace('l_sal_ern_tbl_mth7.count  : '||to_char(l_sal_ern_tbl_mth7.count));
18695         hr_utility.trace('l_sal_ern_tbl_mth8.count  : '||to_char(l_sal_ern_tbl_mth8.count));
18696         hr_utility.trace('l_sal_ern_tbl_mth9.count  : '||to_char(l_sal_ern_tbl_mth9.count));
18697         hr_utility.trace('l_sal_ern_tbl_mth10.count : '||to_char(l_sal_ern_tbl_mth10.count));
18698         hr_utility.trace('l_sal_ern_tbl_mth11.count : '||to_char(l_sal_ern_tbl_mth11.count));
18699         hr_utility.trace('l_sal_ern_tbl_mth12.count : '||to_char(l_sal_ern_tbl_mth12.count));
18700         hr_utility.trace('l_sal_dct_tbl_mth1.count  : '||to_char(l_sal_dct_tbl_mth1.count));
18701         hr_utility.trace('l_sal_dct_tbl_mth2.count  : '||to_char(l_sal_dct_tbl_mth2.count));
18702         hr_utility.trace('l_sal_dct_tbl_mth3.count  : '||to_char(l_sal_dct_tbl_mth3.count));
18703         hr_utility.trace('l_sal_dct_tbl_mth4.count  : '||to_char(l_sal_dct_tbl_mth4.count));
18704         hr_utility.trace('l_sal_dct_tbl_mth5.count  : '||to_char(l_sal_dct_tbl_mth5.count));
18705         hr_utility.trace('l_sal_dct_tbl_mth6.count  : '||to_char(l_sal_dct_tbl_mth6.count));
18706         hr_utility.trace('l_sal_dct_tbl_mth7.count  : '||to_char(l_sal_dct_tbl_mth7.count));
18707         hr_utility.trace('l_sal_dct_tbl_mth8.count  : '||to_char(l_sal_dct_tbl_mth8.count));
18708         hr_utility.trace('l_sal_dct_tbl_mth9.count  : '||to_char(l_sal_dct_tbl_mth9.count));
18709         hr_utility.trace('l_sal_dct_tbl_mth10.count : '||to_char(l_sal_dct_tbl_mth10.count));
18710         hr_utility.trace('l_sal_dct_tbl_mth11.count : '||to_char(l_sal_dct_tbl_mth11.count));
18711         hr_utility.trace('l_sal_dct_tbl_mth12.count : '||to_char(l_sal_dct_tbl_mth12.count));
18712         hr_utility.trace('l_bon_ern_tbl_cnt1.count  : '||to_char(l_bon_ern_tbl_cnt1.count));
18713         hr_utility.trace('l_bon_ern_tbl_cnt2.count  : '||to_char(l_bon_ern_tbl_cnt2.count));
18714         hr_utility.trace('l_bon_ern_tbl_cnt3.count  : '||to_char(l_bon_ern_tbl_cnt3.count));
18715         hr_utility.trace('l_bon_ern_tbl_cnt4.count  : '||to_char(l_bon_ern_tbl_cnt4.count));
18716         hr_utility.trace('l_bon_ern_tbl_cnt5.count  : '||to_char(l_bon_ern_tbl_cnt5.count));
18717         hr_utility.trace('l_bon_ern_tbl_cnt6.count  : '||to_char(l_bon_ern_tbl_cnt6.count));
18718         hr_utility.trace('l_bon_ern_tbl_cnt7.count  : '||to_char(l_bon_ern_tbl_cnt7.count));
18719         hr_utility.trace('l_bon_ern_tbl_cnt8.count  : '||to_char(l_bon_ern_tbl_cnt8.count));
18720         hr_utility.trace('l_bon_ern_tbl_cnt9.count  : '||to_char(l_bon_ern_tbl_cnt9.count));
18721         hr_utility.trace('l_bon_ern_tbl_cnt10.count : '||to_char(l_bon_ern_tbl_cnt10.count));
18722         hr_utility.trace('l_bon_ern_tbl_cnt11.count : '||to_char(l_bon_ern_tbl_cnt11.count));
18723         hr_utility.trace('l_bon_ern_tbl_cnt12.count : '||to_char(l_bon_ern_tbl_cnt12.count));
18724         hr_utility.trace('l_bon_ern_tbl_cnt13.count : '||to_char(l_bon_ern_tbl_cnt13.count));
18725         hr_utility.trace('l_bon_ern_tbl_cnt14.count : '||to_char(l_bon_ern_tbl_cnt14.count));
18726         hr_utility.trace('l_bon_ern_tbl_cnt15.count : '||to_char(l_bon_ern_tbl_cnt15.count));
18727         hr_utility.trace('l_bon_dct_tbl_cnt1.count  : '||to_char(l_bon_dct_tbl_cnt1.count));
18728         hr_utility.trace('l_bon_dct_tbl_cnt2.count  : '||to_char(l_bon_dct_tbl_cnt2.count));
18729         hr_utility.trace('l_bon_dct_tbl_cnt3.count  : '||to_char(l_bon_dct_tbl_cnt3.count));
18730         hr_utility.trace('l_bon_dct_tbl_cnt4.count  : '||to_char(l_bon_dct_tbl_cnt4.count));
18731         hr_utility.trace('l_bon_dct_tbl_cnt5.count  : '||to_char(l_bon_dct_tbl_cnt5.count));
18732         hr_utility.trace('l_bon_dct_tbl_cnt6.count  : '||to_char(l_bon_dct_tbl_cnt6.count));
18733         hr_utility.trace('l_bon_dct_tbl_cnt7.count  : '||to_char(l_bon_dct_tbl_cnt7.count));
18734         hr_utility.trace('l_bon_dct_tbl_cnt8.count  : '||to_char(l_bon_dct_tbl_cnt8.count));
18735         hr_utility.trace('l_bon_dct_tbl_cnt9.count  : '||to_char(l_bon_dct_tbl_cnt9.count));
18736         hr_utility.trace('l_bon_dct_tbl_cnt10.count : '||to_char(l_bon_dct_tbl_cnt10.count));
18737         hr_utility.trace('l_bon_dct_tbl_cnt11.count : '||to_char(l_bon_dct_tbl_cnt11.count));
18738         hr_utility.trace('l_bon_dct_tbl_cnt12.count : '||to_char(l_bon_dct_tbl_cnt12.count));
18739         hr_utility.trace('l_bon_dct_tbl_cnt13.count : '||to_char(l_bon_dct_tbl_cnt13.count));
18740         hr_utility.trace('l_bon_dct_tbl_cnt14.count : '||to_char(l_bon_dct_tbl_cnt14.count));
18741         hr_utility.trace('l_bon_dct_tbl_cnt15.count : '||to_char(l_bon_dct_tbl_cnt15.count));
18742         hr_utility.trace('l_wrk_tbl_mth1.count      : '||to_char(l_wrk_tbl_mth1.count));
18743         hr_utility.trace('l_wrk_tbl_mth2.count      : '||to_char(l_wrk_tbl_mth2.count));
18744         hr_utility.trace('l_wrk_tbl_mth3.count      : '||to_char(l_wrk_tbl_mth3.count));
18745         hr_utility.trace('l_wrk_tbl_mth4.count      : '||to_char(l_wrk_tbl_mth4.count));
18746         hr_utility.trace('l_wrk_tbl_mth5.count      : '||to_char(l_wrk_tbl_mth5.count));
18747         hr_utility.trace('l_wrk_tbl_mth6.count      : '||to_char(l_wrk_tbl_mth6.count));
18748         hr_utility.trace('l_wrk_tbl_mth7.count      : '||to_char(l_wrk_tbl_mth7.count));
18749         hr_utility.trace('l_wrk_tbl_mth8.count      : '||to_char(l_wrk_tbl_mth8.count));
18750         hr_utility.trace('l_wrk_tbl_mth9.count      : '||to_char(l_wrk_tbl_mth9.count));
18751         hr_utility.trace('l_wrk_tbl_mth10.count     : '||to_char(l_wrk_tbl_mth10.count));
18752         hr_utility.trace('l_wrk_tbl_mth11.count     : '||to_char(l_wrk_tbl_mth11.count));
18753         hr_utility.trace('l_wrk_tbl_mth12.count     : '||to_char(l_wrk_tbl_mth12.count));
18754       end if;
18755       --
18756       if l_data_sal_ass_pay_tbl.count > 0
18757       and g_item_info_ind_tbl.count > 0 then
18758       --
18759         if g_debug
18760         and g_detail_debug = 'Y' then
18761           l_archive_step := 223;
18762         end if;
18763       --
18764         for i in 0..l_data_sal_ass_pay_tbl.count - 1 loop
18765         --
18766           if g_debug
18767           and g_detail_debug = 'Y' then
18768             l_archive_step := 224;
18769           end if;
18770         --
18771           if g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_start is not null
18772           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_end is not null
18773           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_start <= g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_end then
18774           --
18775             for j in g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_start..g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_ern_end loop
18776             --
18777               l_skip := false;
18778               if nvl(g_item_info_sal_ern_tbl(j).item_null_valid,'N') = 'Y' then
18779               --
18780                 if valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
18781                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
18782                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
18783                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
18784                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
18785                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
18786                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
18787                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
18788                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
18789                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
18790                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y'
18791                 and valid_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_sal_ern_tbl(j).item_pk) = 'Y' then
18792                 --
18793                   l_skip := true;
18794                 --
18795                 end if;
18796               --
18797               end if;
18798             --
18799               if not l_skip then
18800               --
18801                 -- set col_tot later, set_data_item_col_tot
18802                 pay_jp_itwb_dml_pkg.create_sal_earn(
18803                   p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18804                   p_assignment_action_id        => p_assignment_action_id,
18805                   p_action_context_type         => 'AAP',
18806                   p_assignment_id               => p_assignment_id,
18807                   p_effective_date              => g_effective_date,
18808                   p_action_information_category => 'JP_ITWB_SAL_EARN',
18809                   p_item_pay_id                 => l_data_sal_ass_pay_tbl(i).payroll_id,
18810                   p_item_pay_ord                => l_data_sal_ass_pay_tbl(i).ord_num,
18811                   p_item_type                   => g_item_info_sal_ern_tbl(j).item_type,
18812                   p_item_id                     => g_item_info_sal_ern_tbl(j).item_id,
18813                   p_item_rep_seq                => g_item_info_sal_ern_tbl(j).item_rep_seq,
18814                   p_item_rep_name               => g_item_info_sal_ern_tbl(j).item_rep_name,
18815                   p_col_mth1                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_sal_ern_tbl(j).item_pk),
18816                   p_col_mth2                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_sal_ern_tbl(j).item_pk),
18817                   p_col_mth3                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_sal_ern_tbl(j).item_pk),
18818                   p_col_mth4                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_sal_ern_tbl(j).item_pk),
18819                   p_col_mth5                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_sal_ern_tbl(j).item_pk),
18820                   p_col_mth6                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_sal_ern_tbl(j).item_pk),
18821                   p_col_mth7                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_sal_ern_tbl(j).item_pk),
18822                   p_col_mth8                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_sal_ern_tbl(j).item_pk),
18823                   p_col_mth9                    => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_sal_ern_tbl(j).item_pk),
18824                   p_col_mth10                   => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_sal_ern_tbl(j).item_pk),
18825                   p_col_mth11                   => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_sal_ern_tbl(j).item_pk),
18826                   p_col_mth12                   => sum_data_item_tbl('ERN',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_sal_ern_tbl(j).item_pk),
18827                   p_col_tot                     => null,
18828                   p_object_version_number       => l_object_version_number);
18829               --
18830               end if;
18831             --
18832             end loop;
18833           --
18834           end if;
18835         --
18836           if g_debug
18837           and g_detail_debug = 'Y' then
18838             l_archive_step := 225;
18839           end if;
18840         --
18841           if g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_start is not null
18842           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_end is not null
18843           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_start <= g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_end then
18844           --
18845             for k in g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_start..g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).sal_dct_end loop
18846             --
18847               l_skip := false;
18848               if nvl(g_item_info_sal_dct_tbl(k).item_null_valid,'N') = 'Y' then
18849               --
18850                 if valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
18851                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
18852                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
18853                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
18854                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
18855                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
18856                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
18857                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
18858                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
18859                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
18860                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y'
18861                 and valid_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_sal_dct_tbl(k).item_pk) = 'Y' then
18862                 --
18863                   l_skip := true;
18864                 --
18865                 end if;
18866               --
18867               end if;
18868             --
18869               if not l_skip then
18870               --
18871                 pay_jp_itwb_dml_pkg.create_sal_dct(
18872                   p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18873                   p_assignment_action_id        => p_assignment_action_id,
18874                   p_action_context_type         => 'AAP',
18875                   p_assignment_id               => p_assignment_id,
18876                   p_effective_date              => g_effective_date,
18877                   p_action_information_category => 'JP_ITWB_SAL_DCT',
18878                   p_item_pay_id                 => l_data_sal_ass_pay_tbl(i).payroll_id,
18879                   p_item_pay_ord                => l_data_sal_ass_pay_tbl(i).ord_num,
18880                   p_item_type                   => g_item_info_sal_dct_tbl(k).item_type,
18881                   p_item_id                     => g_item_info_sal_dct_tbl(k).item_id,
18882                   p_item_rep_seq                => g_item_info_sal_dct_tbl(k).item_rep_seq,
18883                   p_item_rep_name               => g_item_info_sal_dct_tbl(k).item_rep_name,
18884                   p_col_mth1                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_sal_dct_tbl(k).item_pk),
18885                   p_col_mth2                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_sal_dct_tbl(k).item_pk),
18886                   p_col_mth3                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_sal_dct_tbl(k).item_pk),
18887                   p_col_mth4                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_sal_dct_tbl(k).item_pk),
18888                   p_col_mth5                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_sal_dct_tbl(k).item_pk),
18889                   p_col_mth6                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_sal_dct_tbl(k).item_pk),
18890                   p_col_mth7                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_sal_dct_tbl(k).item_pk),
18891                   p_col_mth8                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_sal_dct_tbl(k).item_pk),
18892                   p_col_mth9                    => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_sal_dct_tbl(k).item_pk),
18893                   p_col_mth10                   => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_sal_dct_tbl(k).item_pk),
18894                   p_col_mth11                   => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_sal_dct_tbl(k).item_pk),
18895                   p_col_mth12                   => sum_data_item_tbl('DCT',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_sal_dct_tbl(k).item_pk),
18896                   p_col_tot                     => null,
18897                   p_object_version_number       => l_object_version_number);
18898               --
18899               end if;
18900             --
18901             end loop;
18902           --
18903           end if;
18904         --
18905           if g_debug
18906           and g_detail_debug = 'Y' then
18907             l_archive_step := 226;
18908           end if;
18909         --
18910           if g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_start is not null
18911           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_end is not null
18912           and g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_start <= g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_end then
18913           --
18914             for l in g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_start..g_item_info_ind_tbl(l_data_sal_ass_pay_tbl(i).payroll_id).wrk_end loop
18915             --
18916               l_skip := false;
18917               if nvl(g_item_info_wrk_tbl(l).item_null_valid,'N') = 'Y' then
18918               --
18919                 if valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
18920                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
18921                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
18922                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
18923                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
18924                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
18925                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
18926                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
18927                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
18928                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
18929                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_wrk_tbl(l).item_pk) = 'Y'
18930                 and valid_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_wrk_tbl(l).item_pk) = 'Y' then
18931                 --
18932                   l_skip := true;
18933                 --
18934                 end if;
18935               --
18936               end if;
18937             --
18938               if not l_skip then
18939               --
18940                 pay_jp_itwb_dml_pkg.create_wrk(
18941                   p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
18942                   p_assignment_action_id        => p_assignment_action_id,
18943                   p_action_context_type         => 'AAP',
18944                   p_assignment_id               => p_assignment_id,
18945                   p_effective_date              => g_effective_date,
18946                   p_action_information_category => 'JP_ITWB_WRK',
18947                   p_item_pay_id                 => l_data_sal_ass_pay_tbl(i).payroll_id,
18948                   p_item_pay_ord                => l_data_sal_ass_pay_tbl(i).ord_num,
18949                   p_item_type                   => g_item_info_wrk_tbl(l).item_type,
18950                   p_item_id                     => g_item_info_wrk_tbl(l).item_id,
18951                   p_item_rep_seq                => g_item_info_wrk_tbl(l).item_rep_seq,
18952                   p_item_rep_name               => g_item_info_wrk_tbl(l).item_rep_name,
18953                   p_col_mth1                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth1_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth1,0),g_item_info_wrk_tbl(l).item_pk),
18954                   p_col_mth2                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth2_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth2,0),g_item_info_wrk_tbl(l).item_pk),
18955                   p_col_mth3                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth3_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth3,0),g_item_info_wrk_tbl(l).item_pk),
18956                   p_col_mth4                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth4_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth4,0),g_item_info_wrk_tbl(l).item_pk),
18957                   p_col_mth5                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth5_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth5,0),g_item_info_wrk_tbl(l).item_pk),
18958                   p_col_mth6                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth6_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth6,0),g_item_info_wrk_tbl(l).item_pk),
18959                   p_col_mth7                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth7_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth7,0),g_item_info_wrk_tbl(l).item_pk),
18960                   p_col_mth8                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth8_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth8,0),g_item_info_wrk_tbl(l).item_pk),
18961                   p_col_mth9                    => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth9_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth9,0),g_item_info_wrk_tbl(l).item_pk),
18962                   p_col_mth10                   => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth10_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth10,0),g_item_info_wrk_tbl(l).item_pk),
18963                   p_col_mth11                   => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth11_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth11,0),g_item_info_wrk_tbl(l).item_pk),
18964                   p_col_mth12                   => sum_data_item_tbl('WRK',g_body_tbl(p_assignment_action_id).act_mth12_tbl,nvl(g_body_tbl(p_assignment_action_id).sal_act_act_mth12,0),g_item_info_wrk_tbl(l).item_pk),
18965                   p_col_tot                     => null,
18966                   p_object_version_number       => l_object_version_number);
18967               --
18968               end if;
18969             --
18970             end loop;
18971           --
18972           end if;
18973         --
18974           if g_debug
18975           and g_detail_debug = 'Y' then
18976             l_archive_step := 227;
18977           end if;
18978         --
18979         end loop;
18980       --
18981         if g_debug
18982         and g_detail_debug = 'Y' then
18983           l_archive_step := 228;
18984         end if;
18985       --
18986         set_data_item_col_tot(
18987           p_assignment_action_id => p_assignment_action_id,
18988           p_type                 => 'SAL');
18989       --
18990         if g_debug
18991         and g_detail_debug = 'Y' then
18992           l_archive_step := 229;
18993         end if;
18994       --
18995       end if;
18996     --
18997       if g_debug
18998       and g_detail_debug = 'Y' then
18999         l_archive_step := 230;
19000       end if;
19001     --
19002       if l_data_bon_ass_pay_tbl.count > 0
19003       and g_item_info_ind_tbl.count > 0 then
19004       --
19005         if g_debug
19006         and g_detail_debug = 'Y' then
19007           l_archive_step := 231;
19008         end if;
19009       --
19010         for m in 0..l_data_bon_ass_pay_tbl.count - 1 loop
19011         --
19012           if g_debug
19013           and g_detail_debug = 'Y' then
19014             l_archive_step := 232;
19015           end if;
19016         --
19017           if g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_start is not null
19018           and g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_end is not null
19019           and g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_start <= g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_end then
19020           --
19021             for n in g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_start..g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_ern_end loop
19022             --
19023               l_skip := false;
19024               if nvl(g_item_info_bon_ern_tbl(n).item_null_valid,'N') = 'Y' then
19025               --
19026                 if nvl(valid_null_val(l_bon_ern_tbl_cnt1,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19027                 and nvl(valid_null_val(l_bon_ern_tbl_cnt2,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19028                 and nvl(valid_null_val(l_bon_ern_tbl_cnt3,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19029                 and nvl(valid_null_val(l_bon_ern_tbl_cnt4,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19030                 and nvl(valid_null_val(l_bon_ern_tbl_cnt5,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19031                 and nvl(valid_null_val(l_bon_ern_tbl_cnt6,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19032                 and nvl(valid_null_val(l_bon_ern_tbl_cnt7,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19033                 and nvl(valid_null_val(l_bon_ern_tbl_cnt8,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19034                 and nvl(valid_null_val(l_bon_ern_tbl_cnt9,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19035                 and nvl(valid_null_val(l_bon_ern_tbl_cnt10,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19036                 and nvl(valid_null_val(l_bon_ern_tbl_cnt11,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19037                 and nvl(valid_null_val(l_bon_ern_tbl_cnt12,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19038                 and nvl(valid_null_val(l_bon_ern_tbl_cnt13,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19039                 and nvl(valid_null_val(l_bon_ern_tbl_cnt14,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y'
19040                 and nvl(valid_null_val(l_bon_ern_tbl_cnt15,g_item_info_bon_ern_tbl(n).item_pk),'N') = 'Y' then
19041                 --
19042                   l_skip := true;
19043                 --
19044                 end if;
19045               --
19046               end if;
19047             --
19048               if not l_skip then
19049               --
19050                 pay_jp_itwb_dml_pkg.create_bon_earn(
19051                   p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
19052                   p_assignment_action_id        => p_assignment_action_id,
19053                   p_action_context_type         => 'AAP',
19054                   p_assignment_id               => p_assignment_id,
19055                   p_effective_date              => g_effective_date,
19056                   p_action_information_category => 'JP_ITWB_BON_EARN',
19057                   p_item_pay_id                 => l_data_bon_ass_pay_tbl(m).payroll_id,
19058                   p_item_pay_ord                => l_data_bon_ass_pay_tbl(m).ord_num,
19059                   p_item_type                   => g_item_info_bon_ern_tbl(n).item_type,
19060                   p_item_id                     => g_item_info_bon_ern_tbl(n).item_id,
19061                   p_item_rep_seq                => g_item_info_bon_ern_tbl(n).item_rep_seq,
19062                   p_item_rep_name               => g_item_info_bon_ern_tbl(n).item_rep_name,
19063                   p_col_cnt1                    => cnv_null_val(l_bon_ern_tbl_cnt1,g_item_info_bon_ern_tbl(n).item_pk),
19064                   p_col_cnt2                    => cnv_null_val(l_bon_ern_tbl_cnt2,g_item_info_bon_ern_tbl(n).item_pk),
19065                   p_col_cnt3                    => cnv_null_val(l_bon_ern_tbl_cnt3,g_item_info_bon_ern_tbl(n).item_pk),
19066                   p_col_cnt4                    => cnv_null_val(l_bon_ern_tbl_cnt4,g_item_info_bon_ern_tbl(n).item_pk),
19067                   p_col_cnt5                    => cnv_null_val(l_bon_ern_tbl_cnt5,g_item_info_bon_ern_tbl(n).item_pk),
19068                   p_col_cnt6                    => cnv_null_val(l_bon_ern_tbl_cnt6,g_item_info_bon_ern_tbl(n).item_pk),
19069                   p_col_cnt7                    => cnv_null_val(l_bon_ern_tbl_cnt7,g_item_info_bon_ern_tbl(n).item_pk),
19070                   p_col_cnt8                    => cnv_null_val(l_bon_ern_tbl_cnt8,g_item_info_bon_ern_tbl(n).item_pk),
19071                   p_col_cnt9                    => cnv_null_val(l_bon_ern_tbl_cnt9,g_item_info_bon_ern_tbl(n).item_pk),
19072                   p_col_cnt10                   => cnv_null_val(l_bon_ern_tbl_cnt10,g_item_info_bon_ern_tbl(n).item_pk),
19073                   p_col_cnt11                   => cnv_null_val(l_bon_ern_tbl_cnt11,g_item_info_bon_ern_tbl(n).item_pk),
19074                   p_col_cnt12                   => cnv_null_val(l_bon_ern_tbl_cnt12,g_item_info_bon_ern_tbl(n).item_pk),
19075                   p_col_cnt13                   => cnv_null_val(l_bon_ern_tbl_cnt13,g_item_info_bon_ern_tbl(n).item_pk),
19076                   p_col_cnt14                   => cnv_null_val(l_bon_ern_tbl_cnt14,g_item_info_bon_ern_tbl(n).item_pk),
19077                   p_col_cnt15                   => cnv_null_val(l_bon_ern_tbl_cnt15,g_item_info_bon_ern_tbl(n).item_pk),
19078                   p_col_tot                     => null,
19079                   p_object_version_number       => l_object_version_number);
19080               --
19081               end if;
19082             --
19083             end loop;
19084           --
19085           end if;
19086         --
19087           if g_debug
19088           and g_detail_debug = 'Y' then
19089             l_archive_step := 233;
19090           end if;
19091         --
19092           if g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_start is not null
19093           and g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_end is not null
19094           and g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_start <= g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_end then
19095           --
19096             for o in g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_start..g_item_info_ind_tbl(l_data_bon_ass_pay_tbl(m).payroll_id).bon_dct_end loop
19097             --
19098               l_skip := false;
19099               if nvl(g_item_info_bon_dct_tbl(o).item_null_valid,'N') = 'Y' then
19100               --
19101                 if nvl(valid_null_val(l_bon_dct_tbl_cnt1,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19102                 and nvl(valid_null_val(l_bon_dct_tbl_cnt2,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19103                 and nvl(valid_null_val(l_bon_dct_tbl_cnt3,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19104                 and nvl(valid_null_val(l_bon_dct_tbl_cnt4,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19105                 and nvl(valid_null_val(l_bon_dct_tbl_cnt5,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19106                 and nvl(valid_null_val(l_bon_dct_tbl_cnt6,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19107                 and nvl(valid_null_val(l_bon_dct_tbl_cnt7,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19108                 and nvl(valid_null_val(l_bon_dct_tbl_cnt8,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19109                 and nvl(valid_null_val(l_bon_dct_tbl_cnt9,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19110                 and nvl(valid_null_val(l_bon_dct_tbl_cnt10,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19111                 and nvl(valid_null_val(l_bon_dct_tbl_cnt11,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19112                 and nvl(valid_null_val(l_bon_dct_tbl_cnt12,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19113                 and nvl(valid_null_val(l_bon_dct_tbl_cnt13,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19114                 and nvl(valid_null_val(l_bon_dct_tbl_cnt14,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y'
19115                 and nvl(valid_null_val(l_bon_dct_tbl_cnt15,g_item_info_bon_dct_tbl(o).item_pk),'N') = 'Y' then
19116                 --
19117                   l_skip := true;
19118                 --
19119                 end if;
19120               --
19121               end if;
19122             --
19123               if not l_skip then
19124               --
19125                 pay_jp_itwb_dml_pkg.create_bon_dct(
19126                   p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
19127                   p_assignment_action_id        => p_assignment_action_id,
19128                   p_action_context_type         => 'AAP',
19129                   p_assignment_id               => p_assignment_id,
19130                   p_effective_date              => g_effective_date,
19131                   p_action_information_category => 'JP_ITWB_BON_DCT',
19132                   p_item_pay_id                 => l_data_bon_ass_pay_tbl(m).payroll_id,
19133                   p_item_pay_ord                => l_data_bon_ass_pay_tbl(m).ord_num,
19134                   p_item_type                   => g_item_info_bon_dct_tbl(o).item_type,
19135                   p_item_id                     => g_item_info_bon_dct_tbl(o).item_id,
19136                   p_item_rep_seq                => g_item_info_bon_dct_tbl(o).item_rep_seq,
19137                   p_item_rep_name               => g_item_info_bon_dct_tbl(o).item_rep_name,
19138                   p_col_cnt1                    => cnv_null_val(l_bon_dct_tbl_cnt1,g_item_info_bon_dct_tbl(o).item_pk),
19139                   p_col_cnt2                    => cnv_null_val(l_bon_dct_tbl_cnt2,g_item_info_bon_dct_tbl(o).item_pk),
19140                   p_col_cnt3                    => cnv_null_val(l_bon_dct_tbl_cnt3,g_item_info_bon_dct_tbl(o).item_pk),
19141                   p_col_cnt4                    => cnv_null_val(l_bon_dct_tbl_cnt4,g_item_info_bon_dct_tbl(o).item_pk),
19142                   p_col_cnt5                    => cnv_null_val(l_bon_dct_tbl_cnt5,g_item_info_bon_dct_tbl(o).item_pk),
19143                   p_col_cnt6                    => cnv_null_val(l_bon_dct_tbl_cnt6,g_item_info_bon_dct_tbl(o).item_pk),
19144                   p_col_cnt7                    => cnv_null_val(l_bon_dct_tbl_cnt7,g_item_info_bon_dct_tbl(o).item_pk),
19145                   p_col_cnt8                    => cnv_null_val(l_bon_dct_tbl_cnt8,g_item_info_bon_dct_tbl(o).item_pk),
19146                   p_col_cnt9                    => cnv_null_val(l_bon_dct_tbl_cnt9,g_item_info_bon_dct_tbl(o).item_pk),
19147                   p_col_cnt10                   => cnv_null_val(l_bon_dct_tbl_cnt10,g_item_info_bon_dct_tbl(o).item_pk),
19148                   p_col_cnt11                   => cnv_null_val(l_bon_dct_tbl_cnt11,g_item_info_bon_dct_tbl(o).item_pk),
19149                   p_col_cnt12                   => cnv_null_val(l_bon_dct_tbl_cnt12,g_item_info_bon_dct_tbl(o).item_pk),
19150                   p_col_cnt13                   => cnv_null_val(l_bon_dct_tbl_cnt13,g_item_info_bon_dct_tbl(o).item_pk),
19151                   p_col_cnt14                   => cnv_null_val(l_bon_dct_tbl_cnt14,g_item_info_bon_dct_tbl(o).item_pk),
19152                   p_col_cnt15                   => cnv_null_val(l_bon_dct_tbl_cnt15,g_item_info_bon_dct_tbl(o).item_pk),
19153                   p_col_tot                     => null,
19154                   p_object_version_number       => l_object_version_number);
19155               --
19156               end if;
19157             --
19158             end loop;
19159           --
19160           end if;
19161         --
19162           if g_debug
19163           and g_detail_debug = 'Y' then
19164             l_archive_step := 234;
19165           end if;
19166         --
19167         end loop;
19168       --
19169         if g_debug
19170         and g_detail_debug = 'Y' then
19171           l_archive_step := 235;
19172         end if;
19173       --
19174         set_data_item_col_tot(
19175           p_assignment_action_id => p_assignment_action_id,
19176           p_type                 => 'BON');
19177       --
19178         if g_debug
19179         and g_detail_debug = 'Y' then
19180           l_archive_step := 236;
19181         end if;
19182       --
19183       end if;
19184     --
19185       if g_debug
19186       and g_detail_debug = 'Y' then
19187         l_archive_step := 237;
19188       end if;
19189     --
19190       if nvl(g_body_tbl(p_assignment_action_id).pjob_cnt,0) > 0 then
19191       --
19192         for p in 1..15 loop
19193         --
19194           if p = 1 then
19195           --
19196             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind1;
19197           --
19198           elsif p = 2 then
19199           --
19200             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind2;
19201           --
19202           elsif p = 3 then
19203           --
19204             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind3;
19205           --
19206           elsif p = 4 then
19207           --
19208             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind4;
19209           --
19210           elsif p = 5 then
19211           --
19212             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind5;
19213           --
19214           elsif p = 6 then
19215           --
19216             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind6;
19217           --
19218           elsif p = 7 then
19219           --
19220             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind7;
19221           --
19222           elsif p = 8 then
19223           --
19224             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind8;
19225           --
19226           elsif p = 9 then
19227           --
19228             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind9;
19229           --
19230           elsif p = 10 then
19231           --
19232             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind10;
19233           --
19234           elsif p = 11 then
19235           --
19236             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind11;
19237           --
19238           elsif p = 12 then
19239           --
19240             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind12;
19241           --
19242           elsif p = 13 then
19243           --
19244             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind13;
19245           --
19246           elsif p = 14 then
19247           --
19248             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind14;
19249           --
19250           elsif p = 15 then
19251           --
19252             l_pjob_rec_ind := g_data_pjob_ind_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).rec_ind15;
19253           --
19254           end if;
19255         --
19256           if l_pjob_rec_ind is not null then
19257           --
19258             pay_jp_itwb_dml_pkg.create_pjob(
19259               p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
19260               p_assignment_action_id        => p_assignment_action_id,
19261               p_action_context_type         => 'AAP',
19262               p_assignment_id               => p_assignment_id,
19263               p_effective_date              => g_effective_date,
19264               p_action_information_category => 'JP_ITWB_PJOB',
19265               p_term_date                   => g_data_pjob_tbl(l_pjob_rec_ind).term_date,
19266               p_employer_name               => g_data_pjob_tbl(l_pjob_rec_ind).employer_name,
19267               p_employer_name_kana          => g_data_pjob_tbl(l_pjob_rec_ind).employer_name_kana,
19268               p_employer_address            => g_data_pjob_tbl(l_pjob_rec_ind).employer_address,
19269               p_employer_address_kana       => g_data_pjob_tbl(l_pjob_rec_ind).employer_address_kana,
19270               p_txbl_inc                    => g_data_pjob_tbl(l_pjob_rec_ind).txbl_inc,
19271               p_si_prem                     => g_data_pjob_tbl(l_pjob_rec_ind).si_prem,
19272               p_mutual_aid_prem             => g_data_pjob_tbl(l_pjob_rec_ind).mutual_aid_prem,
19273               p_itax                        => g_data_pjob_tbl(l_pjob_rec_ind).itax,
19274               p_object_version_number       => l_object_version_number);
19275           --
19276           end if;
19277         --
19278         end loop;
19279       --
19280       end if;
19281     --
19282       if g_debug
19283       and g_detail_debug = 'Y' then
19284         l_archive_step := 238;
19285       end if;
19286     --
19287       pay_jp_itwb_dml_pkg.create_dep(
19288         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
19289         p_assignment_action_id        => p_assignment_action_id,
19290         p_action_context_type         => 'AAP',
19291         p_assignment_id               => p_assignment_id,
19292         p_effective_date              => g_effective_date,
19293         p_action_information_category => 'JP_ITWB_DEP',
19294         p_dep_itax_type               => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_itx_type,
19295         p_declare_flag                => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_declare_flag,
19296         p_spouse_type                 => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_spouse_type,
19297         p_spouse_flag                 => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_spouse_flag,
19298         p_dep_spouse                  => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_gen_spouse_flag,
19299         p_aged_dep_spouse             => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_elder_spouse_flag,
19300         p_ord_dep_num                 => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_dep,
19301         p_sp_dep_num                  => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_specific_dep,
19302         p_aged_parent_dep_lt_num      => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_elder_parent_lt,
19303         p_aged_dep_num                => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_elder_dep,
19304         p_ord_disable_num             => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_gen_disabled,
19305         p_sp_disable_num              => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_sev_disabled,
19306         p_sp_disable_lt_num           => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_sev_disabled_lt,
19307         p_disable_type                => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_disable_type,
19308         p_widow_type                  => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_widow_type,
19309         p_working_student_type        => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_working_student_type,
19310         p_otsu_spouse_dep_num         => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_num_of_otsu_dep,
19311         p_non_res_flag                => g_data_dpnt_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).dpnt_nres_flag,
19312         p_object_version_number       => l_object_version_number);
19313     --
19314       if g_debug
19315       and g_detail_debug = 'Y' then
19316         l_archive_step := 239;
19317       end if;
19318     --
19319       pay_jp_itwb_dml_pkg.create_yea_act(
19320         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
19321         p_assignment_action_id        => p_assignment_action_id,
19322         p_action_context_type         => 'AAP',
19323         p_assignment_id               => p_assignment_id,
19324         p_effective_date              => g_effective_date,
19325         p_action_information_category => 'JP_ITWB_YEA_ACT',
19326         p_act                         => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_id,
19327         p_efd                         => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_efd,
19328         p_erd                         => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_erd,
19329         p_pay                         => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_pay,
19330         p_yea_type                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_type,
19331         p_yea_flag                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_act_include_flag,
19332         p_object_version_number       => l_object_version_number);
19333     --
19334       if g_debug
19335       and g_detail_debug = 'Y' then
19336         l_archive_step := 240;
19337       end if;
19338     --
19339       pay_jp_itwb_dml_pkg.create_yea_pay(
19340         p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
19341         p_assignment_action_id        => p_assignment_action_id,
19342         p_action_context_type         => 'AAP',
19343         p_assignment_id               => p_assignment_id,
19344         p_effective_date              => g_effective_date,
19345         p_action_information_category => 'JP_ITWB_YEA_PAY',
19346         p_sal_txbl_mon                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_sal_txbl_mon,
19347         p_sal_txbl_kind               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_sal_txbl_kind,
19348         p_sal_txbl                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_sal_txbl,
19349         p_bon_txbl_mon                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_txbl_mon,
19350         p_bon_txbl_kind               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_txbl_kind,
19351         p_bon_txbl                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_txbl,
19352         p_spb_txbl_mon                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_spb_txbl_mon,
19353         p_spb_txbl_kind               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_spb_txbl_kind,
19354         p_spb_txbl                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_spb_txbl,
19355         p_bon_txbl_tot                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_txbl_calc,
19356         p_txbl                        => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_txbl,
19357         p_sal_itx                     => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_sal_itx,
19358         p_bon_itx                     => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_itx,
19359         p_spb_itx                     => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_spb_itx,
19360         p_bon_itx_tot                 => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_bon_itx_calc,
19361         p_withhold_itx                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_pay_withhold_itx_calc,
19362         p_object_version_number       => l_object_version_number);
19363     --
19364       if g_debug
19365       and g_detail_debug = 'Y' then
19366         l_archive_step := 241;
19367       end if;
19368     --
19369       pay_jp_itwb_dml_pkg.create_yea_dct(
19370         p_action_information_id        => pay_jp_itwb_dml_pkg.next_action_information_id,
19371         p_assignment_action_id         => p_assignment_action_id,
19372         p_action_context_type          => 'AAP',
19373         p_assignment_id                => p_assignment_id,
19374         p_effective_date               => g_effective_date,
19375         p_action_information_category  => 'JP_ITWB_YEA_DCT',
19376         p_sal_dct_si_prem              => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sal_dct_si_prem_calc,
19377         p_dec_si_prem                  => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_dec_si_prem,
19378         p_dec_small_comp_mut_aid_prem  => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_dec_sc_mut_prem,
19379         p_life_ins_prem_exm            => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_life_ins_prem_exm,
19380         p_earthquake_ins_prem_exm      => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_eq_ins_prem_exm,
19381         p_spouse_sp_exm                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_spouse_sp_exm,
19382         p_basic_exm                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_basic_exm,
19383         p_gen_spouse_exm               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_gen_spouse_exm,
19384         p_elder_spouse_exm             => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_elder_spouse_exm,
19385         p_gen_dep_exm                  => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_gen_dep_exm,
19386         p_specific_dep_exm             => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_specific_dep_exm,
19387         p_junior_dep_exm               => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_junior_dep_exm,
19388         p_elder_dep_exm                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_elder_dep_exm,
19389         p_elder_parent_lt_exm          => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_elder_parent_lt_exm,
19390         p_gen_disabled_exm             => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_gen_disabled_exm,
19391         p_sev_disabled_exm             => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sev_disabled_exm,
19392         p_sev_disabled_lt_exm          => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sev_disabled_lt_exm,
19393         p_elder_exm                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_elder_exm,
19394         p_widow_exm                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_widow_exm,
19395         p_sp_widow_exm                 => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sp_widow_exm,
19396         p_working_student_exm          => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_working_student_exm,
19397         p_dep_exm                      => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_dep_exm_calc,
19398         p_spouse_income                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_spouse_income,
19399         p_individual_pension_prem      => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_ind_pension_prem,
19400         p_long_term_nonlife_ins_prem   => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_lt_nonlife_ins_prem,
19401         p_small_comp_mut_aid_prem      => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_sc_mut_prem_calc,
19402         p_national_pension_prem        => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_national_pension_prem,
19403         p_income_exm                   => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_dct_income_exm,
19404         p_object_version_number        => l_object_version_number);
19405     --
19406       if g_debug
19407       and g_detail_debug = 'Y' then
19408         l_archive_step := 242;
19409       end if;
19410     --
19411       pay_jp_itwb_dml_pkg.create_yea_tax(
19412         p_action_information_id          => pay_jp_itwb_dml_pkg.next_action_information_id,
19413         p_assignment_action_id           => p_assignment_action_id,
19414         p_action_context_type            => 'AAP',
19415         p_assignment_id                  => p_assignment_id,
19416         p_effective_date                 => g_effective_date,
19417         p_action_information_category    => 'JP_ITWB_YEA_TAX',
19418         p_amt_aft_emp_inc_dct            => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_amt_aft_emp_inc_dct,
19419         p_net_txbl_income                => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_net_txbl_income,
19420         p_annual_tax                     => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_annual_tax,
19421         p_act_housing_loan_tax_credit    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_act_housing_loan,
19422         p_yea_annual_tax                 => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_yea_annual_tax,
19423         p_yea_income_tax                 => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_yea_income_tax,
19424         p_yea_tax_pay                    => g_data_yea_tbl(nvl(g_body_tbl(p_assignment_action_id).yea_act,0)).yea_tax_yea_tax_pay,
19425         p_object_version_number          => l_object_version_number);
19426     --
19427       if g_debug
19428       and g_detail_debug = 'Y' then
19429         l_archive_step := 243;
19430       end if;
19431     --
19432       if g_org_cust_proc is not null then
19433       --
19434         if g_debug
19435         and g_detail_debug = 'Y' then
19436           l_archive_step := 244;
19437         end if;
19438       --
19439         pay_jp_itwb_dml_pkg.create_emp_cust(
19440           p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
19441           p_assignment_action_id        => p_assignment_action_id,
19442           p_action_context_type         => 'AAP',
19443           p_assignment_id               => p_assignment_id,
19444           p_effective_date              => g_effective_date,
19445           p_action_information_category => 'JP_ITWB_EMP_CUST',
19446           p_data_type                   => 'T',
19447           p_information1                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information1,
19448           p_information2                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information2,
19449           p_information3                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information3,
19450           p_information4                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information4,
19451           p_information5                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information5,
19452           p_information6                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information6,
19453           p_information7                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information7,
19454           p_information8                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information8,
19455           p_information9                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information9,
19456           p_information10               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information10,
19457           p_information11               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information11,
19458           p_information12               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information12,
19459           p_information13               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information13,
19460           p_information14               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information14,
19461           p_information15               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information15,
19462           p_information16               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information16,
19463           p_information17               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information17,
19464           p_information18               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information18,
19465           p_information19               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information19,
19466           p_information20               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information20,
19467           p_information21               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information21,
19468           p_information22               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information22,
19469           p_information23               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information23,
19470           p_information24               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information24,
19471           p_information25               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).txt_information25,
19472           p_object_version_number       => l_object_version_number);
19473       --
19474         if g_debug
19475         and g_detail_debug = 'Y' then
19476           l_archive_step := 245;
19477         end if;
19478       --
19479         pay_jp_itwb_dml_pkg.create_emp_cust(
19480           p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
19481           p_assignment_action_id        => p_assignment_action_id,
19482           p_action_context_type         => 'AAP',
19483           p_assignment_id               => p_assignment_id,
19484           p_effective_date              => g_effective_date,
19485           p_action_information_category => 'JP_ITWB_EMP_CUST',
19486           p_data_type                   => 'D',
19487           p_information1                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information1,
19488           p_information2                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information2,
19489           p_information3                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information3,
19490           p_information4                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information4,
19491           p_information5                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information5,
19492           p_information6                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information6,
19493           p_information7                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information7,
19494           p_information8                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information8,
19495           p_information9                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information9,
19496           p_information10               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information10,
19497           p_information11               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information11,
19498           p_information12               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information12,
19499           p_information13               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information13,
19500           p_information14               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information14,
19501           p_information15               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information15,
19502           p_information16               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information16,
19503           p_information17               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information17,
19504           p_information18               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information18,
19505           p_information19               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information19,
19506           p_information20               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information20,
19507           p_information21               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information21,
19508           p_information22               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information22,
19509           p_information23               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information23,
19510           p_information24               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information24,
19511           p_information25               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).date_information25,
19512           p_object_version_number       => l_object_version_number);
19513       --
19514         if g_debug
19515         and g_detail_debug = 'Y' then
19516           l_archive_step := 246;
19517         end if;
19518       --
19519         pay_jp_itwb_dml_pkg.create_emp_cust(
19520           p_action_information_id       => pay_jp_itwb_dml_pkg.next_action_information_id,
19521           p_assignment_action_id        => p_assignment_action_id,
19522           p_action_context_type         => 'AAP',
19523           p_assignment_id               => p_assignment_id,
19524           p_effective_date              => g_effective_date,
19525           p_action_information_category => 'JP_ITWB_EMP_CUST',
19526           p_data_type                   => 'N',
19527           p_information1                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information1,
19528           p_information2                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information2,
19529           p_information3                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information3,
19530           p_information4                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information4,
19531           p_information5                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information5,
19532           p_information6                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information6,
19533           p_information7                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information7,
19534           p_information8                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information8,
19535           p_information9                => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information9,
19536           p_information10               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information10,
19537           p_information11               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information11,
19538           p_information12               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information12,
19539           p_information13               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information13,
19540           p_information14               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information14,
19541           p_information15               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information15,
19542           p_information16               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information16,
19543           p_information17               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information17,
19544           p_information18               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information18,
19545           p_information19               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information19,
19546           p_information20               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information20,
19547           p_information21               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information21,
19548           p_information22               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information22,
19549           p_information23               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information23,
19550           p_information24               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information24,
19551           p_information25               => g_data_cust_tbl(g_body_tbl(p_assignment_action_id).assact_proc_ass_action_id).num_information25,
19552           p_object_version_number       => l_object_version_number);
19553       --
19554         if g_debug
19555         and g_detail_debug = 'Y' then
19556           l_archive_step := 247;
19557         end if;
19558       --
19559       end if;
19560     --
19561     end if;
19562   --
19563     if g_debug
19564     and g_detail_debug = 'Y' then
19565       l_archive_step := 248;
19566     end if;
19567   --
19568     fnd_file.put_line(fnd_file.output,to_char(p_assignment_id)||' : '||to_char(p_assignment_action_id)||'   '||
19569       g_body_tbl(p_assignment_action_id).emp_employee_number||'  '||
19570       g_body_tbl(p_assignment_action_id).emp_last_name_kana||' '||g_body_tbl(p_assignment_action_id).emp_first_name_kana);
19571   --
19572   else
19573   --
19574     if g_debug
19575     and g_detail_debug = 'Y' then
19576       l_archive_step := 249;
19577       hr_utility.trace('mismatch assignment_action_id : g_body_tbl : '||to_char(l_arch_assignment_action_id)||' <> p_assignment_action_id : '||to_char(p_assignment_action_id));
19578     end if;
19579   --
19580   end if;
19581 --
19582   if g_debug
19583   and g_detail_debug = 'Y' then
19584     l_archive_step := 1000;
19585     hr_utility.trace('archive_step : '||to_char(l_archive_step));
19586     hr_utility.set_location(l_proc,1000);
19587   end if;
19588 --
19589 exception
19590 when no_data_found then
19591 --
19592   if g_debug then
19593   --
19594     hr_utility.trace('no chache g_body_tbl : p_assignment_action_id : '||to_char(p_assignment_action_id));
19595     hr_utility.trace('g_body_tbl count : '||to_char(g_body_tbl.count));
19596   --
19597     if g_detail_debug = 'Y' then
19598     --
19599       hr_utility.trace('archive_step : '||to_char(l_archive_step));
19600     --
19601       for i in g_body_tbl.first..g_body_tbl.last loop
19602       --
19603         hr_utility.trace('g_body_tbl('||to_char(i)||').arch_assignment_action_id : '||to_char(g_body_tbl(i).arch_assignment_action_id));
19604         hr_utility.trace('g_body_tbl('||to_char(i)||').assact_proc_ass_action_id : '||to_char(g_body_tbl(i).assact_proc_ass_action_id));
19605       --
19606       end loop;
19607     --
19608     end if;
19609   --
19610   end if;
19611 --
19612 when others then
19613 --
19614   l_error_code := sqlcode;
19615   l_error_mesg := substrb(sqlerrm,1,100);
19616 --
19617   hr_utility.trace('archive_assact error : '||l_error_code||' : '||l_error_mesg);
19618 --
19619   if g_debug
19620   and g_detail_debug = 'Y' then
19621     hr_utility.trace('archive_step : '||to_char(l_archive_step));
19622   end if;
19623 --
19624   raise;
19625 --
19626 end archive_assact;
19627 --
19628 -- -------------------------------------------------------------------------
19629 -- post_assact
19630 -- -------------------------------------------------------------------------
19631 --procedure post_assact(
19632 --  p_assignment_action_id in number,
19633 --  p_assignment_id        in number)
19634 --is
19635 ----
19636 --  l_proc varchar2(80) := c_package||'post_assact';
19637 ----
19638 --begin
19639 ----
19640 --  if g_debug then
19641 --    hr_utility.set_location(l_proc,0);
19642 --  end if;
19643 ----
19644 ----
19645 --  if g_debug then
19646 --    hr_utility.set_location(l_proc,1000);
19647 --  end if;
19648 ----
19649 --end post_assact;
19650 --
19651 -- -------------------------------------------------------------------------
19652 -- archive_data
19653 -- -------------------------------------------------------------------------
19654 procedure archive_data(
19655   p_assignment_action_id in number,
19656   p_effective_date       in date)
19657 is
19658 --
19659   l_proc varchar2(80) := c_package||'archive_data';
19660 --
19661   l_assignment_id number;
19662 --
19663 begin
19664 --
19665   if g_debug then
19666     hr_utility.set_location(l_proc,0);
19667   end if;
19668 --
19669   select assignment_id
19670   into   l_assignment_id
19671   from   pay_assignment_actions
19672   where  assignment_action_id = p_assignment_action_id;
19673 --
19674   if g_debug then
19675     hr_utility.set_location(l_proc,10);
19676     hr_utility.trace('archive_data p_assignment_action_id : '||to_char(p_assignment_action_id));
19677     hr_utility.trace('archive_data l_assignment_id        : '||to_char(l_assignment_id));
19678   end if;
19679 --
19680   --init_assact(
19681   --  p_assignment_action_id => p_assignment_action_id,
19682   --  p_assignment_id        => l_assignment_id);
19683 --
19684   --if g_debug then
19685   --  hr_utility.set_location(l_proc,20);
19686   --end if;
19687 --
19688   archive_assact(
19689     p_assignment_action_id => p_assignment_action_id,
19690     p_assignment_id        => l_assignment_id);
19691 --
19692   if g_debug then
19693     hr_utility.set_location(l_proc,20);
19694   end if;
19695 --
19696   --post_assact(
19697   --  p_assignment_action_id => p_assignment_action_id,
19698   --  p_assignment_id        => l_assignment_id);
19699 --
19700   if g_debug then
19701     hr_utility.set_location(l_proc,1000);
19702   end if;
19703 --
19704 end archive_data;
19705 --
19706 -- -------------------------------------------------------------------------
19707 -- deinitialize_code
19708 -- -------------------------------------------------------------------------
19709 procedure deinitialize_code(
19710   p_payroll_action_id in number)
19711 is
19712 --
19713   l_proc varchar2(80) := c_package||'deinitialize_code';
19714 --
19715 begin
19716 --
19717   if g_debug then
19718     hr_utility.set_location(l_proc,0);
19719   end if;
19720 --
19721 --  archive_pact(p_payroll_action_id);
19722 --
19723   g_per_ind_tbl.delete;
19724   g_ass_tbl.delete;
19725   g_body_tbl.delete;
19726 --
19727   g_data_pay_tbl.delete;
19728   g_data_sal_tbl.delete;
19729   g_data_bon_tbl.delete;
19730   g_data_yea_tbl.delete;
19731   g_data_pjob_ind_tbl.delete;
19732   g_data_pjob_tbl.delete;
19733   g_data_dpnt_tbl.delete;
19734 --
19735   g_data_sal_ass_pay_tbl.delete;
19736   g_data_bon_ass_pay_tbl.delete;
19737   g_arch_sal_ass_pay_tbl.delete;
19738   g_arch_bon_ass_pay_tbl.delete;
19739 --
19740   g_data_sal_ass_pay_ind_tbl.delete;
19741   g_data_bon_ass_pay_ind_tbl.delete;
19742   g_arch_sal_ass_pay_ind_tbl.delete;
19743   g_arch_bon_ass_pay_ind_tbl.delete;
19744 --
19745   g_data_item_act_sal_ern_tbl.delete;
19746   g_data_item_act_sal_dct_tbl.delete;
19747   g_data_item_act_bon_ern_tbl.delete;
19748   g_data_item_act_bon_dct_tbl.delete;
19749   g_data_item_act_wrk_tbl.delete;
19750 --
19751   g_item_info_ind_tbl.delete;
19752   g_item_info_sal_ern_tbl.delete;
19753   g_item_info_sal_dct_tbl.delete;
19754   g_item_info_bon_ern_tbl.delete;
19755   g_item_info_bon_dct_tbl.delete;
19756   g_item_info_wrk_tbl.delete;
19757   g_data_item_tbl.delete;
19758 --
19759   g_wng_tbl.delete;
19760   g_yea_wic_tbl.delete;
19761 --
19762   if g_debug then
19763     hr_utility.set_location(l_proc,1000);
19764   end if;
19765 --
19766 end deinitialize_code;
19767 --
19768 end pay_jp_itwb_archive_pkg;