5: g_proc_name varchar2(100);
6: g_debug BOOLEAN;
7:
8: /****************************************************************************
9: Name : HR_UTILITY_TRACE
10: Description : This procedure prints debug messages.
11: *****************************************************************************/
12: PROCEDURE HR_UTILITY_TRACE
13: (
8: /****************************************************************************
9: Name : HR_UTILITY_TRACE
10: Description : This procedure prints debug messages.
11: *****************************************************************************/
12: PROCEDURE HR_UTILITY_TRACE
13: (
14: P_TRC_DATA varchar2
15: ) AS
16: BEGIN
14: P_TRC_DATA varchar2
15: ) AS
16: BEGIN
17: IF g_debug THEN
18: hr_utility.trace(p_trc_data);
19: END IF;
20: END HR_UTILITY_TRACE;
21:
22:
16: BEGIN
17: IF g_debug THEN
18: hr_utility.trace(p_trc_data);
19: END IF;
20: END HR_UTILITY_TRACE;
21:
22:
23: /****************************************************************************
24: Name : LOAD_XML
31: l_data pay_action_information.action_information1%type;
32:
33: BEGIN
34: l_proc_name := g_proc_name || 'LOAD_XML';
35: hr_utility_trace ('Entering '||l_proc_name);
36: pay_payroll_xml_extract_pkg.g_custom_xml(pay_payroll_xml_extract_pkg.g_custom_xml.count()):=
37: p_xml;
38: hr_utility_trace ('Leaving '||l_proc_name);
39: END LOAD_XML;
34: l_proc_name := g_proc_name || 'LOAD_XML';
35: hr_utility_trace ('Entering '||l_proc_name);
36: pay_payroll_xml_extract_pkg.g_custom_xml(pay_payroll_xml_extract_pkg.g_custom_xml.count()):=
37: p_xml;
38: hr_utility_trace ('Leaving '||l_proc_name);
39: END LOAD_XML;
40:
41:
42: /****************************************************************************
52: l_data pay_action_information.action_information1%type;
53:
54: BEGIN
55: l_proc_name := g_proc_name || 'PREPARE_XML';
56: hr_utility_trace ('Entering '||l_proc_name);
57:
58: IF p_node_type = 'CS' THEN
59: load_xml ('<'||p_node||'>');
60: ELSIF p_node_type = 'CE' THEN
68: l_data := REPLACE (l_data, '"', '"');
69: load_xml ('<'||p_node||'>'||l_data||''||p_node||'>');
70: END IF;
71:
72: hr_utility_trace ('Leaving '||l_proc_name);
73: END PREPARE_XML;
74:
75:
76: /****************************************************************************
97:
98:
99: BEGIN
100: l_proc_name := g_proc_name || 'STRIP_SPL_CHARS';
101: hr_utility_trace ('Entering '||l_proc_name);
102: hr_utility_trace ('p_in_string = '||p_in_string);
103:
104: lv_db_charset := SUBSTR(USERENV('LANGUAGE'),
105: INSTR(USERENV('LANGUAGE'), '.') + 1);
98:
99: BEGIN
100: l_proc_name := g_proc_name || 'STRIP_SPL_CHARS';
101: hr_utility_trace ('Entering '||l_proc_name);
102: hr_utility_trace ('p_in_string = '||p_in_string);
103:
104: lv_db_charset := SUBSTR(USERENV('LANGUAGE'),
105: INSTR(USERENV('LANGUAGE'), '.') + 1);
106:
103:
104: lv_db_charset := SUBSTR(USERENV('LANGUAGE'),
105: INSTR(USERENV('LANGUAGE'), '.') + 1);
106:
107: hr_utility_trace ('lv_db_charset = '||lv_db_charset);
108:
109: IF lv_db_charset = 'WE8ISO8859P1' THEN
110: lv_conv_string := upper(p_in_string);
111: ELSE
115: FOR cntr IN 1..NVL(length (lv_conv_string),0) LOOP
116: lv_repl_char := 'NONE';
117:
118: lv_curr_char := SUBSTR(lv_conv_string, cntr, 1);
119: hr_utility_trace ('Current char = "'|| lv_curr_char ||'"');
120:
121: IF lv_db_charset <> 'WE8ISO8859P1' THEN
122: lv_hex_code := RAWTOHEX (UTL_RAW.cast_to_RAW(lv_curr_char));
123: hr_utility_trace ('Hex Code = '|| lv_hex_code);
119: hr_utility_trace ('Current char = "'|| lv_curr_char ||'"');
120:
121: IF lv_db_charset <> 'WE8ISO8859P1' THEN
122: lv_hex_code := RAWTOHEX (UTL_RAW.cast_to_RAW(lv_curr_char));
123: hr_utility_trace ('Hex Code = '|| lv_hex_code);
124:
125: OPEN get_repl_char (lv_hex_code);
126: FETCH get_repl_char INTO lv_repl_char;
127: CLOSE get_repl_char;
126: FETCH get_repl_char INTO lv_repl_char;
127: CLOSE get_repl_char;
128: ELSE
129: lv_repl_char := ASCII(lv_curr_char);
130: hr_utility_trace('lv_repl_char '||lv_repl_char);
131:
132: IF lv_repl_char = 193 THEN
133: lv_repl_char := 'A';
134: ELSIF lv_repl_char = 201 THEN
147:
148: END IF;
149:
150: IF lv_repl_char = 'NONE' THEN
151: hr_utility_trace ('Character "' || lv_curr_char ||'" not replaced');
152: lv_return := lv_return || lv_curr_char;
153: ELSE
154: hr_utility_trace ('Character "' ||lv_curr_char ||'" replaced by ' ||
155: lv_repl_char);
150: IF lv_repl_char = 'NONE' THEN
151: hr_utility_trace ('Character "' || lv_curr_char ||'" not replaced');
152: lv_return := lv_return || lv_curr_char;
153: ELSE
154: hr_utility_trace ('Character "' ||lv_curr_char ||'" replaced by ' ||
155: lv_repl_char);
156: lv_return := lv_return || lv_repl_char;
157: END IF;
158: hr_utility_trace ('-------------');
154: hr_utility_trace ('Character "' ||lv_curr_char ||'" replaced by ' ||
155: lv_repl_char);
156: lv_return := lv_return || lv_repl_char;
157: END IF;
158: hr_utility_trace ('-------------');
159: END LOOP;
160:
161: lv_return := UPPER(CONVERT(lv_return, lv_db_charset, 'UTF8'));
162:
159: END LOOP;
160:
161: lv_return := UPPER(CONVERT(lv_return, lv_db_charset, 'UTF8'));
162:
163: hr_utility_trace ('lv_return = '||lv_return);
164: hr_utility_trace ('Leaving '||l_proc_name);
165: RETURN (lv_return);
166: END STRIP_SPL_CHARS;
167:
160:
161: lv_return := UPPER(CONVERT(lv_return, lv_db_charset, 'UTF8'));
162:
163: hr_utility_trace ('lv_return = '||lv_return);
164: hr_utility_trace ('Leaving '||l_proc_name);
165: RETURN (lv_return);
166: END STRIP_SPL_CHARS;
167:
168:
243: l_rec PAY_ELE_TMPLT_OBJ;
244: BEGIN
245: l_rec := p_rec;
246:
247: hr_utility_trace('Entering pay_mx_rules.element_template_pre_process');
248:
249: hr_utility_trace('Legislation Code '||l_rec.legislation_code);
250:
251: IF ( instr( p_rec.element_classification, 'Earnings' ) > 0 OR
245: l_rec := p_rec;
246:
247: hr_utility_trace('Entering pay_mx_rules.element_template_pre_process');
248:
249: hr_utility_trace('Legislation Code '||l_rec.legislation_code);
250:
251: IF ( instr( p_rec.element_classification, 'Earnings' ) > 0 OR
252: p_rec.element_classification = 'Amends' ) THEN
253:
279: END IF;
280:
281: END IF;
282:
283: hr_utility_trace('Leaving pay_mx_rules.element_template_pre_process');
284:
285: RETURN l_rec;
286:
287: END element_template_pre_process;
354: lv_eei_info13 VARCHAR2(240);
355:
356: BEGIN
357:
358: hr_utility_trace('Entering pay_mx_rules.element_template_post_process');
359:
360: hr_utility_trace('p_element_template_id '|| p_element_template_id );
361:
362: OPEN c_tmplt_info( p_element_template_id );
356: BEGIN
357:
358: hr_utility_trace('Entering pay_mx_rules.element_template_post_process');
359:
360: hr_utility_trace('p_element_template_id '|| p_element_template_id );
361:
362: OPEN c_tmplt_info( p_element_template_id );
363: FETCH c_tmplt_info INTO l_tmplt;
364: CLOSE c_tmplt_info;
490: ,p_eei_information2 => l_rate_desc(i)
491: ,p_element_type_extra_info_id => l_element_type_extra_info_id
492: ,p_object_version_number => l_object_version_number
493: );
494: hr_utility_trace('Created PQP_UK_RATE_TYPE:'||l_rate_type(i));
495: END LOOP;
496: END IF;
497:
498: /* If the created element belongs to social foresight or Employer
527: END LOOP;
528: CLOSE get_sub_classifications;
529: END IF;
530:
531: hr_utility_trace('Leaving pay_mx_rules.element_template_post_process');
532:
533: END element_template_post_process;
534:
535: PROCEDURE add_custom_xml
665: LOOP
666: IF pay_payroll_xml_extract_pkg.g_custom_params(cntr).parameter_name
667: = p_param_name
668: THEN
669: hr_utility_trace('Custom Params : '||
670: pay_payroll_xml_extract_pkg.g_custom_params(cntr).parameter_name);
671:
672: hr_utility_trace('Custom Params Value : '||
673: pay_payroll_xml_extract_pkg.g_custom_params(cntr).
668: THEN
669: hr_utility_trace('Custom Params : '||
670: pay_payroll_xml_extract_pkg.g_custom_params(cntr).parameter_name);
671:
672: hr_utility_trace('Custom Params Value : '||
673: pay_payroll_xml_extract_pkg.g_custom_params(cntr).
674: parameter_value);
675:
676: RETURN pay_payroll_xml_extract_pkg.g_custom_params(cntr).
683: END;
684:
685: BEGIN
686: l_proc_name := g_proc_name || 'ADD_CUSTOM_XML';
687: hr_utility_trace('Entering '||l_proc_name);
688: hr_utility_trace('p_assignment_action_id '|| p_assignment_action_id);
689: hr_utility_trace('p_action_information_category '||
690: p_action_information_category);
691: hr_utility_trace('p_document_type '|| p_document_type);
684:
685: BEGIN
686: l_proc_name := g_proc_name || 'ADD_CUSTOM_XML';
687: hr_utility_trace('Entering '||l_proc_name);
688: hr_utility_trace('p_assignment_action_id '|| p_assignment_action_id);
689: hr_utility_trace('p_action_information_category '||
690: p_action_information_category);
691: hr_utility_trace('p_document_type '|| p_document_type);
692:
685: BEGIN
686: l_proc_name := g_proc_name || 'ADD_CUSTOM_XML';
687: hr_utility_trace('Entering '||l_proc_name);
688: hr_utility_trace('p_assignment_action_id '|| p_assignment_action_id);
689: hr_utility_trace('p_action_information_category '||
690: p_action_information_category);
691: hr_utility_trace('p_document_type '|| p_document_type);
692:
693: /* For Direct Deposit */
687: hr_utility_trace('Entering '||l_proc_name);
688: hr_utility_trace('p_assignment_action_id '|| p_assignment_action_id);
689: hr_utility_trace('p_action_information_category '||
690: p_action_information_category);
691: hr_utility_trace('p_document_type '|| p_document_type);
692:
693: /* For Direct Deposit */
694:
695: IF (p_document_type = 'DEPOSIT_XML') AND
707: OPEN get_tax_unit_id(p_assignment_action_id);
708: FETCH get_tax_unit_id INTO ln_tax_unit_id;
709: CLOSE get_tax_unit_id;
710:
711: hr_utility_trace('ln_tax_unit_id '|| ln_tax_unit_id);
712:
713: OPEN c_get_bus_grp_id(ln_tax_unit_id);
714: FETCH c_get_bus_grp_id INTO ln_bus_grp_id;
715: CLOSE c_get_bus_grp_id;
713: OPEN c_get_bus_grp_id(ln_tax_unit_id);
714: FETCH c_get_bus_grp_id INTO ln_bus_grp_id;
715: CLOSE c_get_bus_grp_id;
716:
717: hr_utility_trace('ln_bus_grp_id '|| ln_bus_grp_id);
718:
719: ln_legal_employer_id :=
720: hr_mx_utility.get_legal_employer(ln_bus_grp_id, ln_tax_unit_id);
721: hr_utility_trace('ln_legal_employer_id '|| ln_legal_employer_id);
717: hr_utility_trace('ln_bus_grp_id '|| ln_bus_grp_id);
718:
719: ln_legal_employer_id :=
720: hr_mx_utility.get_legal_employer(ln_bus_grp_id, ln_tax_unit_id);
721: hr_utility_trace('ln_legal_employer_id '|| ln_legal_employer_id);
722:
723:
724: OPEN c_get_employer_information(ln_legal_employer_id);
725: FETCH c_get_employer_information INTO lv_org_name
763: FETCH get_account_type INTO lv_account_type
764: ,l_org_payment_method_id;
765: CLOSE get_account_type;
766:
767: hr_utility_trace('lv_org_name '|| lv_org_name);
768: hr_utility_trace('lv_address_line1 '|| lv_address_line1);
769: hr_utility_trace('lv_address_line2 '|| lv_address_line2);
770: hr_utility_trace('lv_address_line3 '|| lv_address_line3);
771: hr_utility_trace('lv_town_or_city '|| lv_town_or_city);
764: ,l_org_payment_method_id;
765: CLOSE get_account_type;
766:
767: hr_utility_trace('lv_org_name '|| lv_org_name);
768: hr_utility_trace('lv_address_line1 '|| lv_address_line1);
769: hr_utility_trace('lv_address_line2 '|| lv_address_line2);
770: hr_utility_trace('lv_address_line3 '|| lv_address_line3);
771: hr_utility_trace('lv_town_or_city '|| lv_town_or_city);
772: hr_utility_trace('lv_postal_code '|| lv_postal_code);
765: CLOSE get_account_type;
766:
767: hr_utility_trace('lv_org_name '|| lv_org_name);
768: hr_utility_trace('lv_address_line1 '|| lv_address_line1);
769: hr_utility_trace('lv_address_line2 '|| lv_address_line2);
770: hr_utility_trace('lv_address_line3 '|| lv_address_line3);
771: hr_utility_trace('lv_town_or_city '|| lv_town_or_city);
772: hr_utility_trace('lv_postal_code '|| lv_postal_code);
773: hr_utility_trace('lv_country '|| lv_country);
766:
767: hr_utility_trace('lv_org_name '|| lv_org_name);
768: hr_utility_trace('lv_address_line1 '|| lv_address_line1);
769: hr_utility_trace('lv_address_line2 '|| lv_address_line2);
770: hr_utility_trace('lv_address_line3 '|| lv_address_line3);
771: hr_utility_trace('lv_town_or_city '|| lv_town_or_city);
772: hr_utility_trace('lv_postal_code '|| lv_postal_code);
773: hr_utility_trace('lv_country '|| lv_country);
774: hr_utility_trace('lv_state '|| lv_state);
767: hr_utility_trace('lv_org_name '|| lv_org_name);
768: hr_utility_trace('lv_address_line1 '|| lv_address_line1);
769: hr_utility_trace('lv_address_line2 '|| lv_address_line2);
770: hr_utility_trace('lv_address_line3 '|| lv_address_line3);
771: hr_utility_trace('lv_town_or_city '|| lv_town_or_city);
772: hr_utility_trace('lv_postal_code '|| lv_postal_code);
773: hr_utility_trace('lv_country '|| lv_country);
774: hr_utility_trace('lv_state '|| lv_state);
775: hr_utility_trace('lv_maternal_last_name '|| lv_maternal_last_name);
768: hr_utility_trace('lv_address_line1 '|| lv_address_line1);
769: hr_utility_trace('lv_address_line2 '|| lv_address_line2);
770: hr_utility_trace('lv_address_line3 '|| lv_address_line3);
771: hr_utility_trace('lv_town_or_city '|| lv_town_or_city);
772: hr_utility_trace('lv_postal_code '|| lv_postal_code);
773: hr_utility_trace('lv_country '|| lv_country);
774: hr_utility_trace('lv_state '|| lv_state);
775: hr_utility_trace('lv_maternal_last_name '|| lv_maternal_last_name);
776:
769: hr_utility_trace('lv_address_line2 '|| lv_address_line2);
770: hr_utility_trace('lv_address_line3 '|| lv_address_line3);
771: hr_utility_trace('lv_town_or_city '|| lv_town_or_city);
772: hr_utility_trace('lv_postal_code '|| lv_postal_code);
773: hr_utility_trace('lv_country '|| lv_country);
774: hr_utility_trace('lv_state '|| lv_state);
775: hr_utility_trace('lv_maternal_last_name '|| lv_maternal_last_name);
776:
777: pay_payroll_xml_extract_pkg.load_xml_data('D','EMPLOYER_NAME',
770: hr_utility_trace('lv_address_line3 '|| lv_address_line3);
771: hr_utility_trace('lv_town_or_city '|| lv_town_or_city);
772: hr_utility_trace('lv_postal_code '|| lv_postal_code);
773: hr_utility_trace('lv_country '|| lv_country);
774: hr_utility_trace('lv_state '|| lv_state);
775: hr_utility_trace('lv_maternal_last_name '|| lv_maternal_last_name);
776:
777: pay_payroll_xml_extract_pkg.load_xml_data('D','EMPLOYER_NAME',
778: lv_org_name);
771: hr_utility_trace('lv_town_or_city '|| lv_town_or_city);
772: hr_utility_trace('lv_postal_code '|| lv_postal_code);
773: hr_utility_trace('lv_country '|| lv_country);
774: hr_utility_trace('lv_state '|| lv_state);
775: hr_utility_trace('lv_maternal_last_name '|| lv_maternal_last_name);
776:
777: pay_payroll_xml_extract_pkg.load_xml_data('D','EMPLOYER_NAME',
778: lv_org_name);
779: pay_payroll_xml_extract_pkg.load_xml_data('D','EMPLOYER_NAME_REPORTING',
845: prepare_xml('D',
846: 'EMPLOYEE_NAME_REPORTING',
847: strip_spl_chars (lv_employee_name ));
848:
849: hr_utility_trace ('Translating location_id ...');
850: prepare_xml('D',
851: 'LOCATION_ID_REPORTING',
852: strip_spl_chars (lv_location_id ));
853:
854: END IF;
855: END IF;
856: END IF;
857:
858: hr_utility_trace('Leaving '||l_proc_name);
859: EXCEPTION
860: WHEN OTHERS THEN
861: hr_utility_trace (SQLERRM);
862: RAISE;
857:
858: hr_utility_trace('Leaving '||l_proc_name);
859: EXCEPTION
860: WHEN OTHERS THEN
861: hr_utility_trace (SQLERRM);
862: RAISE;
863: end;
864: BEGIN
865: g_proc_name := 'PAY_MX_RULES.';
862: RAISE;
863: end;
864: BEGIN
865: g_proc_name := 'PAY_MX_RULES.';
866: g_debug := hr_utility.debug_enabled;
867: END pay_mx_rules;
868: