213: g_precision NUMBER; -- For Bug 2916848 Ilo Mrc Ehnc.
214: g_ext_precision NUMBER; -- For Bug 2916848 Ilo Mrc Ehnc.
215:
216: -- Introduced the following for bug fix 3462452
217: --g_debug BOOLEAN DEFAULT hr_utility.debug_enabled;
218: g_package_name VARCHAR2(31) DEFAULT 'PSP_ENC_CREATE_LINES.';
219: -- End of bug fix 3462452
220:
221: g_dff_grouping_option CHAR(1); -- Introduced for bug fix 2908859
867: AND pee.effective_end_date >= ff.effective_start_date;
868:
869: BEGIN
870: l_proc_step:= 10;
871: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering ' || l_proc_name);
872: hr_utility.trace('p_assignment_id: ' || fnd_number.number_to_canonical(p_assignment_id) ||
873: ' p_element_type_id: ' || fnd_number.number_to_canonical(p_element_type_id) ||
874: ' p_payroll_id: ' || fnd_number.number_to_canonical(p_payroll_id) ||
875: ' p_business_group_id: ' || fnd_number.number_to_canonical(p_business_group_id) ||
868:
869: BEGIN
870: l_proc_step:= 10;
871: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering ' || l_proc_name);
872: hr_utility.trace('p_assignment_id: ' || fnd_number.number_to_canonical(p_assignment_id) ||
873: ' p_element_type_id: ' || fnd_number.number_to_canonical(p_element_type_id) ||
874: ' p_payroll_id: ' || fnd_number.number_to_canonical(p_payroll_id) ||
875: ' p_business_group_id: ' || fnd_number.number_to_canonical(p_business_group_id) ||
876: ' p_set_of_books_id: ' || fnd_number.number_to_canonical(p_set_of_books_id) ||
892: OPEN formula_date_cur;
893: FETCH formula_date_cur BULK COLLECT INTO t_ff_start_date, t_ff_end_date;
894: CLOSE formula_date_cur;
895:
896: hr_utility.trace('t_ff_start_date.COUNT: ' || t_ff_start_date.COUNT);
897: END IF;
898:
899: OPEN get_no_per_fiscal_year_csr;
900: FETCH get_no_per_fiscal_year_csr INTO l_num_per_fiscal_year;
919: CLOSE get_element_entry;
920:
921: l_proc_step:= 50;
922:
923: hr_utility.trace('l_num_per_fiscal_year: ' || fnd_number.number_to_canonical(l_num_per_fiscal_year) ||
924: ' r_salary_proposal.r_change_date.COUNT: ' || fnd_number.number_to_canonical(r_salary_proposal.r_change_date.COUNT) ||
925: ' r_element_entry.r_element_start_date.COUNT: ' || fnd_number.number_to_canonical(r_element_entry.r_element_start_date.COUNT));
926: hr_utility.trace('Calculating Assignment Chunk Amounts...');
927:
922:
923: hr_utility.trace('l_num_per_fiscal_year: ' || fnd_number.number_to_canonical(l_num_per_fiscal_year) ||
924: ' r_salary_proposal.r_change_date.COUNT: ' || fnd_number.number_to_canonical(r_salary_proposal.r_change_date.COUNT) ||
925: ' r_element_entry.r_element_start_date.COUNT: ' || fnd_number.number_to_canonical(r_element_entry.r_element_start_date.COUNT));
926: hr_utility.trace('Calculating Assignment Chunk Amounts...');
927:
928: FOR I IN 1..r_enc_period.r_time_period_id.COUNT
929: LOOP
930: IF (r_enc_period.r_process_flag(I) <> 'I') THEN
936: l_bus_working_days := psp_general.business_days(l_period_start_date, l_period_end_date,p_assignment_id);
937: l_enc_amount := 0;
938: l_proc_step:= 60 + (I / 100000);
939:
940: hr_utility.trace('I: ' || fnd_number.number_to_canonical(I) ||
941: ' l_period_start_date: ' || fnd_date.date_to_canonical(l_period_start_date) ||
942: ' l_period_end_date: ' || fnd_date.date_to_canonical(l_period_end_date) ||
943: ' l_asg_start_date: ' || fnd_date.date_to_canonical(l_asg_start_date) ||
944: ' l_asg_end_date: ' || fnd_date.date_to_canonical(l_asg_end_date) ||
956: p_element_type_id => p_element_type_id,
957: p_time_period_id => r_enc_period.r_time_period_id(I),
958: p_asg_start_date => l_asg_start_date,
959: p_asg_end_date => l_asg_end_date);
960: hr_utility.trace('l_enc_amount: ' || fnd_number.number_to_canonical(l_enc_amount));
961:
962: IF (l_enc_amount = 0) THEN
963: IF (l_formula_id IS NOT NULL) THEN
964: IF ( (t_ff_start_date.COUNT > 0) AND
967: FOR ff_recno IN 1..t_ff_start_date.COUNT
968: LOOP
969: l_asg_start_date := r_enc_period.r_asg_start_date(I);
970: l_asg_end_date := r_enc_period.r_asg_end_date(I);
971: hr_utility.trace('l_asg_start_date: ' || l_asg_start_date || ' l_asg_end_date: ' || l_asg_end_date || ' t_ff_start_date(ff_recno): ' || t_ff_start_date(ff_recno) || ' t_ff_end_date(ff_recno): ' || t_ff_end_date(ff_recno));
972: IF l_asg_start_date <= t_ff_end_date(ff_recno) AND
973: l_asg_end_date >= t_ff_start_date(ff_recno) THEN
974: l_asg_start_date := GREATEST(l_asg_start_date, t_ff_start_date(ff_recno));
975: l_asg_end_date := LEAST(l_asg_end_date, t_ff_end_date(ff_recno));
976: l_inputs.DELETE;
977: l_outputs.DELETE;
978:
979: ff_exec.init_formula(l_formula_id, l_asg_start_date, l_inputs,l_outputs);
980: hr_utility.trace('Initiated Formula l_asg_start_date: ' || fnd_date.date_to_canonical(l_asg_start_date) || ' l_asg_end_date: ' || fnd_date.date_to_canonical(l_asg_end_date));
981:
982: hr_utility.trace('l_inputs.COUNT: ' || l_inputs.COUNT);
983: FOR recno IN 1..l_inputs.COUNT
984: LOOP
978:
979: ff_exec.init_formula(l_formula_id, l_asg_start_date, l_inputs,l_outputs);
980: hr_utility.trace('Initiated Formula l_asg_start_date: ' || fnd_date.date_to_canonical(l_asg_start_date) || ' l_asg_end_date: ' || fnd_date.date_to_canonical(l_asg_end_date));
981:
982: hr_utility.trace('l_inputs.COUNT: ' || l_inputs.COUNT);
983: FOR recno IN 1..l_inputs.COUNT
984: LOOP
985: IF (l_inputs(recno).name ='PERSON_ID') THEN
986: l_inputs(recno).value := fnd_number.number_to_canonical(p_person_id);
983: FOR recno IN 1..l_inputs.COUNT
984: LOOP
985: IF (l_inputs(recno).name ='PERSON_ID') THEN
986: l_inputs(recno).value := fnd_number.number_to_canonical(p_person_id);
987: hr_utility.trace('Assigned person_id');
988: ELSIF (l_inputs(recno).name ='ASSIGNMENT_ID') THEN
989: l_inputs(recno).value := fnd_number.number_to_canonical(p_assignment_id);
990: hr_utility.trace('Assigned assignment_id');
991: ELSIF l_inputs(recno).name='ELEMENT_TYPE_ID' THEN
986: l_inputs(recno).value := fnd_number.number_to_canonical(p_person_id);
987: hr_utility.trace('Assigned person_id');
988: ELSIF (l_inputs(recno).name ='ASSIGNMENT_ID') THEN
989: l_inputs(recno).value := fnd_number.number_to_canonical(p_assignment_id);
990: hr_utility.trace('Assigned assignment_id');
991: ELSIF l_inputs(recno).name='ELEMENT_TYPE_ID' THEN
992: l_inputs(recno).value := fnd_number.number_to_canonical(p_element_type_id);
993: hr_utility.trace('Assigned element_type_id');
994: ELSIF l_inputs(recno).name='PAYROLL_ID' THEN
989: l_inputs(recno).value := fnd_number.number_to_canonical(p_assignment_id);
990: hr_utility.trace('Assigned assignment_id');
991: ELSIF l_inputs(recno).name='ELEMENT_TYPE_ID' THEN
992: l_inputs(recno).value := fnd_number.number_to_canonical(p_element_type_id);
993: hr_utility.trace('Assigned element_type_id');
994: ELSIF l_inputs(recno).name='PAYROLL_ID' THEN
995: l_inputs(recno).value := fnd_number.number_to_canonical(p_payroll_id);
996: hr_utility.trace('Assigned payroll_id');
997: ELSIF l_inputs(recno).name='TIME_PERIOD_ID' THEN
992: l_inputs(recno).value := fnd_number.number_to_canonical(p_element_type_id);
993: hr_utility.trace('Assigned element_type_id');
994: ELSIF l_inputs(recno).name='PAYROLL_ID' THEN
995: l_inputs(recno).value := fnd_number.number_to_canonical(p_payroll_id);
996: hr_utility.trace('Assigned payroll_id');
997: ELSIF l_inputs(recno).name='TIME_PERIOD_ID' THEN
998: l_inputs(recno).value := fnd_number.number_to_canonical(r_enc_period.r_time_period_id(I));
999: hr_utility.trace('Assigned time_period_id');
1000: ELSIF l_inputs(recno).name='ASG_START_DATE' THEN
995: l_inputs(recno).value := fnd_number.number_to_canonical(p_payroll_id);
996: hr_utility.trace('Assigned payroll_id');
997: ELSIF l_inputs(recno).name='TIME_PERIOD_ID' THEN
998: l_inputs(recno).value := fnd_number.number_to_canonical(r_enc_period.r_time_period_id(I));
999: hr_utility.trace('Assigned time_period_id');
1000: ELSIF l_inputs(recno).name='ASG_START_DATE' THEN
1001: l_inputs(recno).value := fnd_date.date_to_canonical(l_asg_start_date);
1002: hr_utility.trace('Assigned asg_start_date');
1003: ELSIF l_inputs(recno).name='ASG_END_DATE' THEN
998: l_inputs(recno).value := fnd_number.number_to_canonical(r_enc_period.r_time_period_id(I));
999: hr_utility.trace('Assigned time_period_id');
1000: ELSIF l_inputs(recno).name='ASG_START_DATE' THEN
1001: l_inputs(recno).value := fnd_date.date_to_canonical(l_asg_start_date);
1002: hr_utility.trace('Assigned asg_start_date');
1003: ELSIF l_inputs(recno).name='ASG_END_DATE' THEN
1004: l_inputs(recno).value := fnd_date.date_to_canonical(l_asg_end_date);
1005: hr_utility.trace('Assigned asg_end_date');
1006: ELSIF l_inputs(recno).name='BUS_DAYS_IN_CHUNK' THEN
1001: l_inputs(recno).value := fnd_date.date_to_canonical(l_asg_start_date);
1002: hr_utility.trace('Assigned asg_start_date');
1003: ELSIF l_inputs(recno).name='ASG_END_DATE' THEN
1004: l_inputs(recno).value := fnd_date.date_to_canonical(l_asg_end_date);
1005: hr_utility.trace('Assigned asg_end_date');
1006: ELSIF l_inputs(recno).name='BUS_DAYS_IN_CHUNK' THEN
1007: l_inputs(recno).value := fnd_number.number_to_canonical(psp_general.business_days(l_asg_start_date, l_asg_end_date,p_assignment_id));
1008: hr_utility.trace('Assigned business days in chunk');
1009: ELSIF l_inputs(recno).name='PERIOD_START_DATE' THEN
1004: l_inputs(recno).value := fnd_date.date_to_canonical(l_asg_end_date);
1005: hr_utility.trace('Assigned asg_end_date');
1006: ELSIF l_inputs(recno).name='BUS_DAYS_IN_CHUNK' THEN
1007: l_inputs(recno).value := fnd_number.number_to_canonical(psp_general.business_days(l_asg_start_date, l_asg_end_date,p_assignment_id));
1008: hr_utility.trace('Assigned business days in chunk');
1009: ELSIF l_inputs(recno).name='PERIOD_START_DATE' THEN
1010: l_inputs(recno).value := fnd_date.date_to_canonical(l_period_start_date);
1011: hr_utility.trace('Assigned period_start_date');
1012: ELSIF l_inputs(recno).name='PERIOD_END_DATE' THEN
1007: l_inputs(recno).value := fnd_number.number_to_canonical(psp_general.business_days(l_asg_start_date, l_asg_end_date,p_assignment_id));
1008: hr_utility.trace('Assigned business days in chunk');
1009: ELSIF l_inputs(recno).name='PERIOD_START_DATE' THEN
1010: l_inputs(recno).value := fnd_date.date_to_canonical(l_period_start_date);
1011: hr_utility.trace('Assigned period_start_date');
1012: ELSIF l_inputs(recno).name='PERIOD_END_DATE' THEN
1013: l_inputs(recno).value := fnd_date.date_to_canonical(l_period_end_date);
1014: hr_utility.trace('Assigned period_end_date');
1015: ELSIF l_inputs(recno).name='BUS_DAYS_IN_PERIOD' THEN
1010: l_inputs(recno).value := fnd_date.date_to_canonical(l_period_start_date);
1011: hr_utility.trace('Assigned period_start_date');
1012: ELSIF l_inputs(recno).name='PERIOD_END_DATE' THEN
1013: l_inputs(recno).value := fnd_date.date_to_canonical(l_period_end_date);
1014: hr_utility.trace('Assigned period_end_date');
1015: ELSIF l_inputs(recno).name='BUS_DAYS_IN_PERIOD' THEN
1016: l_inputs(recno).value := fnd_number.number_to_canonical(psp_general.business_days(l_period_start_date, l_period_end_date,p_assignment_id));
1017: hr_utility.trace('Assigned business days in period');
1018: ELSIF l_inputs(recno).name='UOM' THEN
1013: l_inputs(recno).value := fnd_date.date_to_canonical(l_period_end_date);
1014: hr_utility.trace('Assigned period_end_date');
1015: ELSIF l_inputs(recno).name='BUS_DAYS_IN_PERIOD' THEN
1016: l_inputs(recno).value := fnd_number.number_to_canonical(psp_general.business_days(l_period_start_date, l_period_end_date,p_assignment_id));
1017: hr_utility.trace('Assigned business days in period');
1018: ELSIF l_inputs(recno).name='UOM' THEN
1019: l_inputs(recno).value := g_uom;
1020: hr_utility.trace('Assigned UOM');
1021:
1016: l_inputs(recno).value := fnd_number.number_to_canonical(psp_general.business_days(l_period_start_date, l_period_end_date,p_assignment_id));
1017: hr_utility.trace('Assigned business days in period');
1018: ELSIF l_inputs(recno).name='UOM' THEN
1019: l_inputs(recno).value := g_uom;
1020: hr_utility.trace('Assigned UOM');
1021:
1022: END IF;
1023: END LOOP;
1024:
1021:
1022: END IF;
1023: END LOOP;
1024:
1025: hr_utility.trace('Before executing fast formula');
1026: ff_exec.run_formula(l_inputs, l_outputs);
1027: l_enc_amount := l_enc_amount + fnd_number.canonical_to_number(l_outputs(1).value); -- Bug 7536024
1028: hr_utility.trace('After executing fast formula; l_enc_amount: ' || l_enc_amount);
1029: END IF;
1024:
1025: hr_utility.trace('Before executing fast formula');
1026: ff_exec.run_formula(l_inputs, l_outputs);
1027: l_enc_amount := l_enc_amount + fnd_number.canonical_to_number(l_outputs(1).value); -- Bug 7536024
1028: hr_utility.trace('After executing fast formula; l_enc_amount: ' || l_enc_amount);
1029: END IF;
1030: END LOOP;
1031: END IF;
1032: l_calculate_period_amt := FALSE;
1043: l_annualization_factor := r_salary_proposal.r_pay_annualization_factor(J);
1044: l_pay_basis := r_salary_proposal.r_pay_basis(J);
1045: l_proc_step:= 70 + (J / 100000);
1046:
1047: hr_utility.trace('J: ' || fnd_number.number_to_canonical(J) ||
1048: ' l_change_date: ' || fnd_date.date_to_canonical(l_change_date) ||
1049: ' l_temp_salary: ' || fnd_number.number_to_canonical(l_temp_salary) ||
1050: ' l_annualization_factor: ' || fnd_number.number_to_canonical(l_annualization_factor) ||
1051: ' l_pay_basis: ' || l_pay_basis);
1058: l_start_date := GREATEST(l_change_date, l_asg_start_date);
1059: l_bus_days_in_sched := NVL(PSP_GENERAL.BUSINESS_DAYS(l_start_date, l_end_date,p_assignment_id), 0);
1060: l_enc_amount := l_enc_amount + ROUND(((l_temp_salary * l_bus_days_in_sched) / ( l_bus_working_days )), g_ext_precision);
1061:
1062: hr_utility.trace('l_start_date: ' || fnd_date.date_to_canonical(l_start_date) ||
1063: ' l_end_date: ' || fnd_date.date_to_canonical(l_end_date) ||
1064: ' l_bus_days_in_sched: ' || fnd_number.number_to_canonical(l_bus_days_in_sched) ||
1065: ' l_enc_amount: ' || fnd_number.number_to_canonical(l_enc_amount));
1066:
1087: l_bus_days_in_sched := NVL(PSP_GENERAL.BUSINESS_DAYS(l_start_date, l_end_date,p_assignment_id), 0);
1088: l_enc_amount := l_enc_amount + ROUND(((l_pay_amount * l_bus_days_in_sched)/( l_bus_working_days )),g_ext_precision);
1089: END IF;
1090:
1091: hr_utility.trace('l_element_start_date: ' || fnd_date.date_to_canonical(l_element_start_date) ||
1092: ' l_element_end_date: ' || fnd_date.date_to_canonical(l_element_end_date) ||
1093: ' l_pay_amount: ' || fnd_number.number_to_canonical(l_pay_amount) ||
1094: ' l_start_date: ' || fnd_date.date_to_canonical(l_start_date) ||
1095: ' l_end_date: ' || fnd_date.date_to_canonical(l_end_date) ||
1116: END IF;
1117: END LOOP;
1118:
1119: l_proc_step:= 110;
1120: hr_utility.trace('Calculating Period Amounts...');
1121:
1122: IF (l_calculate_period_amt) THEN
1123: -- Modified period amount calculation for bug fix 3673723
1124: -- For element entry value based period amount calculation, changed to time period reference.
1141: l_bus_working_days := psp_general.business_days(l_period_start_date, l_period_end_date,p_assignment_id);
1142: l_end_date := l_period_end_date;
1143: l_period_counter := 0;
1144:
1145: hr_utility.trace('I: ' || fnd_number.number_to_canonical(I) ||
1146: ' l_period_start_date: ' || fnd_date.date_to_canonical(l_period_start_date) ||
1147: ' l_period_end_date: ' || fnd_date.date_to_canonical(l_period_end_date) ||
1148: ' l_bus_working_days: ' || fnd_number.number_to_canonical(l_bus_working_days));
1149:
1167: l_annualization_factor := r_salary_proposal.r_pay_annualization_factor(J);
1168: l_pay_basis := r_salary_proposal.r_pay_basis(J);
1169: l_proc_step:= 130 + (J / 100000);
1170:
1171: hr_utility.trace('J: ' || fnd_number.number_to_canonical(J) ||
1172: ' l_change_date: ' || fnd_date.date_to_canonical(l_change_date) ||
1173: ' l_change_end_date: ' || fnd_date.date_to_canonical(l_change_end_date) ||
1174: ' l_temp_salary: ' || fnd_number.number_to_canonical(l_temp_salary) ||
1175: ' l_annualization_factor: ' || fnd_number.number_to_canonical(l_annualization_factor) ||
1202: END LOOP; -- Introduced for bug fix 3673723
1203:
1204: l_enc_amount := l_enc_amount + ROUND(((l_temp_salary * l_bus_days_in_sched)/( l_bus_working_days )), g_ext_precision);
1205: -- End of changes for bug fix 3551561
1206: hr_utility.trace('l_start_date: ' || fnd_date.date_to_canonical(l_start_date) ||
1207: ' l_end_date: ' || fnd_date.date_to_canonical(l_end_date) ||
1208: ' l_bus_days_in_sched: ' || fnd_number.number_to_canonical(l_bus_days_in_sched) ||
1209: ' l_enc_amount: ' || fnd_number.number_to_canonical(l_enc_amount));
1210: -- l_end_date := GREATEST(l_start_date, l_change_date) - 1; Commented for bug fix 3551561
1238: r_enc_period.r_period_amount(I) := r_enc_period.r_period_amount(I - 1);
1239: END IF;
1240: END LOOP;
1241: ELSE
1242: hr_utility.trace('Period amounts based on formula/user hook amounts');
1243: l_enc_amount := 0;
1244: l_period_counter := 1;
1245: l_tmp_counter := 1;
1246: LOOP
1244: l_period_counter := 1;
1245: l_tmp_counter := 1;
1246: LOOP
1247: EXIT WHEN l_tmp_counter > r_enc_period.r_time_period_id.COUNT;
1248: hr_utility.trace('l_tmp_counter: ' || l_tmp_counter || ' EM: ' || r_enc_period.r_encumbrance_amount(l_tmp_counter));
1249: IF (l_tmp_counter = 1) THEN
1250: l_time_period_id := r_enc_period.r_time_period_id(l_tmp_counter);
1251: END IF;
1252: IF (r_enc_period.r_time_period_id(l_tmp_counter) = l_time_period_id) THEN
1271: END LOOP;
1272: l_period_counter := 1;
1273: FOR J IN 1..r_enc_period.r_time_period_id.COUNT
1274: LOOP
1275: hr_utility.trace('l_period_counter: ' || l_period_counter);
1276: IF (r_enc_period.r_time_period_id(J) <> r_element_period_amount.r_time_period_id(l_period_counter)) THEN
1277: l_period_counter := l_period_counter + 1;
1278: END IF;
1279: r_enc_period.r_period_amount(J) := r_element_period_amount.r_period_amount(l_period_counter);
1281: END IF;
1282:
1283: l_proc_step:= 170;
1284:
1285: hr_utility.trace('Dumping Assignment Chunks after determining Assignment chunk and Period chunk amounts');
1286: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
1287: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
1288: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
1289: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
1282:
1283: l_proc_step:= 170;
1284:
1285: hr_utility.trace('Dumping Assignment Chunks after determining Assignment chunk and Period chunk amounts');
1286: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
1287: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
1288: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
1289: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
1290: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
1290: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
1291: LPAD('Encumbrance Amount', 18, ' ') || ' ' || LPAD('Period Amount', 18, ' ') || ' ' ||
1292: RPAD('Reason Code', 50, ' '));
1293:
1294: hr_utility.trace(LPAD('-', 13, '-') || ' ' ||
1295: LPAD('-', 14, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
1296: RPAD('-', 15, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
1297: RPAD('-', 12, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
1298: RPAD('-', 12, '-') || ' ' || LPAD('-', 16, '-') || ' ' ||
1300: RPAD('-', 50, '-'));
1301:
1302: FOR recno IN 1..r_enc_period.r_time_period_id.COUNT
1303: LOOP
1304: hr_utility.trace(LPAD(recno, 13, ' ') || ' ' ||
1305: LPAD(r_enc_period.r_time_period_id(recno), 14, ' ') || ' ' ||
1306: RPAD(TO_CHAR(r_enc_period.r_period_start_date(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
1307: RPAD(TO_CHAR(r_enc_period.r_period_end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
1308: RPAD(TO_CHAR(r_enc_period.r_asg_start_date(recno), 'DD-MON-RRRR'), 14, ' ') || ' ' ||
1313: LPAD(r_enc_period.r_encumbrance_amount(recno), 18, ' ') || ' ' ||
1314: LPAD(r_enc_period.r_period_amount(recno), 18, ' ') || ' ' ||
1315: RPAD(r_enc_period.r_reason_code(recno), 50, ' '));
1316: END LOOP;
1317: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Leaving ' || l_proc_name);
1318:
1319: p_return_status := fnd_api.g_ret_sts_success;
1320: EXCEPTION
1321: WHEN DIVIDE_BY_ZERO THEN
1552: IF (p_process_flag = 'SA') THEN
1553: l_sa_reason_code := l_reason_code;
1554: END IF;
1555:
1556: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering process_all_hier');
1557: hr_utility.trace(' p_chunk_pointer: ' || p_chunk_pointer ||
1558: ' p_asg_start_date: ' || TO_CHAR(p_asg_start_date, 'DD-MON-RRRR') ||
1559: ' p_asg_end_date: ' || TO_CHAR(p_asg_end_date, 'DD-MON-RRRR') ||
1560: ' p_process_flag: ' || p_process_flag);
1553: l_sa_reason_code := l_reason_code;
1554: END IF;
1555:
1556: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering process_all_hier');
1557: hr_utility.trace(' p_chunk_pointer: ' || p_chunk_pointer ||
1558: ' p_asg_start_date: ' || TO_CHAR(p_asg_start_date, 'DD-MON-RRRR') ||
1559: ' p_asg_end_date: ' || TO_CHAR(p_asg_end_date, 'DD-MON-RRRR') ||
1560: ' p_process_flag: ' || p_process_flag);
1561:
1575: IF l_return_status <> fnd_api.g_ret_sts_success THEN
1576: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1577: END IF;
1578: END IF;
1579: hr_utility.trace(' l_last_enc_date: ' || TO_CHAR(l_last_enc_date, 'DD-MON-RRRR'));
1580:
1581: IF (r_enc_period.r_asg_start_date(p_chunk_pointer) <= l_last_enc_date) THEN
1582: l_start_date_active := GREATEST(l_start_date_active, p_asg_start_date);
1583: l_end_date_active := LEAST(l_end_date_active, p_asg_end_date, l_last_enc_date);
1582: l_start_date_active := GREATEST(l_start_date_active, p_asg_start_date);
1583: l_end_date_active := LEAST(l_end_date_active, p_asg_end_date, l_last_enc_date);
1584: l_daily_rate := round((r_enc_period.r_encumbrance_amount(p_chunk_pointer) * l_schedule_percent/100),g_ext_precision);
1585: l_daily_rate := NVL(p_encumbrance_amount, l_daily_rate);
1586: hr_utility.trace(' l_start_date_active: ' || TO_CHAR(l_start_date_active, 'DD-MON-RRRR') ||
1587: ' l_end_date_active: ' || TO_CHAR(l_end_date_active, 'DD-MON-RRRR') ||
1588: ' l_poeta_start_date: ' || TO_CHAR(l_poeta_start_date, 'DD-MON-RRRR') ||
1589: ' l_poeta_end_date: ' || TO_CHAR(l_poeta_end_date, 'DD-MON-RRRR') ||
1590: ' l_daily_rate: ' || l_daily_rate);
1601: IF l_return_status <> fnd_api.g_ret_sts_success THEN
1602: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1603: END IF;
1604:
1605: hr_utility.trace(' t_poeta_gl_hier_array.COUNT: ' || t_poeta_gl_hier_array.COUNT);
1606: FOR I IN 1..t_poeta_gl_hier_array.COUNT
1607: LOOP
1608: hr_utility.trace(' t_poeta_gl_hier_array(' || I || ').r_enc_start_date: ' || TO_CHAR(t_poeta_gl_hier_array(I).r_enc_start_date, 'DD-MON-RRRR') ||
1609: ' t_poeta_gl_hier_array(' || I || ').r_enc_end_date: ' || TO_CHAR(t_poeta_gl_hier_array(I).r_enc_end_date, 'DD-MON-RRRR') ||
1604:
1605: hr_utility.trace(' t_poeta_gl_hier_array.COUNT: ' || t_poeta_gl_hier_array.COUNT);
1606: FOR I IN 1..t_poeta_gl_hier_array.COUNT
1607: LOOP
1608: hr_utility.trace(' t_poeta_gl_hier_array(' || I || ').r_enc_start_date: ' || TO_CHAR(t_poeta_gl_hier_array(I).r_enc_start_date, 'DD-MON-RRRR') ||
1609: ' t_poeta_gl_hier_array(' || I || ').r_enc_end_date: ' || TO_CHAR(t_poeta_gl_hier_array(I).r_enc_end_date, 'DD-MON-RRRR') ||
1610: ' t_poeta_gl_hier_array(' || I || ').r_amount: ' || t_poeta_gl_hier_array(I).r_amount ||
1611: ' t_poeta_gl_hier_array(' || I || ').r_susp_flag: ' || t_poeta_gl_hier_array(I).r_susp_flag);
1612: IF t_poeta_gl_hier_array(I).r_susp_flag <> 'Y' THEN
1996: END IF;
1997: END LOOP;
1998: END IF;
1999: t_poeta_gl_hier_array.DELETE;
2000: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Leaving process_all_hier');
2001: END process_all_hier;
2002:
2003: PROCEDURE log_gl_hours_message IS
2004: BEGIN
2012: BEGIN
2013: l_proc_step := 10;
2014: l_proc_name := 'CREATE_LINES';
2015:
2016: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering ' || l_proc_name);
2017: hr_utility.trace('p_assignment_id: ' || fnd_number.number_to_canonical(p_assignment_id) ||
2018: ' p_payroll_id: ' || fnd_number.number_to_canonical(p_payroll_id) ||
2019: ' p_element_type_id: ' || fnd_number.number_to_canonical(p_element_type_id) ||
2020: ' p_last_paid_date: ' || fnd_date.date_to_canonical(p_last_paid_date));
2013: l_proc_step := 10;
2014: l_proc_name := 'CREATE_LINES';
2015:
2016: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering ' || l_proc_name);
2017: hr_utility.trace('p_assignment_id: ' || fnd_number.number_to_canonical(p_assignment_id) ||
2018: ' p_payroll_id: ' || fnd_number.number_to_canonical(p_payroll_id) ||
2019: ' p_element_type_id: ' || fnd_number.number_to_canonical(p_element_type_id) ||
2020: ' p_last_paid_date: ' || fnd_date.date_to_canonical(p_last_paid_date));
2021:
2024: OPEN c_person_id;
2025: FETCH c_person_id INTO l_person_id;
2026: CLOSE c_person_id;
2027:
2028: hr_utility.trace('l_person_id: ' || fnd_number.number_to_canonical(l_person_id));
2029: l_proc_step := 20;
2030: g_pateo_end_date := NULL;
2031:
2032: OPEN enc_period_cur;
2036: r_enc_period.r_effective_date, r_enc_period.r_process_flag,
2037: r_enc_period.r_schedule_percent, r_enc_period.r_reason_code;
2038: CLOSE enc_period_cur;
2039:
2040: hr_utility.trace('r_enc_period.r_time_period_id.COUNT: ' || fnd_number.number_to_canonical(r_enc_period.r_time_period_id.COUNT));
2041: l_proc_step := 30;
2042:
2043: IF (r_enc_period.r_time_period_id.COUNT > 0) THEN
2044: load_sch_hierarchy(p_assignment_id, p_payroll_id, p_element_type_id, g_business_group_id, g_set_of_books_id, p_return_status);
2054: r_enc_period.r_effective_date, r_enc_period.r_process_flag,
2055: r_enc_period.r_schedule_percent, r_enc_period.r_reason_code;
2056: CLOSE enc_period_cur;
2057:
2058: hr_utility.trace('Cutting down periods beyond MAX(poeta_end_date); r_enc_period.r_time_period_id.COUNT: ' || fnd_number.number_to_canonical(r_enc_period.r_time_period_id.COUNT));
2059:
2060: l_proc_step := 40;
2061:
2062: IF (r_enc_period.r_time_period_id.COUNT > 0) THEN
2065: RAISE fnd_api.g_exc_unexpected_error;
2066: END IF;
2067: END IF;
2068:
2069: hr_utility.trace('r_enc_period.r_time_period_id.COUNT: ' || fnd_number.number_to_canonical(r_enc_period.r_time_period_id.COUNT));
2070: l_proc_step := 50;
2071:
2072: IF (r_enc_period.r_time_period_id.COUNT > 0) THEN
2073: determine_enc_amount(p_person_id => l_person_id,
2117: r_enc_period.r_period_end_date(r_enc_period.r_asg_end_date.COUNT)) <>
2118: psp_general.business_days(r_enc_period.r_period_start_date(r_enc_period.r_asg_end_date.COUNT), l_max_end_date))) THEN
2119: l_ignore_end := r_enc_period.r_time_period_id(r_enc_period.r_asg_end_date.COUNT);
2120: END IF;
2121: hr_utility.trace('l_ignore_start: ' || l_ignore_start);
2122: hr_utility.trace('l_ignore_end: ' || l_ignore_end);
2123: END IF;
2124:
2125: LOOP
2118: psp_general.business_days(r_enc_period.r_period_start_date(r_enc_period.r_asg_end_date.COUNT), l_max_end_date))) THEN
2119: l_ignore_end := r_enc_period.r_time_period_id(r_enc_period.r_asg_end_date.COUNT);
2120: END IF;
2121: hr_utility.trace('l_ignore_start: ' || l_ignore_start);
2122: hr_utility.trace('l_ignore_end: ' || l_ignore_end);
2123: END IF;
2124:
2125: LOOP
2126: EXIT WHEN (l_chunk_pointer > r_enc_period.r_time_period_id.COUNT);
2142: l_element_account_id := NULL;
2143: l_default_account_id := NULL;
2144: l_suspense_account_id := NULL;
2145:
2146: hr_utility.trace('Processing chunk: CP: ' || l_chunk_pointer || ' TP: ' || l_time_period_id ||
2147: ' PSD: ' || TO_CHAR(l_period_start_date, 'DD-MON-RRRR') || ' PED: ' || TO_CHAR(l_period_end_date, 'DD-MON-RRRR') ||
2148: ' ASD: ' || TO_CHAR(l_asg_start_date, 'DD-MON-RRRR') || ' AED: ' || TO_CHAR(l_asg_end_date, 'DD-MON-RRRR') ||
2149: ' PF: ' || l_process_flag || ' EA: ' || l_earnings_amount || ' ED: ' || TO_CHAR(l_effective_date, 'DD-MON-RRRR') ||
2150: ' BD: ' || l_bus_days_in_chunk);
2148: ' ASD: ' || TO_CHAR(l_asg_start_date, 'DD-MON-RRRR') || ' AED: ' || TO_CHAR(l_asg_end_date, 'DD-MON-RRRR') ||
2149: ' PF: ' || l_process_flag || ' EA: ' || l_earnings_amount || ' ED: ' || TO_CHAR(l_effective_date, 'DD-MON-RRRR') ||
2150: ' BD: ' || l_bus_days_in_chunk);
2151:
2152: hr_utility.trace('l_chunk_pointer: ' || fnd_number.number_to_canonical(l_chunk_pointer) ||
2153: ' l_asg_start_date: ' || fnd_date.date_to_canonical(l_asg_start_date) ||
2154: ' l_asg_end_date: ' || fnd_date.date_to_canonical(l_asg_end_date) ||
2155: ' l_period_start_date: ' || fnd_date.date_to_canonical(l_period_start_date) ||
2156: ' l_period_end_date: ' || fnd_date.date_to_canonical(l_period_end_date) ||
2260: p_exp_org_id => l_expenditure_org_id,
2261: p_exp_type => l_expenditure_type,
2262: p_effective_date => l_effective_date,
2263: p_error_status => l_autopop_error);
2264: hr_utility.trace('Posting to suspense account');
2265: ELSE
2266: IF (l_acct_type = 'E') THEN
2267: psp_enc_pre_process.validate_poeta (p_project_id => l_project_id,
2268: p_task_id => l_task_id,
2381: p_exp_org_id => l_expenditure_org_id,
2382: p_exp_type => l_expenditure_type,
2383: p_effective_date => l_effective_date,
2384: p_error_status => l_autopop_error);
2385: hr_utility.trace('Posting to suspense account');
2386: ELSE
2387: IF (l_acct_type = 'E') THEN
2388: psp_enc_pre_process.validate_poeta (p_project_id => l_project_id,
2389: p_task_id => l_task_id,
2502: p_exp_org_id => l_expenditure_org_id,
2503: p_exp_type => l_expenditure_type,
2504: p_effective_date => l_effective_date,
2505: p_error_status => l_autopop_error);
2506: hr_utility.trace('Posting to suspense account');
2507: ELSE
2508: IF (l_acct_type = 'E') THEN
2509: psp_enc_pre_process.validate_poeta (p_project_id => l_project_id,
2510: p_task_id => l_task_id,
2631: p_exp_org_id => l_expenditure_org_id,
2632: p_exp_type => l_expenditure_type,
2633: p_effective_date => l_effective_date,
2634: p_error_status => l_autopop_error);
2635: hr_utility.trace('Posting to suspense account');
2636: ELSE
2637: IF (l_acct_type = 'E') THEN
2638: psp_enc_pre_process.validate_poeta (p_project_id => l_project_id,
2639: p_task_id => l_task_id,
2758: p_exp_org_id => l_expenditure_org_id,
2759: p_exp_type => l_expenditure_type,
2760: p_effective_date => l_effective_date,
2761: p_error_status => l_autopop_error);
2762: hr_utility.trace('Posting to suspense account');
2763: ELSE
2764: IF (l_acct_type = 'E') THEN
2765: psp_enc_pre_process.validate_poeta (p_project_id => l_project_id,
2766: p_task_id => l_task_id,
2887: p_exp_org_id => l_expenditure_org_id,
2888: p_exp_type => l_expenditure_type,
2889: p_effective_date => l_effective_date,
2890: p_error_status => l_autopop_error);
2891: hr_utility.trace('Posting to suspense account');
2892: ELSE
2893: IF (l_acct_type = 'E') THEN
2894: psp_enc_pre_process.validate_poeta (p_project_id => l_project_id,
2895: p_task_id => l_task_id,
3065: END IF;
3066: END IF;
3067: END LOOP;
3068: ELSIF (l_process_flag = 'I') THEN
3069: hr_utility.trace('Ignoring chunk starting beyond org end date');
3070: END IF;
3071: END IF;
3072:
3073: l_chunk_pointer := l_chunk_pointer + 1;
3079: orig_ci.award_id.DELETE;
3080: orig_ci.expenditure_organization_id.DELETE;
3081: orig_ci.expenditure_type.DELETE;
3082:
3083: hr_utility.trace('Prev Enc Lines: ' || l_prev_enc_lines_counter);
3084: hr_utility.trace('G Enc Lines: ' || g_enc_lines_counter);
3085: hr_utility.trace('Enc Lines: ' || t_enc_lines_array.r_time_period_id.COUNT);
3086: l_time_period_id := -1;
3087: IF ((g_enc_lines_counter - l_prev_enc_lines_counter) > 0) THEN
3080: orig_ci.expenditure_organization_id.DELETE;
3081: orig_ci.expenditure_type.DELETE;
3082:
3083: hr_utility.trace('Prev Enc Lines: ' || l_prev_enc_lines_counter);
3084: hr_utility.trace('G Enc Lines: ' || g_enc_lines_counter);
3085: hr_utility.trace('Enc Lines: ' || t_enc_lines_array.r_time_period_id.COUNT);
3086: l_time_period_id := -1;
3087: IF ((g_enc_lines_counter - l_prev_enc_lines_counter) > 0) THEN
3088: FOR recno IN 1..r_enc_period.r_time_period_id.COUNT
3081: orig_ci.expenditure_type.DELETE;
3082:
3083: hr_utility.trace('Prev Enc Lines: ' || l_prev_enc_lines_counter);
3084: hr_utility.trace('G Enc Lines: ' || g_enc_lines_counter);
3085: hr_utility.trace('Enc Lines: ' || t_enc_lines_array.r_time_period_id.COUNT);
3086: l_time_period_id := -1;
3087: IF ((g_enc_lines_counter - l_prev_enc_lines_counter) > 0) THEN
3088: FOR recno IN 1..r_enc_period.r_time_period_id.COUNT
3089: LOOP
3099: l_proc_step := 100 + (recno2 / 100000);
3100: IF (t_enc_lines_array.r_time_period_id(recno2) = l_time_period_id) THEN
3101: l_running_total := l_running_total + t_enc_lines_array.r_encumbrance_amount(recno2);
3102: l_chunk_pointer := recno2;
3103: hr_utility.trace('Encumbrance Amount: ' || t_enc_lines_array.r_encumbrance_amount(recno2));
3104: END IF;
3105: END LOOP;
3106:
3107: IF (l_running_total > 0) AND (l_running_total <> r_enc_period.r_period_amount(recno)) THEN
3109: t_enc_lines_array.r_encumbrance_amount(l_chunk_pointer) +
3110: (r_enc_period.r_period_amount(recno) - l_running_total);
3111: END IF;
3112:
3113: hr_utility.trace('l_time_period_id: ' || l_time_period_id ||
3114: ' l_running_total: ' || fnd_number.number_to_canonical(l_running_total) ||
3115: ' r_enc_period.r_period_amount(recno): ' || fnd_number.number_to_canonical(r_enc_period.r_period_amount(recno)) ||
3116: ' t_enc_lines_array.r_encumbrance_amount(l_chunk_pointer): ' || fnd_number.number_to_canonical(t_enc_lines_array.r_encumbrance_amount(l_chunk_pointer)));
3117: END IF;
3130: r_enc_period.r_period_amount.DELETE;
3131: r_enc_period.r_reason_code.DELETE;
3132:
3133: l_proc_step := 210;
3134: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Leaving ' || l_proc_name);
3135: EXCEPTION
3136: WHEN suspense_autopop_failed THEN
3137: fnd_msg_pub.add_exc_msg('PSP_ENC_CREATE_LINES', 'CREATE_LINES ');
3138: p_return_status := fnd_api.g_ret_sts_unexp_error;
4048: BEGIN
4049: psp_matrix_driver_pkg.set_runid;
4050: l_run_id := psp_matrix_driver_pkg.get_run_id;
4051:
4052: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering ' || l_proc_name);
4053: hr_utility.trace('p_assignment_id: ' || fnd_number.number_to_canonical(p_assignment_id) ||
4054: ' p_element_type_id: ' || fnd_number.number_to_canonical(p_element_type_id) ||
4055: ' p_business_group_id: ' || fnd_number.number_to_canonical(p_business_group_id) ||
4056: ' p_set_of_books_id: ' || fnd_number.number_to_canonical(p_set_of_books_id) ||
4049: psp_matrix_driver_pkg.set_runid;
4050: l_run_id := psp_matrix_driver_pkg.get_run_id;
4051:
4052: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering ' || l_proc_name);
4053: hr_utility.trace('p_assignment_id: ' || fnd_number.number_to_canonical(p_assignment_id) ||
4054: ' p_element_type_id: ' || fnd_number.number_to_canonical(p_element_type_id) ||
4055: ' p_business_group_id: ' || fnd_number.number_to_canonical(p_business_group_id) ||
4056: ' p_set_of_books_id: ' || fnd_number.number_to_canonical(p_set_of_books_id) ||
4057: ' r_enc_period.r_time_period_id.COUNT: ' || fnd_number.number_to_canonical(r_enc_period.r_time_period_id.COUNT));
4054: ' p_element_type_id: ' || fnd_number.number_to_canonical(p_element_type_id) ||
4055: ' p_business_group_id: ' || fnd_number.number_to_canonical(p_business_group_id) ||
4056: ' p_set_of_books_id: ' || fnd_number.number_to_canonical(p_set_of_books_id) ||
4057: ' r_enc_period.r_time_period_id.COUNT: ' || fnd_number.number_to_canonical(r_enc_period.r_time_period_id.COUNT));
4058: hr_utility.trace('Dumping Assignment Chunk Before Global Element Processing ...');
4059: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
4060: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
4061: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
4062: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
4055: ' p_business_group_id: ' || fnd_number.number_to_canonical(p_business_group_id) ||
4056: ' p_set_of_books_id: ' || fnd_number.number_to_canonical(p_set_of_books_id) ||
4057: ' r_enc_period.r_time_period_id.COUNT: ' || fnd_number.number_to_canonical(r_enc_period.r_time_period_id.COUNT));
4058: hr_utility.trace('Dumping Assignment Chunk Before Global Element Processing ...');
4059: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
4060: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
4061: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
4062: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
4063: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
4062: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
4063: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
4064: RPAD('Reason Code', 50, ' '));
4065:
4066: hr_utility.trace(LPAD('-', 13, '-') || ' ' ||
4067: LPAD('-', 14, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
4068: RPAD('-', 15, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
4069: RPAD('-', 12, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
4070: RPAD('-', 12, '-') || ' ' || LPAD('-', 16, '-') || ' ' ||
4071: RPAD('-', 50, '-'));
4072:
4073: FOR recno IN 1..r_enc_period.r_time_period_id.COUNT
4074: LOOP
4075: hr_utility.trace(LPAD(recno, 13, ' ') || ' ' ||
4076: LPAD(r_enc_period.r_time_period_id(recno), 14, ' ') || ' ' ||
4077: RPAD(TO_CHAR(r_enc_period.r_period_start_date(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
4078: RPAD(TO_CHAR(r_enc_period.r_period_end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
4079: RPAD(TO_CHAR(r_enc_period.r_asg_start_date(recno), 'DD-MON-RRRR'), 14, ' ') || ' ' ||
4082: RPAD(r_enc_period.r_process_flag(recno), 12, ' ') || ' ' ||
4083: LPAD(r_enc_period.r_schedule_percent(recno), 16, ' ') || ' ' ||
4084: RPAD(r_enc_period.r_reason_code(recno), 50, ' '));
4085: END LOOP;
4086: hr_utility.trace('Global Element Processing');
4087:
4088: l_proc_step := 10;
4089: l_sch_pointer := 1;
4090:
4091: OPEN global_element_cur;
4092: FETCH global_element_cur BULK COLLECT INTO r_sch_rec.start_date, r_sch_rec.end_date, r_sch_rec.schedule_percent;
4093: CLOSE global_element_cur;
4094:
4095: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
4096: hr_utility.trace('Schedule Chunk Details');
4097: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
4098: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
4099:
4092: FETCH global_element_cur BULK COLLECT INTO r_sch_rec.start_date, r_sch_rec.end_date, r_sch_rec.schedule_percent;
4093: CLOSE global_element_cur;
4094:
4095: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
4096: hr_utility.trace('Schedule Chunk Details');
4097: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
4098: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
4099:
4100: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
4093: CLOSE global_element_cur;
4094:
4095: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
4096: hr_utility.trace('Schedule Chunk Details');
4097: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
4098: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
4099:
4100: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
4101: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
4096: hr_utility.trace('Schedule Chunk Details');
4097: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
4098: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
4099:
4100: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
4101: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
4102:
4103: FOR recno IN 1..r_sch_rec.start_date.COUNT
4104: LOOP
4101: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
4102:
4103: FOR recno IN 1..r_sch_rec.start_date.COUNT
4104: LOOP
4105: hr_utility.trace(RPAD(TO_CHAR(r_sch_rec.start_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
4106: RPAD(TO_CHAR(r_sch_rec.end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
4107: LPAD(r_sch_rec.schedule_percent(recno), 16, ' '));
4108: END LOOP;
4109:
4115: l_asg_end_date := r_enc_period.r_asg_end_date(I);
4116: l_sub_slice_counter := 1;
4117: l_proc_step := 20 + (I / 100000);
4118:
4119: hr_utility.trace('I: ' || fnd_number.number_to_canonical(I) ||
4120: ' l_period_start_date: ' || fnd_date.date_to_canonical(l_period_start_date) ||
4121: ' l_period_end_date: ' || fnd_date.date_to_canonical(l_period_end_date) ||
4122: ' l_asg_start_date: ' || fnd_date.date_to_canonical(l_asg_start_date) ||
4123: ' l_asg_end_date: ' || fnd_date.date_to_canonical(l_asg_end_date) ||
4133: l_proc_step := 30 + (ge_recno / 100000);
4134: -- OPEN global_element_cur(l_period_start_date, l_period_end_date, l_asg_start_date, l_asg_end_date);
4135: -- FETCH global_element_cur INTO l_start_date, l_end_date, l_schedule_percent;
4136:
4137: hr_utility.trace('l_sub_slice_counter: ' || fnd_number.number_to_canonical(l_sub_slice_counter) ||
4138: ' l_rec_no: ' || fnd_number.number_to_canonical(l_rec_no) ||
4139: ' l_start_date: ' || fnd_date.date_to_canonical(l_start_date) ||
4140: ' l_end_date: ' || fnd_date.date_to_canonical(l_end_date) ||
4141: ' l_schedule_percent: ' || fnd_number.number_to_canonical(l_schedule_percent));
4138: ' l_rec_no: ' || fnd_number.number_to_canonical(l_rec_no) ||
4139: ' l_start_date: ' || fnd_date.date_to_canonical(l_start_date) ||
4140: ' l_end_date: ' || fnd_date.date_to_canonical(l_end_date) ||
4141: ' l_schedule_percent: ' || fnd_number.number_to_canonical(l_schedule_percent));
4142: -- hr_utility.trace('global_element_cur%ROWCOUNT: ' || fnd_number.number_to_canonical(global_element_cur%ROWCOUNT));
4143:
4144: -- IF (global_element_cur%NOTFOUND) THEN
4145: IF (l_start_date > l_asg_end_date) THEN
4146: r_enc_period_tmp1.r_period_ind(l_rec_no) := I;
4327: r_enc_period.r_effective_date.DELETE;
4328: l_rec_no := 1;
4329: l_proc_step := 40;
4330:
4331: hr_utility.trace('Dumping Assignment Chunk After Global Element Processing ...');
4332: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
4333: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
4334: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
4335: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
4328: l_rec_no := 1;
4329: l_proc_step := 40;
4330:
4331: hr_utility.trace('Dumping Assignment Chunk After Global Element Processing ...');
4332: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
4333: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
4334: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
4335: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
4336: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
4335: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
4336: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
4337: RPAD('Reason Code', 50, ' '));
4338:
4339: hr_utility.trace(LPAD('-', 13, '-') || ' ' ||
4340: LPAD('-', 14, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
4341: RPAD('-', 15, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
4342: RPAD('-', 12, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
4343: RPAD('-', 12, '-') || ' ' || LPAD('-', 16, '-') || ' ' ||
4344: RPAD('-', 50, '-'));
4345:
4346: FOR recno IN 1..r_enc_period_tmp1.r_time_period_id.COUNT
4347: LOOP
4348: hr_utility.trace(LPAD(recno, 13, ' ') || ' ' ||
4349: LPAD(r_enc_period_tmp1.r_time_period_id(recno), 14, ' ') || ' ' ||
4350: RPAD(TO_CHAR(r_enc_period_tmp1.r_period_start_date(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
4351: RPAD(TO_CHAR(r_enc_period_tmp1.r_period_end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
4352: RPAD(TO_CHAR(r_enc_period_tmp1.r_asg_start_date(recno), 'DD-MON-RRRR'), 14, ' ') || ' ' ||
4355: RPAD(r_enc_period_tmp1.r_process_flag(recno), 12, ' ') || ' ' ||
4356: LPAD(r_enc_period_tmp1.r_schedule_percent(recno), 16, ' ') || ' ' ||
4357: RPAD(r_enc_period_tmp1.r_reason_code(recno), 50, ' '));
4358: END LOOP;
4359: hr_utility.trace('Element Type Processing ...');
4360:
4361: OPEN ls_hier_cur('ET');
4362: FETCH ls_hier_cur INTO l_schedule_hierarchy_id;
4363: CLOSE ls_hier_cur;
4490: OPEN ls_matrix_cur;
4491: FETCH ls_matrix_cur BULK COLLECT INTO r_sch_rec.start_date, r_sch_rec.end_date, r_sch_rec.schedule_percent;
4492: CLOSE ls_matrix_cur;
4493:
4494: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
4495: hr_utility.trace('Schedule Chunk Details');
4496: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
4497: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
4498: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
4491: FETCH ls_matrix_cur BULK COLLECT INTO r_sch_rec.start_date, r_sch_rec.end_date, r_sch_rec.schedule_percent;
4492: CLOSE ls_matrix_cur;
4493:
4494: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
4495: hr_utility.trace('Schedule Chunk Details');
4496: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
4497: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
4498: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
4499: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
4492: CLOSE ls_matrix_cur;
4493:
4494: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
4495: hr_utility.trace('Schedule Chunk Details');
4496: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
4497: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
4498: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
4499: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
4500:
4494: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
4495: hr_utility.trace('Schedule Chunk Details');
4496: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
4497: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
4498: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
4499: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
4500:
4501: FOR recno IN 1..r_sch_rec.start_date.COUNT
4502: LOOP
4499: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
4500:
4501: FOR recno IN 1..r_sch_rec.start_date.COUNT
4502: LOOP
4503: hr_utility.trace(RPAD(TO_CHAR(r_sch_rec.start_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
4504: RPAD(TO_CHAR(r_sch_rec.end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
4505: LPAD(r_sch_rec.schedule_percent(recno), 16, ' '));
4506: END LOOP;
4507:
4514: l_process_flag := r_enc_period_tmp1.r_process_flag(I);
4515: l_sub_slice_counter := 1;
4516: l_proc_step := 50 + (I / 100000);
4517:
4518: hr_utility.trace('I: ' || fnd_number.number_to_canonical(I) ||
4519: ' l_period_start_date: ' || fnd_date.date_to_canonical(l_period_start_date) ||
4520: ' l_period_end_date: ' || fnd_date.date_to_canonical(l_period_end_date) ||
4521: ' l_asg_start_date: ' || fnd_date.date_to_canonical(l_asg_start_date) ||
4522: ' l_asg_end_date: ' || fnd_date.date_to_canonical(l_asg_end_date) ||
4530: l_end_date:= r_sch_rec.end_date(et_recno);
4531: l_schedule_percent:= r_sch_rec.schedule_percent(et_recno);
4532: l_proc_step := 60 + (et_recno / 100000);
4533:
4534: hr_utility.trace(' l_sub_slice_counter: ' || fnd_number.number_to_canonical(l_sub_slice_counter) ||
4535: ' l_rec_no: ' || fnd_number.number_to_canonical(l_rec_no) ||
4536: ' l_start_date: ' || fnd_date.date_to_canonical(l_start_date) ||
4537: ' l_end_date: ' || fnd_date.date_to_canonical(l_end_date) ||
4538: ' l_schedule_percent: ' || fnd_number.number_to_canonical(l_schedule_percent));
4725: r_enc_period_tmp1.r_effective_date.DELETE;
4726: l_rec_no := 1;
4727: l_proc_step := 70;
4728:
4729: hr_utility.trace('Dumping Assignment Chunk After Element Type Processing ...');
4730: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
4731: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
4732: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
4733: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
4726: l_rec_no := 1;
4727: l_proc_step := 70;
4728:
4729: hr_utility.trace('Dumping Assignment Chunk After Element Type Processing ...');
4730: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
4731: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
4732: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
4733: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
4734: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
4732: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
4733: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
4734: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
4735: RPAD('Reason Code', 50, ' '));
4736: hr_utility.trace(LPAD('-', 13, '-') || ' ' ||
4737: LPAD('-', 14, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
4738: RPAD('-', 15, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
4739: RPAD('-', 12, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
4740: RPAD('-', 12, '-') || ' ' || LPAD('-', 16, '-') || ' ' ||
4741: RPAD('-', 50, '-'));
4742:
4743: FOR recno IN 1..r_enc_period.r_time_period_id.COUNT
4744: LOOP
4745: hr_utility.trace(LPAD(r_enc_period.r_period_ind(recno), 13, ' ') || ' ' ||
4746: LPAD(r_enc_period.r_time_period_id(recno), 14, ' ') || ' ' ||
4747: RPAD(TO_CHAR(r_enc_period.r_period_start_date(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
4748: RPAD(TO_CHAR(r_enc_period.r_period_end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
4749: RPAD(TO_CHAR(r_enc_period.r_asg_start_date(recno), 'DD-MON-RRRR'), 14, ' ') || ' ' ||
4752: RPAD(r_enc_period.r_process_flag(recno), 12, ' ') || ' ' ||
4753: LPAD(r_enc_period.r_schedule_percent(recno), 16, ' ') || ' ' ||
4754: RPAD(r_enc_period.r_reason_code(recno), 50, ' '));
4755: END LOOP;
4756: hr_utility.trace('Element Group Processing ...');
4757:
4758: psp_matrix_driver_pkg.clear_table('REFRESH');
4759: psp_matrix_driver_pkg.purge_table;
4760: l_period_count := r_enc_period.r_time_period_id.COUNT;
4891: OPEN eg_matrix_cur;
4892: FETCH eg_matrix_cur BULK COLLECT INTO r_sch_rec.start_date, r_sch_rec.end_date, r_sch_rec.schedule_percent;
4893: CLOSE eg_matrix_cur;
4894:
4895: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
4896: hr_utility.trace('Schedule Chunk Details');
4897: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
4898: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
4899: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
4892: FETCH eg_matrix_cur BULK COLLECT INTO r_sch_rec.start_date, r_sch_rec.end_date, r_sch_rec.schedule_percent;
4893: CLOSE eg_matrix_cur;
4894:
4895: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
4896: hr_utility.trace('Schedule Chunk Details');
4897: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
4898: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
4899: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
4900: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
4893: CLOSE eg_matrix_cur;
4894:
4895: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
4896: hr_utility.trace('Schedule Chunk Details');
4897: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
4898: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
4899: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
4900: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
4901:
4895: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
4896: hr_utility.trace('Schedule Chunk Details');
4897: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
4898: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
4899: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
4900: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
4901:
4902: FOR recno IN 1..r_sch_rec.start_date.COUNT
4903: LOOP
4900: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
4901:
4902: FOR recno IN 1..r_sch_rec.start_date.COUNT
4903: LOOP
4904: hr_utility.trace(RPAD(TO_CHAR(r_sch_rec.start_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
4905: RPAD(TO_CHAR(r_sch_rec.end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
4906: LPAD(r_sch_rec.schedule_percent(recno), 16, ' '));
4907: END LOOP;
4908:
4915: l_process_flag := r_enc_period.r_process_flag(I);
4916: l_sub_slice_counter := 1;
4917: l_proc_step := 80 + (I / 100000);
4918:
4919: hr_utility.trace('I: ' || fnd_number.number_to_canonical(I) ||
4920: ' l_period_start_date: ' || fnd_date.date_to_canonical(l_period_start_date) ||
4921: ' l_period_end_date: ' || fnd_date.date_to_canonical(l_period_end_date) ||
4922: ' l_asg_start_date: ' || fnd_date.date_to_canonical(l_asg_start_date) ||
4923: ' l_asg_end_date: ' || fnd_date.date_to_canonical(l_asg_end_date) ||
4931: l_end_date:= r_sch_rec.end_date(eg_recno);
4932: l_schedule_percent:= r_sch_rec.schedule_percent(eg_recno);
4933: l_proc_step := 90 + (eg_recno / 100000);
4934:
4935: hr_utility.trace(' l_sub_slice_counter: ' || fnd_number.number_to_canonical(l_sub_slice_counter) ||
4936: ' l_rec_no: ' || fnd_number.number_to_canonical(l_rec_no) ||
4937: ' l_start_date: ' || fnd_date.date_to_canonical(l_start_date) ||
4938: ' l_end_date: ' || fnd_date.date_to_canonical(l_end_date) ||
4939: ' l_schedule_percent: ' || fnd_number.number_to_canonical(l_schedule_percent));
5123: r_enc_period.r_effective_date.DELETE;
5124: l_rec_no := 1;
5125: l_proc_step := 100;
5126:
5127: hr_utility.trace('Dumping Assignment Chunk After Element Group Processing ...');
5128: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
5129: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
5130: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
5131: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
5124: l_rec_no := 1;
5125: l_proc_step := 100;
5126:
5127: hr_utility.trace('Dumping Assignment Chunk After Element Group Processing ...');
5128: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
5129: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
5130: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
5131: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
5132: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
5130: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
5131: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
5132: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
5133: RPAD('Reason Code', 50, ' '));
5134: hr_utility.trace(LPAD('-', 13, '-') || ' ' ||
5135: LPAD('-', 14, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
5136: RPAD('-', 15, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
5137: RPAD('-', 12, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
5138: RPAD('-', 12, '-') || ' ' || LPAD('-', 16, '-') || ' ' ||
5139: RPAD('-', 50, '-'));
5140:
5141: FOR recno IN 1..r_enc_period_tmp1.r_time_period_id.COUNT
5142: LOOP
5143: hr_utility.trace(LPAD(r_enc_period_tmp1.r_period_ind(recno), 13, ' ') || ' ' ||
5144: LPAD(r_enc_period_tmp1.r_time_period_id(recno), 14, ' ') || ' ' ||
5145: RPAD(TO_CHAR(r_enc_period_tmp1.r_period_start_date(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
5146: RPAD(TO_CHAR(r_enc_period_tmp1.r_period_end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
5147: RPAD(TO_CHAR(r_enc_period_tmp1.r_asg_start_date(recno), 'DD-MON-RRRR'), 14, ' ') || ' ' ||
5150: RPAD(r_enc_period_tmp1.r_process_flag(recno), 12, ' ') || ' ' ||
5151: LPAD(r_enc_period_tmp1.r_schedule_percent(recno), 16, ' ') || ' ' ||
5152: RPAD(r_enc_period_tmp1.r_reason_code(recno), 50, ' '));
5153: END LOOP;
5154: hr_utility.trace('Assignment Processing ...');
5155:
5156: psp_matrix_driver_pkg.clear_table('REFRESH');
5157: psp_matrix_driver_pkg.purge_table;
5158: l_period_count := r_enc_period.r_time_period_id.COUNT;
5287: OPEN ls_matrix_cur;
5288: FETCH ls_matrix_cur BULK COLLECT INTO r_sch_rec.start_date, r_sch_rec.end_date, r_sch_rec.schedule_percent;
5289: CLOSE ls_matrix_cur;
5290:
5291: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
5292: hr_utility.trace('Schedule Chunk Details');
5293: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
5294: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
5295:
5288: FETCH ls_matrix_cur BULK COLLECT INTO r_sch_rec.start_date, r_sch_rec.end_date, r_sch_rec.schedule_percent;
5289: CLOSE ls_matrix_cur;
5290:
5291: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
5292: hr_utility.trace('Schedule Chunk Details');
5293: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
5294: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
5295:
5296: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
5289: CLOSE ls_matrix_cur;
5290:
5291: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
5292: hr_utility.trace('Schedule Chunk Details');
5293: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
5294: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
5295:
5296: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
5297: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
5292: hr_utility.trace('Schedule Chunk Details');
5293: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
5294: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
5295:
5296: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
5297: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
5298:
5299: FOR recno IN 1..r_sch_rec.start_date.COUNT
5300: LOOP
5297: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
5298:
5299: FOR recno IN 1..r_sch_rec.start_date.COUNT
5300: LOOP
5301: hr_utility.trace(RPAD(TO_CHAR(r_sch_rec.start_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
5302: RPAD(TO_CHAR(r_sch_rec.end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
5303: LPAD(r_sch_rec.schedule_percent(recno), 16, ' '));
5304: END LOOP;
5305:
5312: l_process_flag := r_enc_period_tmp1.r_process_flag(I);
5313: l_sub_slice_counter := 1;
5314: l_proc_step := 110 + (I / 100000);
5315:
5316: hr_utility.trace('I: ' || fnd_number.number_to_canonical(I) ||
5317: ' l_period_start_date: ' || fnd_date.date_to_canonical(l_period_start_date) ||
5318: ' l_period_end_date: ' || fnd_date.date_to_canonical(l_period_end_date) ||
5319: ' l_asg_start_date: ' || fnd_date.date_to_canonical(l_asg_start_date) ||
5320: ' l_asg_end_date: ' || fnd_date.date_to_canonical(l_asg_end_date) ||
5328: l_end_date:= r_sch_rec.end_date(asg_recno);
5329: l_schedule_percent:= r_sch_rec.schedule_percent(asg_recno);
5330: l_proc_step := 120 + (l_rec_no / 100000);
5331:
5332: hr_utility.trace(' l_sub_slice_counter: ' || fnd_number.number_to_canonical(l_sub_slice_counter) ||
5333: ' l_rec_no: ' || fnd_number.number_to_canonical(l_rec_no) ||
5334: ' l_start_date: ' || fnd_date.date_to_canonical(l_start_date) ||
5335: ' l_end_date: ' || fnd_date.date_to_canonical(l_end_date) ||
5336: ' l_schedule_percent: ' || fnd_number.number_to_canonical(l_schedule_percent));
5525:
5526: -- psp_matrix_driver_pkg.clear_table('REFRESH'); Commented for bug fix 3970852
5527: -- psp_matrix_driver_pkg.purge_table; Commented for bug fix 3970852
5528:
5529: hr_utility.trace('Dumping Assignment Chunk After Assignment Processing ...');
5530: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
5531: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
5532: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
5533: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
5526: -- psp_matrix_driver_pkg.clear_table('REFRESH'); Commented for bug fix 3970852
5527: -- psp_matrix_driver_pkg.purge_table; Commented for bug fix 3970852
5528:
5529: hr_utility.trace('Dumping Assignment Chunk After Assignment Processing ...');
5530: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
5531: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
5532: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
5533: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
5534: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
5532: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
5533: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
5534: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
5535: RPAD('Reason Code', 50, ' '));
5536: hr_utility.trace(LPAD('-', 13, '-') || ' ' ||
5537: LPAD('-', 14, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
5538: RPAD('-', 15, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
5539: RPAD('-', 12, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
5540: RPAD('-', 12, '-') || ' ' || LPAD('-', 16, '-') || ' ' ||
5541: RPAD('-', 50, '-'));
5542:
5543: FOR recno IN 1..r_enc_period.r_time_period_id.COUNT
5544: LOOP
5545: hr_utility.trace(LPAD(r_enc_period.r_period_ind(recno), 13, ' ') || ' ' ||
5546: LPAD(r_enc_period.r_time_period_id(recno), 14, ' ') || ' ' ||
5547: RPAD(TO_CHAR(r_enc_period.r_period_start_date(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
5548: RPAD(TO_CHAR(r_enc_period.r_period_end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
5549: RPAD(TO_CHAR(r_enc_period.r_asg_start_date(recno), 'DD-MON-RRRR'), 14, ' ') || ' ' ||
5554: RPAD(r_enc_period.r_reason_code(recno), 50, ' '));
5555: END LOOP;
5556:
5557: IF (g_org_def_labor_schedule = 'Y') THEN
5558: hr_utility.trace('Organization Default LS Processing');
5559:
5560: l_sch_pointer := 1;
5561: OPEN odls_cur;
5562: FETCH odls_cur BULK COLLECT INTO r_sch_rec.start_date, r_sch_rec.end_date, r_sch_rec.schedule_percent;
5561: OPEN odls_cur;
5562: FETCH odls_cur BULK COLLECT INTO r_sch_rec.start_date, r_sch_rec.end_date, r_sch_rec.schedule_percent;
5563: CLOSE odls_cur;
5564:
5565: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
5566: hr_utility.trace('Schedule Chunk Details');
5567: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
5568: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
5569: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
5562: FETCH odls_cur BULK COLLECT INTO r_sch_rec.start_date, r_sch_rec.end_date, r_sch_rec.schedule_percent;
5563: CLOSE odls_cur;
5564:
5565: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
5566: hr_utility.trace('Schedule Chunk Details');
5567: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
5568: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
5569: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
5570: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
5563: CLOSE odls_cur;
5564:
5565: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
5566: hr_utility.trace('Schedule Chunk Details');
5567: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
5568: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
5569: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
5570: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
5571:
5565: hr_utility.trace('r_sch_rec.start_date.COUNT: ' || r_sch_rec.start_date.COUNT);
5566: hr_utility.trace('Schedule Chunk Details');
5567: hr_utility.trace(RPAD('Start Date', 15, ' ') || ' ' ||
5568: RPAD('End Date', 15, ' ') || ' ' || LPAD('Schedule Percent', 16, ' '));
5569: hr_utility.trace(RPAD('-', 15, '-') || ' ' ||
5570: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
5571:
5572: FOR recno IN 1..r_sch_rec.start_date.COUNT
5573: LOOP
5570: RPAD('-', 15, '-') || ' ' || RPAD('-', 16, '-'));
5571:
5572: FOR recno IN 1..r_sch_rec.start_date.COUNT
5573: LOOP
5574: hr_utility.trace(RPAD(TO_CHAR(r_sch_rec.start_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
5575: RPAD(TO_CHAR(r_sch_rec.end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
5576: LPAD(r_sch_rec.schedule_percent(recno), 16, ' '));
5577: END LOOP;
5578:
5585: l_process_flag := r_enc_period.r_process_flag(I);
5586: l_sub_slice_counter := 1;
5587: l_proc_step := 150 + (I / 100000);
5588:
5589: hr_utility.trace('I: ' || fnd_number.number_to_canonical(I) ||
5590: ' l_period_start_date: ' || fnd_date.date_to_canonical(l_period_start_date) ||
5591: ' l_period_end_date: ' || fnd_date.date_to_canonical(l_period_end_date) ||
5592: ' l_asg_start_date: ' || fnd_date.date_to_canonical(l_asg_start_date) ||
5593: ' l_asg_end_date: ' || fnd_date.date_to_canonical(l_asg_end_date) ||
5603: l_proc_step := 160 + (l_rec_no / 100000);
5604: -- OPEN odls_cur(l_asg_start_date, l_asg_end_date);
5605: -- FETCH odls_cur INTO l_start_date, l_end_date, l_schedule_percent;
5606:
5607: hr_utility.trace('l_sub_slice_counter: ' || fnd_number.number_to_canonical(l_sub_slice_counter) ||
5608: ' l_rec_no: ' || fnd_number.number_to_canonical(l_rec_no) ||
5609: ' l_start_date: ' || fnd_date.date_to_canonical(l_start_date) ||
5610: ' l_end_date: ' || fnd_date.date_to_canonical(l_end_date) ||
5611: ' l_schedule_percent: ' || fnd_number.number_to_canonical(l_schedule_percent));
5608: ' l_rec_no: ' || fnd_number.number_to_canonical(l_rec_no) ||
5609: ' l_start_date: ' || fnd_date.date_to_canonical(l_start_date) ||
5610: ' l_end_date: ' || fnd_date.date_to_canonical(l_end_date) ||
5611: ' l_schedule_percent: ' || fnd_number.number_to_canonical(l_schedule_percent));
5612: -- hr_utility.trace('odls_cur%ROWCOUNT: ' || fnd_number.number_to_canonical(odls_cur%ROWCOUNT));
5613:
5614: -- IF (odls_cur%NOTFOUND) THEN
5615: IF (l_start_date > l_asg_end_date) THEN
5616: r_enc_period_tmp1.r_period_ind(l_rec_no) := r_enc_period.r_period_ind(I);
5808: r_enc_period.r_effective_date.DELETE;
5809: l_rec_no := 1;
5810: l_proc_step := 170;
5811:
5812: hr_utility.trace('Dumping Assignment Chunk After Organization Default Schedules Processing ...');
5813: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
5814: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
5815: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
5816: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
5809: l_rec_no := 1;
5810: l_proc_step := 170;
5811:
5812: hr_utility.trace('Dumping Assignment Chunk After Organization Default Schedules Processing ...');
5813: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
5814: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
5815: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
5816: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
5817: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
5815: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
5816: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
5817: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
5818: RPAD('Reason Code', 50, ' '));
5819: hr_utility.trace(LPAD('-', 13, '-') || ' ' ||
5820: LPAD('-', 14, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
5821: RPAD('-', 15, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
5822: RPAD('-', 12, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
5823: RPAD('-', 12, '-') || ' ' || LPAD('-', 16, '-') || ' ' ||
5824: RPAD('-', 50, '-'));
5825:
5826: FOR recno IN 1..r_enc_period_tmp1.r_time_period_id.COUNT
5827: LOOP
5828: hr_utility.trace(LPAD(r_enc_period_tmp1.r_period_ind(recno), 13, ' ') || ' ' ||
5829: LPAD(r_enc_period_tmp1.r_time_period_id(recno), 14, ' ') || ' ' ||
5830: RPAD(TO_CHAR(r_enc_period_tmp1.r_period_start_date(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
5831: RPAD(TO_CHAR(r_enc_period_tmp1.r_period_end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
5832: RPAD(TO_CHAR(r_enc_period_tmp1.r_asg_start_date(recno), 'DD-MON-RRRR'), 14, ' ') || ' ' ||
5852: END LOOP;
5853: END IF;
5854:
5855: IF (g_org_def_account = 'Y') THEN
5856: hr_utility.trace('Organization Default Account Processing');
5857:
5858: l_sch_pointer := 1;
5859: FOR I IN 1..r_enc_period.r_time_period_id.COUNT
5860: LOOP
5865: l_process_flag := r_enc_period.r_process_flag(I);
5866: l_sub_slice_counter := 1;
5867: l_proc_step := 180 + (I / 100000);
5868:
5869: hr_utility.trace('I: ' || fnd_number.number_to_canonical(I) ||
5870: ' l_period_start_date: ' || fnd_date.date_to_canonical(l_period_start_date) ||
5871: ' l_period_end_date: ' || fnd_date.date_to_canonical(l_period_end_date) ||
5872: ' l_asg_start_date: ' || fnd_date.date_to_canonical(l_asg_start_date) ||
5873: ' l_asg_end_date: ' || fnd_date.date_to_canonical(l_asg_end_date) ||
5885: l_schedule_percent:= r_da.percent(da_recno);
5886: END IF;
5887: l_proc_step := 190 + (l_rec_no / 100000);
5888:
5889: hr_utility.trace(' l_sub_slice_counter: ' || fnd_number.number_to_canonical(l_sub_slice_counter) ||
5890: ' l_rec_no: ' || fnd_number.number_to_canonical(l_rec_no) ||
5891: ' l_start_date: ' || fnd_date.date_to_canonical(l_start_date) ||
5892: ' l_end_date: ' || fnd_date.date_to_canonical(l_end_date) ||
5893: ' l_schedule_percent: ' || fnd_number.number_to_canonical(l_schedule_percent));
6038: r_enc_period_tmp1.r_reason_code(l_rec_no) := r_enc_period.r_reason_code(I);
6039: l_rec_no := l_rec_no + 1;
6040: END IF;
6041: END LOOP;
6042: hr_utility.trace('Dumping Assignment Chunk After Organization Default Account Processing ...');
6043: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
6044: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
6045: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
6046: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
6039: l_rec_no := l_rec_no + 1;
6040: END IF;
6041: END LOOP;
6042: hr_utility.trace('Dumping Assignment Chunk After Organization Default Account Processing ...');
6043: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
6044: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
6045: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
6046: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
6047: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
6045: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
6046: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
6047: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
6048: RPAD('Reason Code', 50, ' '));
6049: hr_utility.trace(LPAD('-', 13, '-') || ' ' ||
6050: LPAD('-', 14, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
6051: RPAD('-', 15, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
6052: RPAD('-', 12, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
6053: RPAD('-', 12, '-') || ' ' || LPAD('-', 16, '-') || ' ' ||
6054: RPAD('-', 50, '-'));
6055:
6056: FOR recno IN 1..r_enc_period_tmp1.r_time_period_id.COUNT
6057: LOOP
6058: hr_utility.trace(LPAD(r_enc_period_tmp1.r_period_ind(recno), 13, ' ') || ' ' ||
6059: LPAD(r_enc_period_tmp1.r_time_period_id(recno), 14, ' ') || ' ' ||
6060: RPAD(TO_CHAR(r_enc_period_tmp1.r_period_start_date(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
6061: RPAD(TO_CHAR(r_enc_period_tmp1.r_period_end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
6062: RPAD(TO_CHAR(r_enc_period_tmp1.r_asg_start_date(recno), 'DD-MON-RRRR'), 14, ' ') || ' ' ||
6097:
6098: l_rec_no := 1;
6099: l_proc_step := 200;
6100:
6101: hr_utility.trace('Organization Suspense Account Processing');
6102:
6103: l_sch_pointer := 1;
6104: FOR I IN 1..r_enc_period_tmp1.r_time_period_id.COUNT
6105: LOOP
6110: l_process_flag := r_enc_period_tmp1.r_process_flag(I);
6111: l_sub_slice_counter := 1;
6112: l_proc_step := 210 + (I / 100000);
6113:
6114: hr_utility.trace('I: ' || fnd_number.number_to_canonical(I) ||
6115: ' l_period_start_date: ' || fnd_date.date_to_canonical(l_period_start_date) ||
6116: ' l_period_end_date: ' || fnd_date.date_to_canonical(l_period_end_date) ||
6117: ' l_asg_start_date: ' || fnd_date.date_to_canonical(l_asg_start_date) ||
6118: ' l_asg_end_date: ' || fnd_date.date_to_canonical(l_asg_end_date) ||
6131: l_schedule_percent:= r_sa.percent(sa_recno);
6132: END IF;
6133: l_proc_step := 220 + (l_rec_no / 100000);
6134:
6135: hr_utility.trace('l_sub_slice_counter: ' || fnd_number.number_to_canonical(l_sub_slice_counter) ||
6136: ' l_rec_no: ' || fnd_number.number_to_canonical(l_rec_no) ||
6137: ' l_start_date: ' || fnd_date.date_to_canonical(l_start_date) ||
6138: ' l_end_date: ' || fnd_date.date_to_canonical(l_end_date) ||
6139: ' l_schedule_percent: ' || fnd_number.number_to_canonical(l_schedule_percent));
6301: r_enc_period_tmp1.r_reason_code.DELETE;
6302: r_enc_period_tmp1.r_effective_date.DELETE;
6303: l_proc_step := 230;
6304:
6305: hr_utility.trace('Dumping Assignment Chunk After Suspense Account Processing ...');
6306: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
6307: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
6308: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
6309: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
6302: r_enc_period_tmp1.r_effective_date.DELETE;
6303: l_proc_step := 230;
6304:
6305: hr_utility.trace('Dumping Assignment Chunk After Suspense Account Processing ...');
6306: hr_utility.trace(LPAD('Chunk Pointer', 13, ' ') || ' ' ||
6307: LPAD('Time Period Id', 14, ' ') || ' ' || RPAD('Period Start Date', 17, ' ') || ' ' ||
6308: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
6309: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
6310: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
6308: RPAD('Period End Date', 15, ' ') || ' ' || RPAD('Asg Start Date', 14, ' ') || ' ' ||
6309: RPAD('Asg End Date', 12, ' ') || ' ' || RPAD('Effective Date', 14, ' ') || ' ' ||
6310: RPAD('Process Flag', 12, ' ') || ' ' || LPAD('Schedule Percent', 16, ' ') || ' ' ||
6311: RPAD('Reason Code', 50, ' '));
6312: hr_utility.trace(LPAD('-', 13, '-') || ' ' ||
6313: LPAD('-', 14, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
6314: RPAD('-', 15, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
6315: RPAD('-', 12, '-') || ' ' || RPAD('-', 14, '-') || ' ' ||
6316: RPAD('-', 12, '-') || ' ' || LPAD('-', 16, '-') || ' ' ||
6317: RPAD('-', 50, '-'));
6318:
6319: FOR recno IN 1..r_enc_period.r_time_period_id.COUNT
6320: LOOP
6321: hr_utility.trace(LPAD(r_enc_period.r_period_ind(recno), 13, ' ') || ' ' ||
6322: LPAD(r_enc_period.r_time_period_id(recno), 14, ' ') || ' ' ||
6323: RPAD(TO_CHAR(r_enc_period.r_period_start_date(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
6324: RPAD(TO_CHAR(r_enc_period.r_period_end_date(recno), 'DD-MON-RRRR'), 15, ' ') || ' ' ||
6325: RPAD(TO_CHAR(r_enc_period.r_asg_start_date(recno), 'DD-MON-RRRR'), 14, ' ') || ' ' ||
6329: LPAD(r_enc_period.r_schedule_percent(recno), 16, ' ') || ' ' ||
6330: RPAD(r_enc_period.r_reason_code(recno), 50, ' '));
6331: r_enc_period.r_encumbrance_amount(recno) := 0;
6332: END LOOP;
6333: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Leaving ' || l_proc_name);
6334:
6335: p_return_status := fnd_api.g_ret_sts_success;
6336: EXCEPTION
6337: WHEN OTHERS THEN
6383: FROM psp_enc_payrolls pep
6384: WHERE pep.business_group_id = l_business_group_id
6385: AND pep.set_of_books_id = l_set_of_books_id;
6386: BEGIN
6387: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering CEL_RANGE_CODE pactid: ' || pactid);
6388:
6389: l_last_update_date := SYSDATE;
6390: l_last_updated_by := NVL(FND_GLOBAL.USER_ID, -1);
6391: l_last_updated_login := NVL(FND_GLOBAL.LOGIN_ID, -1);
6399:
6400: IF (l_payroll_id = -1) THEN
6401: l_payroll_id := NULL;
6402: END IF;
6403: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' l_payroll_id: ' || l_payroll_id || '
6404: process_mode: ' || l_process_mode);
6405:
6406: l_process_code := 'CEL';
6407: IF (l_process_mode = 'TERMINATE') THEN
6424:
6425: IF l_return_status <> fnd_api.g_ret_sts_success THEN
6426: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6427: END IF;
6428: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Completed enc_pre_process for l_payroll_id: ' || l_payroll_id || ' process_mode: ' || l_process_mode);
6429: ELSE
6430: OPEN enc_payrolls_cur;
6431: LOOP
6432: FETCH enc_payrolls_cur INTO l_payroll_id;
6435: enc_pre_process(pactid, l_payroll_id, l_process_mode, l_return_status);
6436: IF l_return_status <> fnd_api.g_ret_sts_success THEN
6437: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6438: END IF;
6439: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Completed enc_pre_process for l_payroll_id: ' || l_payroll_id || ' process_mode: ' || l_process_mode);
6440: END LOOP;
6441: CLOSE enc_payrolls_cur;
6442: l_payroll_id := NULL;
6443: END IF;
6473: p_return_status => l_return_status);
6474: RAISE NO_UPDATE_REC_FOUND;
6475: END IF;
6476:
6477: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' sqlstr: ' || sqlstr);
6478: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Leaving CEL_RANGE_CODE pactid: ' || pactid);
6479: EXCEPTION
6480: WHEN NO_UPDATE_REC_FOUND THEN
6481: psp_message_s.print_error (p_mode => FND_FILE.LOG, p_print_header => FND_API.G_FALSE);
6474: RAISE NO_UPDATE_REC_FOUND;
6475: END IF;
6476:
6477: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' sqlstr: ' || sqlstr);
6478: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Leaving CEL_RANGE_CODE pactid: ' || pactid);
6479: EXCEPTION
6480: WHEN NO_UPDATE_REC_FOUND THEN
6481: psp_message_s.print_error (p_mode => FND_FILE.LOG, p_print_header => FND_API.G_FALSE);
6482: fnd_file.put_line(fnd_file.log, fnd_date.date_to_canonical(SYSDATE) || ' Leaving CEL_RANGE_CODE pactid: ' || pactid);
6500: TYPE t_number_15 IS TABLE OF NUMBER(15) INDEX BY BINARY_INTEGER;
6501: t_asg_array t_number_15;
6502: l_asg_action_id NUMBER(15);
6503: BEGIN
6504: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering CEL_ASG_ACTION_CODE p_pactid: ' || p_pactid || '
6505: start_asg: ' || start_asg || '
6506: end_asg: ' || end_asg || '
6507: p_chunk_num: ' || p_chunk_num);
6508:
6509: OPEN get_assignments_cur;
6510: FETCH get_assignments_cur BULK COLLECT INTO t_asg_array;
6511: CLOSE get_assignments_cur;
6512:
6513: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' t_asg_array.COUNT: ' || t_asg_array.COUNT);
6514: FOR recno IN 1..t_asg_array.COUNT
6515: LOOP
6516: SELECT pay_assignment_actions_s.NEXTVAL INTO l_asg_action_id FROM DUAL;
6517: hr_nonrun_asact.insact(l_asg_action_id,
6520: object_id => t_asg_array(recno),
6521: object_type => 'ASG',
6522: p_transient_action => TRUE);
6523: END LOOP;
6524: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Leaving CEL_ASG_ACTION_CODE payroll_action_id: ' || p_pactid || '
6525: start_asg: ' || start_asg || '
6526: end_asg: ' || end_asg || '
6527: p_chunk_num: ' || p_chunk_num);
6528: END cel_asg_action_code;
7013: l_enc_create := 1;
7014: l_pre_process_mode:= 'R';
7015: g_currency_code := psp_general.get_currency_code(l_business_group_id);
7016: psp_general.get_currency_precision(g_currency_code,g_precision,g_ext_precision);
7017: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' g_enc_line_type: U
7018: g_request_id: ' || g_request_id || '
7019: g_payroll_action_id: ' || g_payroll_action_id || '
7020: g_currency_code: ' || g_currency_code || '
7021: g_ge_autopop: ' || g_ge_autopop || ' g_et_autopop: ' || g_et_autopop ||
7026: OPEN c_obtain_eff_date_option;
7027: FETCH c_obtain_eff_date_option INTO g_eff_date_value;
7028: CLOSE c_obtain_eff_date_option;
7029:
7030: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' g_eff_date_value: ' || g_eff_date_value);
7031:
7032: obtain_enc_org_end_date(p_enc_org_end_date => l_enc_org_end_date,
7033: p_business_group_id => l_business_group_id,
7034: p_set_of_books_id => l_set_of_books_id,
7036: IF l_return_status <> fnd_api.g_ret_sts_success THEN
7037: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7038: END IF;
7039: g_enc_org_end_date := l_enc_org_end_date ;
7040: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' g_enc_org_end_date: ' || fnd_date.date_to_canonical(g_enc_org_end_date));
7041:
7042: OPEN get_asg_id_cur;
7043: FETCH get_asg_id_cur INTO l_min_asg_id, l_max_asg_id;
7044: CLOSE get_asg_id_cur;
7041:
7042: OPEN get_asg_id_cur;
7043: FETCH get_asg_id_cur INTO l_min_asg_id, l_max_asg_id;
7044: CLOSE get_asg_id_cur;
7045: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' l_min_asg_id: ' || l_min_asg_id || ' l_max_asg_id: ' || l_max_asg_id);
7046:
7047: OPEN get_payroll_asg_cur;
7048: FETCH get_payroll_asg_cur BULK COLLECT INTO t_assignments.payroll_array, t_assignments.asg_array, t_assignments.term_date_array;
7049: CLOSE get_payroll_asg_cur;
7109:
7110: IF l_enc_create = 0 AND l_enc_create_lines = 0 THEN
7111: l_enc_create :=1;
7112: END IF;
7113: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' g_actual_term_date: ' || fnd_date.date_to_canonical(g_actual_term_date) || '
7114: l_max_enc_date: ' || fnd_date.date_to_canonical(l_max_enc_date) || '
7115: l_enc_create: ' || l_enc_create);
7116:
7117: IF l_enc_create > 0 THEN
7114: l_max_enc_date: ' || fnd_date.date_to_canonical(l_max_enc_date) || '
7115: l_enc_create: ' || l_enc_create);
7116:
7117: IF l_enc_create > 0 THEN
7118: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' p_chunk_number: ' || p_chunk_number || '
7119: p_assignment_id => ' || l_assignment_id || '
7120: p_payroll_id => ' || l_payroll_id || '
7121: p_element_type_id => ' || l_element_type_id || '
7122: p_business_group_id => ' || l_business_group_id || '
7158:
7159: IF l_enc_create = 0 AND l_enc_create_lines = 0 THEN
7160: l_enc_create :=1;
7161: END IF;
7162: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' g_actual_term_date: ' || fnd_date.date_to_canonical(g_actual_term_date) || '
7163: l_max_enc_date: ' || fnd_date.date_to_canonical(l_max_enc_date) || '
7164: l_enc_create: ' || l_enc_create);
7165:
7166: IF l_enc_create > 0 THEN
7163: l_max_enc_date: ' || fnd_date.date_to_canonical(l_max_enc_date) || '
7164: l_enc_create: ' || l_enc_create);
7165:
7166: IF l_enc_create > 0 THEN
7167: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' p_chunk_number: ' || p_chunk_number || '
7168: p_assignment_id => ' || l_assignment_id || '
7169: p_payroll_id => ' || l_payroll_id || '
7170: p_element_type_id => ' || l_element_type_id || '
7171: p_business_group_id => ' || l_business_group_id || '
7195: fnd_file.put_line(fnd_file.log, 'No element found for encumbrance.');
7196: END IF;
7197: CLOSE earnings_element_cur;
7198:
7199: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' t_enc_lines_array.r_enc_element_type_id.COUNT: ' || t_enc_lines_array.r_enc_element_type_id.COUNT);
7200: verify_changes(p_payroll_id => l_payroll_id,
7201: p_assignment_id => l_assignment_id,
7202: p_business_group_id => l_business_group_id,
7203: p_set_of_books_id => l_set_of_books_id,
7206:
7207: IF l_return_status <> fnd_api.g_ret_sts_success THEN
7208: RAISE fnd_api.g_exc_unexpected_error;
7209: END IF;
7210: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Completed verify_changes for l_assignment_id: ' || l_assignment_id || ' payroll_id: ' || l_payroll_id);
7211: ELSE
7212: IF (l_liq_all_count > 0) THEN
7213: UPDATE psp_enc_lines_history pelh
7214: SET change_flag = 'N'
7220: WHERE pesl.assignment_id = l_assignment_id
7221: AND pesl.payroll_id = l_payroll_id
7222: AND status_code = 'A'
7223: AND pesl.enc_summary_line_id = pelh.enc_summary_line_id);
7224: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Updated lines to be liquidated');
7225: DELETE psp_enc_changed_assignments
7226: WHERE assignment_id = l_assignment_id
7227: AND payroll_id = l_payroll_id
7228: AND change_type = 'ZZ';
7248: AND NVL(paa.action_status, ppa.action_status) = 'C'
7249: and ppa.date_earned between ptp.start_date and ptp.end_date
7250: and ptp.payroll_id = ppa.payroll_id),l_enc_begin_date)) );
7251:
7252: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Updated lines to be liquidated by regular liquidation');
7253: UPDATE psp_enc_lines_history pelh
7254: SET change_flag = 'U'
7255: WHERE assignment_id = l_assignment_id
7256: AND payroll_id = l_payroll_id
7271: AND NVL(paa.action_status, ppa.action_status) = 'C'
7272: and ppa.date_earned between ptp.start_date and ptp.end_date
7273: and ptp.payroll_id = ppa.payroll_id),l_enc_begin_date)) );
7274:
7275: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Updated lines not to be liquidated by regular liquidation');
7276: END IF;
7277: END IF;
7278:
7279: create_liq_lines (p_payroll_action_id => p_payroll_action_id,
7286:
7287: IF l_return_status <> fnd_api.g_ret_sts_success THEN
7288: RAISE fnd_api.g_exc_unexpected_error;
7289: END IF;
7290: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Completed create_liq_lines for l_assignment_id: ' || l_assignment_id || ' payroll_id: ' || l_payroll_id);
7291:
7292: create_sum_lines (p_payroll_action_id => p_payroll_action_id,
7293: p_payroll_id => l_payroll_id,
7294: p_assignment_id => l_assignment_id,
7298:
7299: IF l_return_status <> fnd_api.g_ret_sts_success THEN
7300: RAISE fnd_api.g_exc_unexpected_error;
7301: END IF;
7302: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Completed create_sum_lines for l_assignment_id: ' || l_assignment_id || ' payroll_id: ' || l_payroll_id);
7303:
7304: update_hierarchy_dates (p_payroll_action_id => p_payroll_action_id,
7305: p_payroll_id => l_payroll_id,
7306: p_assignment_id => l_assignment_id,
7807: l_enc_lines_no NUMBER(15);
7808: l_delete_flag CHAR(1);
7809: l_return_status VARCHAR2(1);
7810: BEGIN
7811: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering verify_changes
7812: p_payroll_id: ' || p_payroll_id || ' p_assignment_id: ' || p_assignment_id || '
7813: p_business_group_id: ' || p_business_group_id || ' p_set_of_books_id: ' || p_set_of_books_id || '
7814: p_enc_line_type: ' || p_enc_line_type);
7815:
7880: OPEN modified_summary_lines_cur;
7881: FETCH modified_summary_lines_cur BULK COLLECT INTO l_enc_summary_line_id_tl;
7882: CLOSE modified_summary_lines_cur;
7883:
7884: hr_utility.trace('l_enc_summary_line_id_tl.COUNT: ' || l_enc_summary_line_id_tl.COUNT);
7885:
7886: FORALL recno IN 1..l_enc_summary_line_id_tl.COUNT
7887: UPDATE psp_enc_lines_history pelh
7888: SET change_flag='N'
8111: t_enc_lines_array.r_hierarchy_code.DELETE;
8112: t_enc_lines_array.r_hierarchy_start_date.DELETE;
8113: t_enc_lines_array.r_hierarchy_end_date.DELETE;
8114:
8115: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' t_enc_lines_array2.r_enc_element_type_id.COUNT: ' || t_enc_lines_array2.r_enc_element_type_id.COUNT);
8116:
8117: --IF (t_enc_lines_array2.r_enc_element_type_id.COUNT = 0) THEN
8118: --delete_previous_error_log(p_assignment_id => p_assignment_id,
8119: --p_payroll_id => p_payroll_id,
8129: IF l_return_status <> fnd_api.g_ret_sts_success THEN
8130: RAISE fnd_api.g_exc_unexpected_error;
8131: END IF;
8132:
8133: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Leaving verify_changes
8134: p_payroll_id: ' || p_payroll_id || ' p_assignment_id: ' || p_assignment_id || '
8135: p_business_group_id: ' || p_business_group_id || ' p_set_of_books_id: ' || p_set_of_books_id || '
8136: p_enc_line_type: ' || p_enc_line_type);
8137: l_retcode := FND_API.G_RET_STS_SUCCESS;
8227: FROM psp_enc_lines_history pelh
8228: WHERE pelh.change_flag = 'N'
8229: AND pelh.assignment_id = p_assignment_id
8230: AND pelh.payroll_id = p_payroll_id);
8231: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' No of liquidation lines created: ' || SQL%ROWCOUNT);
8232:
8233: p_return_status := fnd_api.g_ret_sts_success;
8234: EXCEPTION
8235: WHEN OTHERS THEN
8397: g_actual_term_date, SYSDATE,
8398: l_last_updated_by, l_last_update_login,
8399: l_last_updated_by, SYSDATE,
8400: t_sum_lines.org_id(recno));
8401: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' No of Summary lines created (t_sum_lines.enc_control_id.COUNT): ' || t_sum_lines.enc_control_id.COUNT);
8402:
8403: IF (g_dff_grouping_option = 'Y') THEN
8404: FORALL recno IN 1..t_sum_lines.enc_summary_line_id.COUNT
8405: UPDATE psp_enc_lines pel
8604:
8605: l_prev_enc_end_date PSP_ENC_END_DATES_V.prev_enc_end_date%TYPE; -- Bug 7188209
8606:
8607: BEGIN
8608: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering ENC_PRE_PROCESS
8609: p_payroll_action_id: ' || p_payroll_action_id || '
8610: p_payroll_id: ' || p_payroll_id || '
8611: p_process_mode: ' || p_process_mode);
8612:
8612:
8613: l_request_id := FND_GLOBAL. CONC_REQUEST_ID;
8614: l_set_of_books_id := FND_PROFILE.VALUE('GL_SET_OF_BKS_ID');
8615: l_business_group_id := FND_PROFILE.VALUE('PER_BUSINESS_GROUP_ID');
8616: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' l_request_id: ' || l_request_id ||'
8617: l_set_of_books_id: ' || l_set_of_books_id || '
8618: l_business_group_id: ' || l_business_group_id);
8619:
8620: IF (p_process_mode = 'REGULAR') THEN
8630: OPEN c_tp_start_date;
8631: FETCH c_tp_start_date INTO l_enc_begin_date;
8632: CLOSE c_tp_start_date;
8633: END IF;
8634: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' l_enc_begin_date: ' || fnd_date.date_to_canonical(l_enc_begin_date));
8635:
8636: l_pre_process_mode := 'R';
8637: IF (l_new_cust = 0 AND psp_general.start_capturing_updates(l_business_group_id) = 'N') THEN
8638: l_pre_process_mode := 'F';
8646: p_return_status => l_return_status);
8647: IF l_return_status <> fnd_api.g_ret_sts_success THEN
8648: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
8649: END IF;
8650: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Completed psp_enc_pre_process.poeta_pre_process');
8651:
8652: IF (l_pre_process_mode <>'F') THEN
8653: psp_enc_pre_process.labor_schedule_pre_process
8654: (p_enc_line_type => 'U',
8657:
8658: IF l_return_status <> fnd_api.g_ret_sts_success THEN
8659: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
8660: END IF;
8661: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Completed psp_enc_pre_process.labor_schedule_pre_process');
8662: END IF;
8663:
8664: OPEN enc_payroll_cur;
8665: FETCH enc_payroll_cur INTO l_inc_exc_flag;
8663:
8664: OPEN enc_payroll_cur;
8665: FETCH enc_payroll_cur INTO l_inc_exc_flag;
8666: CLOSE enc_payroll_cur;
8667: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' l_inc_exc_flag: ' || l_inc_exc_flag);
8668:
8669: -- Bug 7188209
8670: select prev_enc_end_date into l_prev_enc_end_date
8671: from PSP_ENC_END_DATES_V
8670: select prev_enc_end_date into l_prev_enc_end_date
8671: from PSP_ENC_END_DATES_V
8672: where business_group_id = l_business_group_id
8673: and set_of_books_id = l_set_of_books_id;
8674: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' l_prev_enc_end_date = ' || l_prev_enc_end_date);
8675:
8676:
8677: IF l_inc_exc_flag = 'Y' THEN
8678:
8729: and ppa.date_earned between ptp.start_date and ptp.end_date
8730: and ptp.payroll_id = ppa.payroll_id),l_enc_begin_date))
8731: AND pesl.payroll_id = p_payroll_id);
8732:
8733: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || '10-A Inserted ' || SQL%ROWCOUNT || ' assignments into psp_enc_changed_assignments');
8734:
8735:
8736: -- Added this INSERT for bug 7188209
8737:
8774: AND pesl.status_code IN ('A', 'N')
8775: AND pesl.effective_date > l_prev_enc_end_date
8776: AND pesl.payroll_id = p_payroll_id);
8777:
8778: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || '10-B Inserted ' || SQL%ROWCOUNT || ' assignments into psp_enc_changed_assignments');
8779:
8780: INSERT INTO psp_enc_changed_assignments
8781: (request_id, payroll_id, assignment_id, change_type, payroll_action_id)
8782: SELECT DISTINCT l_request_id, p_payroll_id, pa.assignment_id, 'ZZ', p_payroll_action_id
8818: WHERE pesl.assignment_id = pa.assignment_id
8819: AND pesl.status_code = 'N'
8820: AND pesl.payroll_id = p_payroll_id);
8821:
8822: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || '20 Inserted ' || SQL%ROWCOUNT || ' assignments into psp_enc_changed_assignments');
8823:
8824: ELSE
8825:
8826: INSERT INTO psp_enc_changed_assignments
8869: AND ppa.payroll_id = pesl.payroll_id
8870: AND ppa.action_type IN ( 'R','Q')
8871: AND paa.action_status(+) = 'C'),l_enc_begin_date)) );
8872:
8873: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || '30-A Inserted ' || SQL%ROWCOUNT || ' assignments into psp_enc_changed_assignments');
8874:
8875: -- Added for bug 7188209
8876: INSERT INTO psp_enc_changed_assignments
8877: (request_id, payroll_id, assignment_id, change_type, payroll_action_id)
8906: WHERE pesl.assignment_id = pa.assignment_id
8907: AND pesl.status_code IN ('A', 'N')
8908: AND pesl.effective_date > l_prev_enc_end_date);
8909:
8910: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || '30-B Inserted ' || SQL%ROWCOUNT || ' assignments into psp_enc_changed_assignments');
8911:
8912: INSERT INTO psp_enc_changed_assignments
8913: (request_id, payroll_id, assignment_id, change_type, payroll_action_id)
8914: SELECT DISTINCT l_request_id, p_payroll_id, pa.assignment_id, 'ZZ', p_payroll_action_id
8949: FROM psp_enc_summary_lines pesl
8950: WHERE pesl.assignment_id = pa.assignment_id
8951: AND pesl.status_code = 'N'
8952: AND pesl.payroll_id = p_payroll_id);
8953: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || '40 Inserted ' || SQL%ROWCOUNT || ' assignments into psp_enc_changed_assignments');
8954: END IF;
8955:
8956: INSERT INTO psp_enc_changed_assignments
8957: (request_id, payroll_id, assignment_id, change_type, payroll_action_id)
8996: and ppa.date_earned between ptp.start_date and ptp.end_date
8997: and ptp.payroll_id = ppa.payroll_id),l_enc_begin_date))
8998: AND pesl2.payroll_id = p_payroll_id);
8999:
9000: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || '50 Inserted ' || SQL%ROWCOUNT || ' assignments into psp_enc_changed_assignments');
9001:
9002: UPDATE psp_enc_changed_assignments peca
9003: SET payroll_action_id = p_payroll_action_id
9004: WHERE payroll_action_id IS NULL
9007: FROM psp_enc_process_assignments pepa
9008: WHERE pepa.assignment_id = peca.assignment_id
9009: AND pepa.assignment_status NOT IN ('B', 'P')
9010: AND pepa.payroll_id = peca.payroll_id);
9011: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Marked ' || SQL%ROWCOUNT || ' assignments in psp_enc_changed_assignments to be processed by this Create and Update process');
9012:
9013: DELETE FROM psp_enc_changed_assignments
9014: WHERE payroll_action_id = p_payroll_action_id
9015: AND payroll_id = p_payroll_id
9020: MINUS
9021: SELECT ASSIGNMENT_ID FROM psp_enc_changed_asg_history
9022: WHERE payroll_id = p_payroll_id);
9023:
9024: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Deleted ' || SQL%ROWCOUNT || ' fresh excluded assignments in psp_enc_changed_assignments not to be processed by this Create and Update process');
9025:
9026: OPEN in_process_asg_cur;
9027: LOOP
9028: FETCH in_process_asg_cur INTO l_assignment_id, l_payroll_action_id;
9073: FETCH action_parameters_cur INTO l_person_id1, l_termination_date1,
9074: l_person_id2, l_termination_date2, l_person_id3, l_termination_date3,
9075: l_person_id4, l_termination_date4, l_person_id5, l_termination_date5;
9076: CLOSE action_parameters_cur;
9077: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' l_person_id1: ' || l_person_id1 || ' l_termination_date1: ' || fnd_date.date_to_canonical(l_termination_date1) || '
9078: l_person_id2: ' || l_person_id2 || ' l_termination_date2: ' || fnd_date.date_to_canonical(l_termination_date2) || '
9079: l_person_id3: ' || l_person_id3 || ' l_termination_date3: ' || fnd_date.date_to_canonical(l_termination_date3) || '
9080: l_person_id4: ' || l_person_id4 || ' l_termination_date4: ' || fnd_date.date_to_canonical(l_termination_date4) || '
9081: l_person_id5: ' || l_person_id5 || ' l_termination_date5: ' || fnd_date.date_to_canonical(l_termination_date5));
9096: AND NOT EXISTS (SELECT 1
9097: FROM psp_enc_summary_lines pesl2
9098: WHERE pesl2.person_id = l_person_id1
9099: AND pesl2.status_code = 'N');
9100: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Inserted termination assignments into psp_enc_changed_assignments ' || SQL%ROWCOUNT);
9101: IF (SQL%ROWCOUNT = 0) THEN
9102: OPEN in_process_term_cur(l_person_id1);
9103: LOOP
9104: FETCH in_process_term_cur INTO l_assignment_id, l_payroll_id, l_payroll_action_id;
9163: AND NOT EXISTS (SELECT 1
9164: FROM psp_enc_summary_lines pesl2
9165: WHERE pesl2.person_id = l_person_id2
9166: AND pesl2.status_code = 'N');
9167: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Inserted termination assignments into psp_enc_changed_assignments ' || SQL%ROWCOUNT);
9168: IF (SQL%ROWCOUNT = 0) THEN
9169: OPEN in_process_term_cur(l_person_id2);
9170: LOOP
9171: FETCH in_process_term_cur INTO l_assignment_id, l_payroll_id, l_payroll_action_id;
9231: AND NOT EXISTS (SELECT 1
9232: FROM psp_enc_summary_lines pesl2
9233: WHERE pesl2.person_id = l_person_id3
9234: AND pesl2.status_code = 'N');
9235: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Inserted termination assignments into psp_enc_changed_assignments ' || SQL%ROWCOUNT);
9236: IF (SQL%ROWCOUNT = 0) THEN
9237: OPEN in_process_term_cur(l_person_id3);
9238: LOOP
9239: FETCH in_process_term_cur INTO l_assignment_id, l_payroll_id, l_payroll_action_id;
9299: AND NOT EXISTS (SELECT 1
9300: FROM psp_enc_summary_lines pesl2
9301: WHERE pesl2.person_id = l_person_id4
9302: AND pesl2.status_code = 'N');
9303: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Inserted termination assignments into psp_enc_changed_assignments ' || SQL%ROWCOUNT);
9304: IF (SQL%ROWCOUNT = 0) THEN
9305: OPEN in_process_term_cur(l_person_id4);
9306: LOOP
9307: FETCH in_process_term_cur INTO l_assignment_id, l_payroll_id, l_payroll_action_id;
9367: AND NOT EXISTS (SELECT 1
9368: FROM psp_enc_summary_lines pesl2
9369: WHERE pesl2.person_id = l_person_id5
9370: AND pesl2.status_code = 'N');
9371: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Inserted termination assignments into psp_enc_changed_assignments ' || SQL%ROWCOUNT);
9372: IF (SQL%ROWCOUNT = 0) THEN
9373: OPEN in_process_term_cur(l_person_id5);
9374: LOOP
9375: FETCH in_process_term_cur INTO l_assignment_id, l_payroll_id, l_payroll_action_id;
9419: END IF;
9420: END IF;
9421:
9422: COMMIT;
9423: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Leaving ENC_PRE_PROCESS
9424: p_payroll_action_id: ' || p_payroll_action_id || '
9425: p_payroll_id: ' || p_payroll_id || '
9426: p_process_mode: ' || p_process_mode);
9427: p_return_status := fnd_api.g_ret_sts_success;
10035: AND ( poa.gl_code_combination_id IS NOT NULL
10036: OR poa.award_id IS NOT NULL)
10037: ORDER BY poa.start_date_active, poa.end_date_active;
10038: BEGIN
10039: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering LOAD_SCH_HIERARCHY p_assignment_id: ' || fnd_number.number_to_canonical(p_assignment_id) || '
10040: p_element_type_id: ' || fnd_number.number_to_canonical(p_element_type_id) || '
10041: p_business_group_id: ' || fnd_number.number_to_canonical(p_business_group_id) || '
10042: p_set_of_books_id: ' || fnd_number.number_to_canonical(p_set_of_books_id));
10043:
10059: r_gee.attribute5, r_gee.attribute6,
10060: r_gee.attribute7, r_gee.attribute8,
10061: r_gee.attribute9, r_gee.attribute10, r_gee.acct_type;
10062: CLOSE global_element_cur;
10063: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_gee.line_account_id.COUNT: ' || r_gee.line_account_id.COUNT);
10064:
10065: OPEN sch_lines_element_type_cur;
10066: FETCH sch_lines_element_type_cur BULK COLLECT INTO r_et.line_account_id,
10067: r_et.gl_code_combination_id, r_et.project_id,
10075: r_et.attribute5, r_et.attribute6,
10076: r_et.attribute7, r_et.attribute8,
10077: r_et.attribute9, r_et.attribute10, r_et.acct_type;
10078: CLOSE sch_lines_element_type_cur;
10079: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_et.line_account_id.COUNT: ' || r_et.line_account_id.COUNT);
10080:
10081: OPEN sch_lines_element_class_cur;
10082: FETCH sch_lines_element_class_cur BULK COLLECT INTO r_ec.line_account_id,
10083: r_ec.gl_code_combination_id, r_ec.project_id,
10091: r_ec.attribute5, r_ec.attribute6,
10092: r_ec.attribute7, r_ec.attribute8,
10093: r_ec.attribute9, r_ec.attribute10, r_ec.acct_type;
10094: CLOSE sch_lines_element_class_cur;
10095: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_ec.line_account_id.COUNT: ' || r_ec.line_account_id.COUNT);
10096:
10097: OPEN sch_lines_assignment_cur;
10098: FETCH sch_lines_assignment_cur BULK COLLECT INTO r_asg.line_account_id,
10099: r_asg.gl_code_combination_id, r_asg.project_id,
10107: r_asg.attribute5, r_asg.attribute6,
10108: r_asg.attribute7, r_asg.attribute8,
10109: r_asg.attribute9, r_asg.attribute10, r_asg.acct_type;
10110: CLOSE sch_lines_assignment_cur;
10111: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_asg.line_account_id.COUNT: ' || r_asg.line_account_id.COUNT);
10112:
10113: OPEN asg_org_cur;
10114: FETCH asg_org_cur BULK COLLECT INTO r_asg_org.organization_id, r_asg_org.start_date, r_asg_org.end_date;
10115: CLOSE asg_org_cur;
10329: r_gsa.attribute9.DELETE;
10330: r_gsa.attribute10.DELETE;
10331: r_gsa.acct_type.DELETE;
10332: END LOOP;
10333: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_odls.line_account_id.COUNT: ' || r_odls.line_account_id.COUNT);
10334: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_da.line_account_id.COUNT: ' || r_da.line_account_id.COUNT);
10335: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_sa_tmp.line_account_id.COUNT: ' || r_sa_tmp.line_account_id.COUNT);
10336:
10337: IF (r_sa_tmp.line_account_id.COUNT = 0) THEN
10330: r_gsa.attribute10.DELETE;
10331: r_gsa.acct_type.DELETE;
10332: END LOOP;
10333: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_odls.line_account_id.COUNT: ' || r_odls.line_account_id.COUNT);
10334: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_da.line_account_id.COUNT: ' || r_da.line_account_id.COUNT);
10335: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_sa_tmp.line_account_id.COUNT: ' || r_sa_tmp.line_account_id.COUNT);
10336:
10337: IF (r_sa_tmp.line_account_id.COUNT = 0) THEN
10338: OPEN generic_suspense_cur;
10331: r_gsa.acct_type.DELETE;
10332: END LOOP;
10333: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_odls.line_account_id.COUNT: ' || r_odls.line_account_id.COUNT);
10334: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_da.line_account_id.COUNT: ' || r_da.line_account_id.COUNT);
10335: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_sa_tmp.line_account_id.COUNT: ' || r_sa_tmp.line_account_id.COUNT);
10336:
10337: IF (r_sa_tmp.line_account_id.COUNT = 0) THEN
10338: OPEN generic_suspense_cur;
10339: FETCH generic_suspense_cur BULK COLLECT INTO r_sa.line_account_id,
10348: r_sa.attribute5, r_sa.attribute6,
10349: r_sa.attribute7, r_sa.attribute8,
10350: r_sa.attribute9, r_sa.attribute10, r_sa.acct_type;
10351: CLOSE generic_suspense_cur;
10352: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_sa.line_account_id.COUNT: ' || r_sa.line_account_id.COUNT);
10353: ELSE
10354: OPEN generic_suspense_cur;
10355: FETCH generic_suspense_cur BULK COLLECT INTO r_gsa.line_account_id,
10356: r_gsa.gl_code_combination_id, r_gsa.project_id,
10364: r_gsa.attribute5, r_gsa.attribute6,
10365: r_gsa.attribute7, r_gsa.attribute8,
10366: r_gsa.attribute9, r_gsa.attribute10, r_gsa.acct_type;
10367: CLOSE generic_suspense_cur;
10368: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_gsa.line_account_id.COUNT: ' || r_gsa.line_account_id.COUNT);
10369:
10370: g_sa_pointer := 0;
10371: IF (r_sa_tmp.start_date_active(1) >= r_enc_period.r_asg_start_date(1)) THEN
10372: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) ||
10368: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_gsa.line_account_id.COUNT: ' || r_gsa.line_account_id.COUNT);
10369:
10370: g_sa_pointer := 0;
10371: IF (r_sa_tmp.start_date_active(1) >= r_enc_period.r_asg_start_date(1)) THEN
10372: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) ||
10373: ' r_sa_tmp.start_date_active(1): ' || r_sa_tmp.start_date_active(1) ||
10374: ' r_enc_period.r_asg_start_date(1): ' || r_enc_period.r_asg_start_date(1));
10375: FOR gsa_rec_no IN 1..r_gsa.line_account_id.COUNT
10376: LOOP
10401: r_sa.attribute9(g_sa_pointer) := r_gsa.attribute9(gsa_rec_no);
10402: r_sa.attribute10(g_sa_pointer) := r_gsa.attribute10(gsa_rec_no);
10403: r_sa.acct_type(g_sa_pointer) := r_gsa.acct_type(gsa_rec_no);
10404: END LOOP;
10405: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Identified Generic Suspense Lines for suspense gap before the first suspense line');
10406: END IF;
10407: g_sa_pointer := g_sa_pointer + 1;
10408: r_sa.line_account_id(g_sa_pointer) := r_sa_tmp.line_account_id(1);
10409: r_sa.gl_code_combination_id(g_sa_pointer) := r_sa_tmp.gl_code_combination_id(1);
10428: r_sa.attribute8(g_sa_pointer) := r_sa_tmp.attribute8(1);
10429: r_sa.attribute9(g_sa_pointer) := r_sa_tmp.attribute9(1);
10430: r_sa.attribute10(g_sa_pointer) := r_sa_tmp.attribute10(1);
10431: r_sa.acct_type(g_sa_pointer) := r_sa_tmp.acct_type(1);
10432: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Stamped first suspense line');
10433:
10434: IF (r_sa_tmp.line_account_id.COUNT > 1) THEN
10435: FOR sa_recno IN 2..r_sa_tmp.line_account_id.COUNT
10436: LOOP
10463: r_sa.attribute8(g_sa_pointer) := r_gsa.attribute8(gsa_rec_no);
10464: r_sa.attribute9(g_sa_pointer) := r_gsa.attribute9(gsa_rec_no);
10465: r_sa.attribute10(g_sa_pointer) := r_gsa.attribute10(gsa_rec_no);
10466: r_sa.acct_type(g_sa_pointer) := r_gsa.acct_type(gsa_rec_no);
10467: hr_utility.trace(' Stamped generic suspense line between ' ||
10468: r_sa.start_date_active(g_sa_pointer) || ' AND ' ||
10469: r_sa.end_date_active(g_sa_pointer));
10470: END IF;
10471: END LOOP;
10469: r_sa.end_date_active(g_sa_pointer));
10470: END IF;
10471: END LOOP;
10472: END IF;
10473: hr_utility.trace(' Attempting to stamp org suspense');
10474: g_sa_pointer := g_sa_pointer + 1;
10475: r_sa.line_account_id(g_sa_pointer) := r_sa_tmp.line_account_id(sa_recno);
10476: r_sa.gl_code_combination_id(g_sa_pointer) := r_sa_tmp.gl_code_combination_id(sa_recno);
10477: r_sa.project_id(g_sa_pointer) := r_sa_tmp.project_id(sa_recno);
10495: r_sa.attribute8(g_sa_pointer) := r_sa_tmp.attribute8(sa_recno);
10496: r_sa.attribute9(g_sa_pointer) := r_sa_tmp.attribute9(sa_recno);
10497: r_sa.attribute10(g_sa_pointer) := r_sa_tmp.attribute10(sa_recno);
10498: r_sa.acct_type(g_sa_pointer) := r_sa_tmp.acct_type(sa_recno);
10499: hr_utility.trace(' Stamped org suspense line between ' ||
10500: r_sa.start_date_active(g_sa_pointer) || ' AND ' || r_sa.end_date_active(g_sa_pointer));
10501: END LOOP;
10502: END IF;
10503:
10556: r_sa_tmp.attribute9.DELETE;
10557: r_sa_tmp.attribute10.DELETE;
10558: r_sa_tmp.acct_type.DELETE;
10559: END IF;
10560: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' r_sa.line_account_id.COUNT: ' || r_sa.line_account_id.COUNT);
10561: END IF;
10562:
10563: r_gsa.line_account_id.DELETE;
10564: r_gsa.gl_code_combination_id.DELETE;
10586: r_gsa.acct_type.DELETE;
10587:
10588: g_pateo_end_date := fnd_date.canonical_to_date('1800/01/01 00:00:00');
10589:
10590: hr_utility.trace('
10591: Global Element Hierarchy');
10592: hr_utility.trace(LPAD('Element Account Id', 18, ' ') || ' ' ||
10593: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10594: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10588: g_pateo_end_date := fnd_date.canonical_to_date('1800/01/01 00:00:00');
10589:
10590: hr_utility.trace('
10591: Global Element Hierarchy');
10592: hr_utility.trace(LPAD('Element Account Id', 18, ' ') || ' ' ||
10593: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10594: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10595: LPAD('GL CC Id', 15, ' ') || ' ' || LPAD('Project Id', 15, ' ') || ' ' ||
10596: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10596: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10597: LPAD('Expenditure Org Id', 18, ' ') || ' ' || RPAD('Expenditure Type', 30, ' ') || ' ' ||
10598: LPAD('Percent', 10, ' '));
10599:
10600: hr_utility.trace(LPAD('-', 18, '-') || ' ' ||
10601: RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
10602: RPAD('-', 17, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' ||
10603: LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 18, '-') || ' ' ||
10604: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10604: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10605:
10606: FOR recno IN 1..r_gee.line_account_id.COUNT
10607: LOOP
10608: hr_utility.trace(LPAD(r_gee.line_account_id(recno), 17, ' ') || ' ' ||
10609: RPAD(TO_CHAR(r_gee.start_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10610: RPAD(TO_CHAR(r_gee.end_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10611: RPAD(NVL(TO_CHAR(r_gee.poeta_start_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10612: RPAD(NVL(TO_CHAR(r_gee.poeta_end_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10635: END IF;
10636: g_pateo_end_date := GREATEST(g_pateo_end_date, NVL(r_gee.poeta_end_date(recno), g_pateo_end_date));
10637: END LOOP;
10638:
10639: hr_utility.trace('
10640: Element Type Hierarchy');
10641: hr_utility.trace(LPAD('Schedule Line Id', 17, ' ') || ' ' ||
10642: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10643: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10637: END LOOP;
10638:
10639: hr_utility.trace('
10640: Element Type Hierarchy');
10641: hr_utility.trace(LPAD('Schedule Line Id', 17, ' ') || ' ' ||
10642: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10643: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10644: LPAD('GL CC Id', 15, ' ') || ' ' || LPAD('Project Id', 15, ' ') || ' ' ||
10645: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10645: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10646: LPAD('Expenditure Org Id', 18, ' ') || ' ' || RPAD('Expenditure Type', 30, ' ') || ' ' ||
10647: LPAD('Percent', 10, ' '));
10648:
10649: hr_utility.trace(LPAD('-', 17, '-') || ' ' ||
10650: RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
10651: RPAD('-', 17, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' ||
10652: LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 18, '-') || ' ' ||
10653: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10653: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10654:
10655: FOR recno IN 1..r_et.line_account_id.COUNT
10656: LOOP
10657: hr_utility.trace(LPAD(r_et.line_account_id(recno), 17, ' ') || ' ' ||
10658: RPAD(TO_CHAR(r_et.start_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10659: RPAD(TO_CHAR(r_et.end_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10660: RPAD(NVL(TO_CHAR(r_et.poeta_start_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10661: RPAD(NVL(TO_CHAR(r_et.poeta_end_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10683: END IF;
10684: g_pateo_end_date := GREATEST(g_pateo_end_date, NVL(r_et.poeta_end_date(recno), g_pateo_end_date));
10685: END LOOP;
10686:
10687: hr_utility.trace('
10688: Element Class Hierarchy');
10689: hr_utility.trace(LPAD('Schedule Line Id', 17, ' ') || ' ' ||
10690: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10691: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10685: END LOOP;
10686:
10687: hr_utility.trace('
10688: Element Class Hierarchy');
10689: hr_utility.trace(LPAD('Schedule Line Id', 17, ' ') || ' ' ||
10690: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10691: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10692: LPAD('GL CC Id', 15, ' ') || ' ' || LPAD('Project Id', 15, ' ') || ' ' ||
10693: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10693: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10694: LPAD('Expenditure Org Id', 18, ' ') || ' ' || RPAD('Expenditure Type', 30, ' ') || ' ' ||
10695: LPAD('Percent', 10, ' '));
10696:
10697: hr_utility.trace(LPAD('-', 17, '-') || ' ' ||
10698: RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
10699: RPAD('-', 17, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' ||
10700: LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 18, '-') || ' ' ||
10701: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10701: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10702:
10703: FOR recno IN 1..r_ec.line_account_id.COUNT
10704: LOOP
10705: hr_utility.trace(LPAD(r_ec.line_account_id(recno), 17, ' ') || ' ' ||
10706: RPAD(TO_CHAR(r_ec.start_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10707: RPAD(TO_CHAR(r_ec.end_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10708: RPAD(NVL(TO_CHAR(r_ec.poeta_start_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10709: RPAD(NVL(TO_CHAR(r_ec.poeta_end_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10731: END IF;
10732: g_pateo_end_date := GREATEST(g_pateo_end_date, NVL(r_ec.poeta_end_date(recno), g_pateo_end_date));
10733: END LOOP;
10734:
10735: hr_utility.trace('
10736: Assignment Hierarchy');
10737: hr_utility.trace(LPAD('Schedule Line Id', 17, ' ') || ' ' ||
10738: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10739: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10733: END LOOP;
10734:
10735: hr_utility.trace('
10736: Assignment Hierarchy');
10737: hr_utility.trace(LPAD('Schedule Line Id', 17, ' ') || ' ' ||
10738: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10739: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10740: LPAD('GL CC Id', 15, ' ') || ' ' || LPAD('Project Id', 15, ' ') || ' ' ||
10741: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10741: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10742: LPAD('Expenditure Org Id', 18, ' ') || ' ' || RPAD('Expenditure Type', 30, ' ') || ' ' ||
10743: LPAD('Percent', 10, ' '));
10744:
10745: hr_utility.trace(LPAD('-', 17, '-') || ' ' ||
10746: RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
10747: RPAD('-', 17, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' ||
10748: LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 18, '-') || ' ' ||
10749: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10749: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10750:
10751: FOR recno IN 1..r_asg.line_account_id.COUNT
10752: LOOP
10753: hr_utility.trace(LPAD(r_asg.line_account_id(recno), 17, ' ') || ' ' ||
10754: RPAD(TO_CHAR(r_asg.start_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10755: RPAD(TO_CHAR(r_asg.end_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10756: RPAD(NVL(TO_CHAR(r_asg.poeta_start_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10757: RPAD(NVL(TO_CHAR(r_asg.poeta_end_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10779: END IF;
10780: g_pateo_end_date := GREATEST(g_pateo_end_date, NVL(r_asg.poeta_end_date(recno), g_pateo_end_date));
10781: END LOOP;
10782:
10783: hr_utility.trace('
10784: Organization Default Schedules Hierarchy');
10785: hr_utility.trace(LPAD('Schedule Line Id', 17, ' ') || ' ' ||
10786: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10787: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10781: END LOOP;
10782:
10783: hr_utility.trace('
10784: Organization Default Schedules Hierarchy');
10785: hr_utility.trace(LPAD('Schedule Line Id', 17, ' ') || ' ' ||
10786: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10787: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10788: LPAD('GL CC Id', 15, ' ') || ' ' || LPAD('Project Id', 15, ' ') || ' ' ||
10789: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10789: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10790: LPAD('Expenditure Org Id', 18, ' ') || ' ' || RPAD('Expenditure Type', 30, ' ') || ' ' ||
10791: LPAD('Percent', 10, ' '));
10792:
10793: hr_utility.trace(LPAD('-', 17, '-') || ' ' ||
10794: RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
10795: RPAD('-', 17, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' ||
10796: LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 18, '-') || ' ' ||
10797: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10797: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10798:
10799: FOR recno IN 1..r_odls.line_account_id.COUNT
10800: LOOP
10801: hr_utility.trace(LPAD(r_odls.line_account_id(recno), 17, ' ') || ' ' ||
10802: RPAD(TO_CHAR(r_odls.start_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10803: RPAD(TO_CHAR(r_odls.end_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10804: RPAD(NVL(TO_CHAR(r_odls.poeta_start_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10805: RPAD(NVL(TO_CHAR(r_odls.poeta_end_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10827: END IF;
10828: g_pateo_end_date := GREATEST(g_pateo_end_date, NVL(r_odls.poeta_end_date(recno), g_pateo_end_date));
10829: END LOOP;
10830:
10831: hr_utility.trace('
10832: Organization Default Account Hierarchy');
10833: hr_utility.trace(LPAD('Line Account Id', 17, ' ') || ' ' ||
10834: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10835: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10829: END LOOP;
10830:
10831: hr_utility.trace('
10832: Organization Default Account Hierarchy');
10833: hr_utility.trace(LPAD('Line Account Id', 17, ' ') || ' ' ||
10834: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10835: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10836: LPAD('GL CC Id', 15, ' ') || ' ' || LPAD('Project Id', 15, ' ') || ' ' ||
10837: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10837: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10838: LPAD('Expenditure Org Id', 18, ' ') || ' ' || RPAD('Expenditure Type', 30, ' ') || ' ' ||
10839: LPAD('Percent', 10, ' '));
10840:
10841: hr_utility.trace(LPAD('-', 17, '-') || ' ' ||
10842: RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
10843: RPAD('-', 17, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' ||
10844: LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 18, '-') || ' ' ||
10845: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10845: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10846:
10847: FOR recno IN 1..r_da.line_account_id.COUNT
10848: LOOP
10849: hr_utility.trace(LPAD(r_da.line_account_id(recno), 17, ' ') || ' ' ||
10850: RPAD(TO_CHAR(r_da.start_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10851: RPAD(TO_CHAR(r_da.end_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10852: RPAD(NVL(TO_CHAR(r_da.poeta_start_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10853: RPAD(NVL(TO_CHAR(r_da.poeta_end_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10875: END IF;
10876: g_pateo_end_date := GREATEST(g_pateo_end_date, NVL(r_da.poeta_end_date(recno), g_pateo_end_date));
10877: END LOOP;
10878:
10879: hr_utility.trace('
10880: Suspense Account Hierarchy');
10881: hr_utility.trace(LPAD('Line Account Id', 17, ' ') || ' ' ||
10882: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10883: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10877: END LOOP;
10878:
10879: hr_utility.trace('
10880: Suspense Account Hierarchy');
10881: hr_utility.trace(LPAD('Line Account Id', 17, ' ') || ' ' ||
10882: RPAD('Start Date Active', 17, ' ') || ' ' || RPAD('End Date Active', 17, ' ') || ' ' ||
10883: RPAD('PATEO Start Date', 17, ' ') || ' ' || RPAD('PATEO End Date', 17, ' ') || ' ' ||
10884: LPAD('GL CC Id', 15, ' ') || ' ' || LPAD('Project Id', 15, ' ') || ' ' ||
10885: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10885: LPAD('Task Id', 15, ' ') || ' ' || LPAD('Award Id', 15, ' ') || ' ' ||
10886: LPAD('Expenditure Org Id', 18, ' ') || ' ' || RPAD('Expenditure Type', 30, ' ') || ' ' ||
10887: LPAD('Percent', 10, ' '));
10888:
10889: hr_utility.trace(LPAD('-', 17, '-') || ' ' ||
10890: RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' || RPAD('-', 17, '-') || ' ' ||
10891: RPAD('-', 17, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' ||
10892: LPAD('-', 15, '-') || ' ' || LPAD('-', 15, '-') || ' ' || LPAD('-', 18, '-') || ' ' ||
10893: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10893: RPAD('-', 30, '-') || ' ' || LPAD('-', 10, '-'));
10894:
10895: FOR recno IN 1..r_sa.line_account_id.COUNT
10896: LOOP
10897: hr_utility.trace(LPAD(r_sa.line_account_id(recno), 17, ' ') || ' ' ||
10898: RPAD(TO_CHAR(r_sa.start_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10899: RPAD(TO_CHAR(r_sa.end_date_active(recno), 'DD-MON-RRRR'), 17, ' ') || ' ' ||
10900: RPAD(NVL(TO_CHAR(r_sa.poeta_start_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10901: RPAD(NVL(TO_CHAR(r_sa.poeta_end_date(recno), 'DD-MON-RRRR'), ' '), 17, ' ') || ' ' ||
10927: IF ((g_pateo_end_date = fnd_date.canonical_to_date('1800/01/01 00:00:00')) OR
10928: (g_pateo_end_date < g_enc_org_end_date)) THEN
10929: g_pateo_end_date := g_enc_org_end_date;
10930: END IF;
10931: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' g_pateo_end_date: ' || TO_CHAR(g_pateo_end_date, 'DD-MON-RRRR'));
10932:
10933: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Leaving LOAD_SCH_HIERARCHY');
10934: p_return_status := fnd_api.g_ret_sts_success;
10935: EXCEPTION
10929: g_pateo_end_date := g_enc_org_end_date;
10930: END IF;
10931: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' g_pateo_end_date: ' || TO_CHAR(g_pateo_end_date, 'DD-MON-RRRR'));
10932:
10933: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Leaving LOAD_SCH_HIERARCHY');
10934: p_return_status := fnd_api.g_ret_sts_success;
10935: EXCEPTION
10936: WHEN OTHERS THEN
10937: IF (g_error_message IS NULL) THEN
10959: p_percent IN NUMBER DEFAULT NULL) IS
10960: l_warning_ind NUMBER(15);
10961: l_duplicate_ind NUMBER(15);
10962: BEGIN
10963: hr_utility.trace('Entering add_cel_warnings');
10964: l_warning_ind := cel_warnings.start_date.COUNT;
10965: hr_utility.trace('p_start_date: ' || p_start_date || ' p_end_date: ' || p_end_date ||
10966: ' p_hierarchy_code: ' || p_hierarchy_code || ' p_warning_code: ' || p_warning_code ||
10967: ' p_gl_ccid: ' || p_gl_ccid || ' p_project_id: ' || p_project_id || ' p_task_id: ' || p_task_id ||
10961: l_duplicate_ind NUMBER(15);
10962: BEGIN
10963: hr_utility.trace('Entering add_cel_warnings');
10964: l_warning_ind := cel_warnings.start_date.COUNT;
10965: hr_utility.trace('p_start_date: ' || p_start_date || ' p_end_date: ' || p_end_date ||
10966: ' p_hierarchy_code: ' || p_hierarchy_code || ' p_warning_code: ' || p_warning_code ||
10967: ' p_gl_ccid: ' || p_gl_ccid || ' p_project_id: ' || p_project_id || ' p_task_id: ' || p_task_id ||
10968: ' p_award_id:' || p_award_id || ' p_exp_org_id: ' || p_exp_org_id ||
10969: ' p_exp_type: ' || p_exp_type || ' p_effective_date: ' || p_effective_date ||
10979: (cel_warnings.warning_code(l_warning_ind) = 'BAL') AND
10980: (cel_warnings.percent(l_warning_ind) = p_percent));
10981: l_warning_ind := l_warning_ind - 1;
10982: END LOOP;
10983: hr_utility.trace('processing bal l_warning_ind: ' || l_warning_ind);
10984:
10985: l_duplicate_ind := cel_warnings.start_date.COUNT;
10986: LOOP
10987: EXIT WHEN l_duplicate_ind = 0;
10992: (cel_warnings.warning_code(l_duplicate_ind) = 'BAL') AND
10993: (cel_warnings.percent(l_duplicate_ind) = p_percent));
10994: l_duplicate_ind := l_duplicate_ind - 1;
10995: END LOOP;
10996: hr_utility.trace('processing bal l_duplicate_ind: ' || l_duplicate_ind);
10997:
10998: IF (l_warning_ind = 0) THEN
10999: l_warning_ind := cel_warnings.start_date.COUNT + 1;
11000: cel_warnings.start_date(l_warning_ind) := p_start_date;
11027: (cel_warnings.hierarchy_code(l_warning_ind) = p_hierarchy_code) AND
11028: (cel_warnings.warning_code(l_warning_ind) = 'NO_CI'));
11029: l_warning_ind := l_warning_ind - 1;
11030: END LOOP;
11031: hr_utility.trace('processing no_ci l_warning_ind: ' || l_warning_ind);
11032:
11033: l_duplicate_ind := cel_warnings.start_date.COUNT;
11034: LOOP
11035: EXIT WHEN l_duplicate_ind = 0;
11039: (cel_warnings.hierarchy_code(l_duplicate_ind) <> p_hierarchy_code) AND
11040: (cel_warnings.warning_code(l_duplicate_ind) = 'NO_CI'));
11041: l_duplicate_ind := l_duplicate_ind - 1;
11042: END LOOP;
11043: hr_utility.trace('processing no_ci l_duplicate_ind: ' || l_duplicate_ind);
11044:
11045: IF (l_warning_ind = 0) THEN
11046: l_warning_ind := cel_warnings.start_date.COUNT + 1;
11047: cel_warnings.start_date(l_warning_ind) := p_start_date;
11080: (cel_warnings.exp_type(l_warning_ind) = p_exp_type) AND
11081: (NVL(cel_warnings.error_status(l_warning_ind), 'NULL') = NVL(p_error_status, 'NULL')));
11082: l_warning_ind := l_warning_ind - 1;
11083: END LOOP;
11084: hr_utility.trace('processing invalid_ci l_warning_ind: ' || l_warning_ind);
11085:
11086: IF (l_warning_ind = 0) THEN
11087: l_warning_ind := cel_warnings.start_date.COUNT + 1;
11088: cel_warnings.start_date(l_warning_ind) := p_start_date;
11112: (cel_warnings.gl_ccid(l_warning_ind) = p_gl_ccid) AND
11113: (NVL(cel_warnings.error_status(l_warning_ind), 'NULL') = NVL(p_error_status, 'NULL')));
11114: l_warning_ind := l_warning_ind - 1;
11115: END LOOP;
11116: hr_utility.trace('processing autopop l_warning_ind: ' || l_warning_ind);
11117:
11118: IF (l_warning_ind = 0) THEN
11119: l_warning_ind := cel_warnings.start_date.COUNT + 1;
11120: cel_warnings.start_date(l_warning_ind) := p_start_date;
11148: (cel_warnings.exp_type(l_warning_ind) = p_exp_type) AND
11149: (NVL(cel_warnings.error_status(l_warning_ind), 'NULL') = NVL(p_error_status, 'NULL')));
11150: l_warning_ind := l_warning_ind - 1;
11151: END LOOP;
11152: hr_utility.trace('processing autopop l_warning_ind: ' || l_warning_ind);
11153:
11154: IF (l_warning_ind = 0) THEN
11155: l_warning_ind := cel_warnings.start_date.COUNT + 1;
11156: cel_warnings.start_date(l_warning_ind) := p_start_date;
11178: (cel_warnings.hierarchy_code(l_warning_ind) = p_hierarchy_code) AND
11179: (cel_warnings.warning_code(l_warning_ind) = 'GL'));
11180: l_warning_ind := l_warning_ind - 1;
11181: END LOOP;
11182: hr_utility.trace('processing bal l_warning_ind: ' || l_warning_ind);
11183:
11184: l_duplicate_ind := cel_warnings.start_date.COUNT;
11185: LOOP
11186: EXIT WHEN l_duplicate_ind = 0;
11190: (cel_warnings.hierarchy_code(l_duplicate_ind) <> p_hierarchy_code) AND
11191: (cel_warnings.warning_code(l_duplicate_ind) = 'GL'));
11192: l_duplicate_ind := l_duplicate_ind - 1;
11193: END LOOP;
11194: hr_utility.trace('processing bal l_duplicate_ind: ' || l_duplicate_ind);
11195:
11196: IF (l_warning_ind = 0) THEN
11197: l_warning_ind := cel_warnings.start_date.COUNT + 1;
11198: cel_warnings.start_date(l_warning_ind) := p_start_date;
11218: cel_warnings.start_date(l_warning_ind) := cel_warnings.start_date(l_duplicate_ind);
11219: cel_warnings.percent(l_warning_ind) := cel_warnings.percent(l_duplicate_ind) + p_percent;
11220: END IF;
11221: END IF;
11222: hr_utility.trace('cel_warnings.start_date.COUNT: ' || cel_warnings.start_date.COUNT);
11223: hr_utility.trace('Leaving add_cel_warnings');
11224: END add_cel_warnings;
11225:
11226: PROCEDURE delete_previous_error_log(p_assignment_id IN NUMBER,
11219: cel_warnings.percent(l_warning_ind) := cel_warnings.percent(l_duplicate_ind) + p_percent;
11220: END IF;
11221: END IF;
11222: hr_utility.trace('cel_warnings.start_date.COUNT: ' || cel_warnings.start_date.COUNT);
11223: hr_utility.trace('Leaving add_cel_warnings');
11224: END add_cel_warnings;
11225:
11226: PROCEDURE delete_previous_error_log(p_assignment_id IN NUMBER,
11227: p_payroll_id IN NUMBER,
11289: t_enc_lines r_enc_rec;
11290: t_enc_nlines r_enc_rec;
11291: l_nlines_counter NUMBER(15);
11292: BEGIN
11293: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Entering UPDATE_HIERARCHY_DATES');
11294: OPEN hierarchy_dates_cur;
11295: FETCH hierarchy_dates_cur BULK COLLECT INTO t_enc_lines.element_type_id, t_enc_lines.hierarchy_code,
11296: t_enc_lines.gl_ccid, t_enc_lines.project_id, t_enc_lines.task_id,
11297: t_enc_lines.award_id, t_enc_lines.exp_org_id, t_enc_lines.exp_type,
11500: AND enc_start_date <= t_enc_nlines.enc_end_date(recno)
11501: AND enc_end_date >= t_enc_nlines.enc_start_date(recno);
11502: END IF;
11503: p_return_status := fnd_api.g_ret_sts_success;
11504: hr_utility.trace(fnd_date.date_to_canonical(SYSDATE) || ' Leaving UPDATE_HIERARCHY_DATES');
11505: EXCEPTION
11506: WHEN OTHERS THEN
11507: IF (g_error_message IS NULL) THEN
11508: g_error_message := 'UPDATE_HIERARCHY_DATES: ' || SQLERRM;