18: OPEN csr_get_iana_charset;
19: FETCH csr_get_iana_charset INTO lv_iana_charset;
20: CLOSE csr_get_iana_charset;
21:
22: hr_utility.trace('IANA Charset = '||lv_iana_charset);
23: RETURN (lv_iana_charset);
24: END get_IANA_charset;
25: --
26: -------------------------------------------------------------------------------
35: --l_str := '
36: l_str := '
37: dbms_lob.createtemporary(p_xfdf_string,FALSE,DBMS_LOB.CALL);
38: dbms_lob.open(p_xfdf_string,dbms_lob.lob_readwrite);
39: hr_utility.set_location('TableCnt' || to_char(vXMLTable.count),13);
40: IF vXMLTable.count > 0 THEN
41: FOR ctr_table IN vXMLTable.FIRST .. vXMLTable.LAST LOOP
42: -- Bug 4705094
43: l_str1 := vXMLTable(ctr_table).xmlString;
41: FOR ctr_table IN vXMLTable.FIRST .. vXMLTable.LAST LOOP
42: -- Bug 4705094
43: l_str1 := vXMLTable(ctr_table).xmlString;
44: dbms_lob.writeAppend( p_xfdf_string, length(l_str1), l_str1);
45: hr_utility.set_location(to_char(ctr_table),15);
46: END LOOP;
47: ELSE
48: l_str1 := l_str;
49: dbms_lob.writeAppend( p_xfdf_string, length(l_str1), l_str1 );
62: ,p_template_name IN VARCHAR2
63: ,p_xml OUT NOCOPY CLOB
64: )IS
65: BEGIN
66: --hr_utility.TRACE_ON( null, 'IEP35XML' );
67: populate_plsql_table(p_bg_id
68: ,p_emp_no
69: ,p_payroll
70: ,p_assignment_set
298: --12382953
299: BEGIN
300:
301:
302: -- hr_utility.trace_on(null,'vikp35');
303: hr_utility.set_location('Start of Generation...', 1);
304:
305: vXMLTable.DELETE;
306: vCtr := 1;
299: BEGIN
300:
301:
302: -- hr_utility.trace_on(null,'vikp35');
303: hr_utility.set_location('Start of Generation...', 1);
304:
305: vXMLTable.DELETE;
306: vCtr := 1;
307: --vXMLTable(vCtr).xmlString := '
309: vCtr := vCtr + 1;
310: l_start_date := PAY_IE_P35_XML_PKG.get_start_date();
311: -- l_end_date := PAY_IE_P35_XML_PKG.get_end_date();
312: l_end_date := fnd_date.canonical_to_date(p_end_date); --4641756
313: hr_utility.set_location('End Date : '||p_end_date,100);
314:
315: l_reporting_year := to_char(l_start_date,'RRRR'); --12382953
316:
317:
330: CLOSE csr_get_flag_from_set;
331:
332: FOR c_action IN getPayrollAction LOOP
333: flag := flag + 1;
334: hr_utility.set_location('Loop Count ' || to_char(flag), 1);
335: hr_utility.set_location('pactid' || to_char(r_payroll_action_id),13);
336: IF flag = 1 THEN
337: OPEN csr_header_footer_info(c_action.payroll_action_id);
338: FETCH csr_header_footer_info into l_request_id, l_tax_year,l_date,l_empr_no,l_empr_name,
331:
332: FOR c_action IN getPayrollAction LOOP
333: flag := flag + 1;
334: hr_utility.set_location('Loop Count ' || to_char(flag), 1);
335: hr_utility.set_location('pactid' || to_char(r_payroll_action_id),13);
336: IF flag = 1 THEN
337: OPEN csr_header_footer_info(c_action.payroll_action_id);
338: FETCH csr_header_footer_info into l_request_id, l_tax_year,l_date,l_empr_no,l_empr_name,
339: l_contact_name,l_phone,l_addr1,l_addr2,l_addr3,l_week53,l_payroll,l_currency;
337: OPEN csr_header_footer_info(c_action.payroll_action_id);
338: FETCH csr_header_footer_info into l_request_id, l_tax_year,l_date,l_empr_no,l_empr_name,
339: l_contact_name,l_phone,l_addr1,l_addr2,l_addr3,l_week53,l_payroll,l_currency;
340: CLOSE csr_header_footer_info;
341: hr_utility.set_location('emprno' || to_char(l_empr_no),13);
342:
343: vXMLTable(vCtr).xmlString := '
344: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
345: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
354: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
355: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
356: vCtr := vCtr + 1;
357: END IF;
358: hr_utility.set_location('Fetching detail...', 3);
359: hr_utility.set_location('Fetching Pension...', 3);
360: OPEN csr_get_pension_details (c_action.payroll_action_id, c_action.assignment_action_id);
361: FETCH csr_get_pension_details into c_pension;
362: CLOSE csr_get_pension_details;
355: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
356: vCtr := vCtr + 1;
357: END IF;
358: hr_utility.set_location('Fetching detail...', 3);
359: hr_utility.set_location('Fetching Pension...', 3);
360: OPEN csr_get_pension_details (c_action.payroll_action_id, c_action.assignment_action_id);
361: FETCH csr_get_pension_details into c_pension;
362: CLOSE csr_get_pension_details;
363: l_emp_rbs := l_emp_rbs + c_pension.EMP_RBS;
378: l_emp_usc_bal := l_emp_usc_bal + c_pension.EMP_USC_BAL; --14656910 --14656910V9
379: l_emp_gross_income_bal_usc :=c_pension.EMP_GROSS_INCOME_USC;
380: --12382953
381: l_taxable_benefits := l_taxable_benefits + c_pension.TAXABLEBENEFITS;
382: hr_utility.set_location('Generating...', 5);
383: hr_utility.set_location('TableCnt' || to_char(vXMLTable.count),13);
384:
385: l_cess_date:=c_action.EndDate;
386: IF trim(l_cess_date) = '31-12-4712' THEN
379: l_emp_gross_income_bal_usc :=c_pension.EMP_GROSS_INCOME_USC;
380: --12382953
381: l_taxable_benefits := l_taxable_benefits + c_pension.TAXABLEBENEFITS;
382: hr_utility.set_location('Generating...', 5);
383: hr_utility.set_location('TableCnt' || to_char(vXMLTable.count),13);
384:
385: l_cess_date:=c_action.EndDate;
386: IF trim(l_cess_date) = '31-12-4712' THEN
387: l_cess_date := ' ';
385: l_cess_date:=c_action.EndDate;
386: IF trim(l_cess_date) = '31-12-4712' THEN
387: l_cess_date := ' ';
388: END IF;
389: hr_utility.set_location('P1..'||c_action.Works,100);
390: vXMLTable(vCtr).xmlString := '
391: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
392: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
393: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
390: vXMLTable(vCtr).xmlString := '
391: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
392: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
393: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
394: hr_utility.set_location('P2..'||c_action.Works,100);
395: if instr(c_action.IClass,'-') > 0 then
396: l_initial_class := substr(c_action.IClass,1,instr(c_action.IClass,'-',1)-1);
397: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
398: else
397: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
398: else
399: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
400: end if;
401: hr_utility.set_location('P3..'||c_action.Works,100);
402: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
403: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
404: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
405: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
404: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
405: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
406: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
407: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
408: hr_utility.set_location('P4..'||c_action.Works,100);
409: IF c_action.FifthClass is not null then
410: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
411: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
412: ELSE
412: ELSE
413: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
414: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
415: END IF;
416: hr_utility.set_location('P5..'||c_action.Works,100);
417: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
418: l_tot_tax := l_tot_tax + to_number(c_action.NetTax); --14656910 --14656910V9
419: vCtr := vCtr + 1;
420: vXMLTable(vCtr).xmlString := '
421: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
422: l_tot_emp_prsi := l_tot_emp_prsi + to_number(c_action.EmpPRSI); --14656910 --14656910V9
423: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
424: l_tot_prsi := l_tot_prsi + to_number(c_action.TotPRSI); --14656910 --14656910V9
425: hr_utility.set_location('After Adding....TotPRSI=' || l_tot_prsi, 10);
426: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
427: l_tot_pay := l_tot_pay + to_number(c_action.Pay); --14656910 --14656910V9
428: l_tot_pay_rnd := l_tot_pay_rnd + round(to_number(c_action.Pay),0); --14656910 --14656910V9
429: --12382953
452: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
453: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '
454: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '';
455: vCtr := vCtr + 1;
456: hr_utility.set_location('TableCnt' || to_char(vXMLTable.count),18);
457: END LOOP;
458: hr_utility.set_location('Generated...', 6);
459: IF flag = 0 THEN
460: vXMLTable(vCtr).xmlString := '
454: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '';
455: vCtr := vCtr + 1;
456: hr_utility.set_location('TableCnt' || to_char(vXMLTable.count),18);
457: END LOOP;
458: hr_utility.set_location('Generated...', 6);
459: IF flag = 0 THEN
460: vXMLTable(vCtr).xmlString := '
461: vCtr := vCtr + 1;
462: END IF;
492: --12382953
493: vXMLTable(vCtr).xmlString := vXMLTable(vCtr).xmlString || '';
494: vCtr := vCtr + 1;
495:
496: hr_utility.set_location('TableCnt' || to_char(vXMLTable.count),13);
497: EXCEPTION
498: WHEN OTHERS THEN
499: null;
500: END populate_plsql_table;