60: || value names. The check is only meaningful for the US legislation.
61: */
62:
63: (
64: pi_payroll_action_id in pay_payroll_actions.payroll_action_id%type
65: -- The "in" parameter used to identify Payroll Action
66: ) is
67:
68: -- Trace variables used for debugging
87: -- separately, otherwise look only for entries without that requirement.
88:
89: ) is
90:
91: select /*+ ORDERED INDEX(PAY_ACTION PAY_PAYROLL_ACTIONS_PK)
92: INDEX(ASGT_ACTION PAY_ASSIGNMENT_ACTIONS_N50)
93: INDEX(QP_INCL PAY_QUICKPAY_INCLUSIONS_FK2)
94: INDEX(ENTRY PAY_ELEMENT_ENTRIES_F_PK)
95: INDEX(LINK PAY_ELEMENT_LINKS_F_PK)
99: USE_NL(PAY_ACTION, ASGT_ACTION) USE_NL(ASGT_ACTION, QP_INCL)
100: USE_NL(QP_INCL, ENTRY) USE_NL(ENTRY, LINK) USE_NL(LINK, ELEMENT)
101: USE_NL(ELEMENT, CLASS) USE_NL(CLASS, ENTVAL) */
102: count (*) TOTAL_OF_ROWS
103: from pay_payroll_actions PAY_ACTION,
104: pay_assignment_actions ASGT_ACTION,
105: pay_quickpay_inclusions QP_INCL,
106: pay_element_entries_f ENTRY,
107: pay_element_links_f LINK,
183: -- separately, otherwise look only for entries without that requirement.
184:
185: ) is
186:
187: select /*+ ORDERED INDEX(PAY_ACTION PAY_PAYROLL_ACTIONS_PK)
188: INDEX(ASGT_ACTION PAY_ASSIGNMENT_ACTIONS_N50)
189: INDEX(ENTRY PAY_ELEMENT_ENTRIES_F_N50)
190: INDEX(LINK PAY_ELEMENT_LINKS_F_PK)
191: INDEX(ELEMENT PAY_ELEMENT_TYPES_F_PK)
194: USE_NL(PAY_ACTION, ASGT_ACTION) USE_NL(ENTRY, LINK)
195: USE_NL(LINK, ELEMENT) USE_NL(ELEMENT, CLASS)
196: USE_NL(CLASS, ENTVAL) */
197: count (*) TOTAL_OF_ROWS
198: from pay_payroll_actions PAY_ACTION,
199: pay_assignment_actions ASGT_ACTION,
200: pay_element_entries_f ENTRY,
201: pay_element_links_f LINK,
202: pay_element_types_f ELEMENT,
528: -- {End Of Comments}
529: --
530: procedure chk_assignment
531: (p_assignment_id in pay_assignment_actions.assignment_id%TYPE
532: ,p_business_group_id in pay_payroll_actions.business_group_id%TYPE
533: ,p_effective_date in pay_payroll_actions.effective_date%TYPE
534: ) is
535: --
536: v_exists varchar2(1);
529: --
530: procedure chk_assignment
531: (p_assignment_id in pay_assignment_actions.assignment_id%TYPE
532: ,p_business_group_id in pay_payroll_actions.business_group_id%TYPE
533: ,p_effective_date in pay_payroll_actions.effective_date%TYPE
534: ) is
535: --
536: v_exists varchar2(1);
537: v_proc varchar2(72) := g_package||'chk_assignment';
805: -- {End Of Comments}
806: --
807: function get_date_earned_for_gb
808: (p_assignment_id in pay_assignment_actions.assignment_id%TYPE
809: ,p_effective_date in pay_payroll_actions.effective_date%TYPE
810: ) return pay_payroll_actions.date_earned%TYPE is
811: --
812: -- Cursor definitions
813: --
806: --
807: function get_date_earned_for_gb
808: (p_assignment_id in pay_assignment_actions.assignment_id%TYPE
809: ,p_effective_date in pay_payroll_actions.effective_date%TYPE
810: ) return pay_payroll_actions.date_earned%TYPE is
811: --
812: -- Cursor definitions
813: --
814: -- Used to find the start and end dates of the matching period
939: --
940: -- {End Of Comments}
941: --
942: procedure chk_eff_date_for_gb
943: (p_effective_date in pay_payroll_actions.effective_date%TYPE
944: ,p_time_period_id in pay_payroll_actions.time_period_id%TYPE
945: ) is
946: --
947: v_exists varchar2(1);
940: -- {End Of Comments}
941: --
942: procedure chk_eff_date_for_gb
943: (p_effective_date in pay_payroll_actions.effective_date%TYPE
944: ,p_time_period_id in pay_payroll_actions.time_period_id%TYPE
945: ) is
946: --
947: v_exists varchar2(1);
948: v_proc varchar2(72) := g_package||'chk_eff_date_for_gb';
973: -- |-----------------------------< chk_eff_date >-----------------------------|
974: -- ----------------------------------------------------------------------------
975: --
976: procedure chk_eff_date
977: (p_effective_date in pay_payroll_actions.effective_date%TYPE
978: ,p_assignment_id in pay_assignment_actions.assignment_id%TYPE
979: ,p_legislation_code in per_business_groups.legislation_code%TYPE
980: ,p_recal_date_earned in boolean
981: ,p_payroll_id out nocopy pay_payroll_actions.payroll_id%TYPE
977: (p_effective_date in pay_payroll_actions.effective_date%TYPE
978: ,p_assignment_id in pay_assignment_actions.assignment_id%TYPE
979: ,p_legislation_code in per_business_groups.legislation_code%TYPE
980: ,p_recal_date_earned in boolean
981: ,p_payroll_id out nocopy pay_payroll_actions.payroll_id%TYPE
982: ,p_time_period_id out nocopy pay_payroll_actions.time_period_id%TYPE
983: ,p_period_name out nocopy per_time_periods.period_name%TYPE
984: ,p_new_date_earned out nocopy pay_payroll_actions.date_earned%TYPE
985: ) is
978: ,p_assignment_id in pay_assignment_actions.assignment_id%TYPE
979: ,p_legislation_code in per_business_groups.legislation_code%TYPE
980: ,p_recal_date_earned in boolean
981: ,p_payroll_id out nocopy pay_payroll_actions.payroll_id%TYPE
982: ,p_time_period_id out nocopy pay_payroll_actions.time_period_id%TYPE
983: ,p_period_name out nocopy per_time_periods.period_name%TYPE
984: ,p_new_date_earned out nocopy pay_payroll_actions.date_earned%TYPE
985: ) is
986: --
980: ,p_recal_date_earned in boolean
981: ,p_payroll_id out nocopy pay_payroll_actions.payroll_id%TYPE
982: ,p_time_period_id out nocopy pay_payroll_actions.time_period_id%TYPE
983: ,p_period_name out nocopy per_time_periods.period_name%TYPE
984: ,p_new_date_earned out nocopy pay_payroll_actions.date_earned%TYPE
985: ) is
986: --
987: v_payroll_id pay_payroll_actions.payroll_id%TYPE;
988: v_eff_time_period_id per_time_periods.time_period_id%TYPE;
983: ,p_period_name out nocopy per_time_periods.period_name%TYPE
984: ,p_new_date_earned out nocopy pay_payroll_actions.date_earned%TYPE
985: ) is
986: --
987: v_payroll_id pay_payroll_actions.payroll_id%TYPE;
988: v_eff_time_period_id per_time_periods.time_period_id%TYPE;
989: v_eff_time_period_name per_time_periods.period_name%TYPE;
990: v_new_date_earned pay_payroll_actions.date_earned%TYPE;
991: v_proc varchar2(72) := g_package||'chk_eff_date';
986: --
987: v_payroll_id pay_payroll_actions.payroll_id%TYPE;
988: v_eff_time_period_id per_time_periods.time_period_id%TYPE;
989: v_eff_time_period_name per_time_periods.period_name%TYPE;
990: v_new_date_earned pay_payroll_actions.date_earned%TYPE;
991: v_proc varchar2(72) := g_package||'chk_eff_date';
992: v_rule_mode pay_legislation_rules.rule_mode%type;
993: --
994: -- Used to find out if the assingment is on a payroll as p_effective_date
1140: --
1141: -- {End Of Comments}
1142: --
1143: procedure chk_date_earned_for_gb
1144: (p_date_earned in pay_payroll_actions.date_earned%TYPE
1145: ,p_assignment_id in pay_assignment_actions.assignment_id%TYPE
1146: ,p_effective_date in pay_payroll_actions.effective_date%TYPE
1147: ) is
1148: --
1142: --
1143: procedure chk_date_earned_for_gb
1144: (p_date_earned in pay_payroll_actions.date_earned%TYPE
1145: ,p_assignment_id in pay_assignment_actions.assignment_id%TYPE
1146: ,p_effective_date in pay_payroll_actions.effective_date%TYPE
1147: ) is
1148: --
1149: v_df_date_earned pay_payroll_actions.date_earned%TYPE;
1150: v_proc varchar2(72) := g_package||'chk_date_earned_for_gb';
1145: ,p_assignment_id in pay_assignment_actions.assignment_id%TYPE
1146: ,p_effective_date in pay_payroll_actions.effective_date%TYPE
1147: ) is
1148: --
1149: v_df_date_earned pay_payroll_actions.date_earned%TYPE;
1150: v_proc varchar2(72) := g_package||'chk_date_earned_for_gb';
1151: --
1152: begin
1153: hr_utility.set_location('Entering:'|| v_proc, 5);
1176: -- |----------------------------< chk_date_earned >---------------------------|
1177: -- ----------------------------------------------------------------------------
1178: --
1179: procedure chk_date_earned
1180: (p_date_earned in pay_payroll_actions.date_earned%TYPE
1181: ,p_assignment_id in pay_assignment_actions.assignment_id%TYPE
1182: ,p_legislation_code in per_business_groups.legislation_code%TYPE
1183: ,p_effective_date in pay_payroll_actions.effective_date%TYPE
1184: ,p_payroll_id in out nocopy pay_payroll_actions.payroll_id%TYPE
1179: procedure chk_date_earned
1180: (p_date_earned in pay_payroll_actions.date_earned%TYPE
1181: ,p_assignment_id in pay_assignment_actions.assignment_id%TYPE
1182: ,p_legislation_code in per_business_groups.legislation_code%TYPE
1183: ,p_effective_date in pay_payroll_actions.effective_date%TYPE
1184: ,p_payroll_id in out nocopy pay_payroll_actions.payroll_id%TYPE
1185: ,p_time_period_id in out nocopy pay_payroll_actions.time_period_id%TYPE
1186: ,p_period_name in out nocopy per_time_periods.period_name%TYPE
1187: ) is
1180: (p_date_earned in pay_payroll_actions.date_earned%TYPE
1181: ,p_assignment_id in pay_assignment_actions.assignment_id%TYPE
1182: ,p_legislation_code in per_business_groups.legislation_code%TYPE
1183: ,p_effective_date in pay_payroll_actions.effective_date%TYPE
1184: ,p_payroll_id in out nocopy pay_payroll_actions.payroll_id%TYPE
1185: ,p_time_period_id in out nocopy pay_payroll_actions.time_period_id%TYPE
1186: ,p_period_name in out nocopy per_time_periods.period_name%TYPE
1187: ) is
1188: --
1181: ,p_assignment_id in pay_assignment_actions.assignment_id%TYPE
1182: ,p_legislation_code in per_business_groups.legislation_code%TYPE
1183: ,p_effective_date in pay_payroll_actions.effective_date%TYPE
1184: ,p_payroll_id in out nocopy pay_payroll_actions.payroll_id%TYPE
1185: ,p_time_period_id in out nocopy pay_payroll_actions.time_period_id%TYPE
1186: ,p_period_name in out nocopy per_time_periods.period_name%TYPE
1187: ) is
1188: --
1189: v_payroll_id pay_payroll_actions.payroll_id%TYPE;
1185: ,p_time_period_id in out nocopy pay_payroll_actions.time_period_id%TYPE
1186: ,p_period_name in out nocopy per_time_periods.period_name%TYPE
1187: ) is
1188: --
1189: v_payroll_id pay_payroll_actions.payroll_id%TYPE;
1190: v_time_period_id per_time_periods.time_period_id%TYPE;
1191: v_time_period_name per_time_periods.period_name%TYPE;
1192: v_proc varchar2(72) := g_package||'chk_date_earned';
1193: v_argument varchar2(30);
1319: --
1320: -- {End Of Comments}
1321: --
1322: procedure chk_eff_earned_payroll
1323: (p_effective_date in pay_payroll_actions.effective_date%TYPE
1324: ,p_date_earned in pay_payroll_actions.date_earned%TYPE
1325: ,p_assignment_id in pay_assignment_actions.assignment_id%TYPE
1326: ,p_raise_error in boolean
1327: ,p_same_payroll out nocopy boolean
1320: -- {End Of Comments}
1321: --
1322: procedure chk_eff_earned_payroll
1323: (p_effective_date in pay_payroll_actions.effective_date%TYPE
1324: ,p_date_earned in pay_payroll_actions.date_earned%TYPE
1325: ,p_assignment_id in pay_assignment_actions.assignment_id%TYPE
1326: ,p_raise_error in boolean
1327: ,p_same_payroll out nocopy boolean
1328: ) is
1486: --
1487: -- {End Of Comments}
1488: --
1489: Procedure chk_legislative_parameters
1490: (p_legislative_parameters pay_payroll_actions.legislative_parameters%TYPE
1491: ,p_action_status varchar2
1492: ,p_legislation_code per_business_groups.legislation_code%TYPE
1493: ) Is
1494: --
1577: -- b) Foreign key to pay_run_types_f.
1578: --
1579: Procedure chk_run_type
1580: ( p_run_type_id in pay_run_types_f.run_type_id%type
1581: ,p_effective_date in pay_payroll_actions.effective_date%TYPE
1582: ,p_business_group_id in pay_payroll_actions.business_group_id%TYPE
1583: ,p_legislation_code in per_business_groups.legislation_code%TYPE
1584: )
1585: --
1578: --
1579: Procedure chk_run_type
1580: ( p_run_type_id in pay_run_types_f.run_type_id%type
1581: ,p_effective_date in pay_payroll_actions.effective_date%TYPE
1582: ,p_business_group_id in pay_payroll_actions.business_group_id%TYPE
1583: ,p_legislation_code in per_business_groups.legislation_code%TYPE
1584: )
1585: --
1586: IS
1668: -- Pre Conditions:
1669: -- None.
1670: --
1671: -- In Arguments:
1672: -- p_current_task set to the pay_payroll_actions.current_task of the
1673: -- current payroll_action.
1674: --
1675: -- Post Success:
1676: -- The current_task for this QuickPay Run is null. (Update or delete can
1681: --
1682: -- {End Of Comments}
1683: --
1684: procedure chk_cur_task
1685: (p_current_task in pay_payroll_actions.current_task%TYPE
1686: ) is
1687: --
1688: v_proc varchar2(72) := g_package||'chk_cur_task';
1689: --
1704: -- |-------------------------< chk_for_con_request >--------------------------|
1705: -- ----------------------------------------------------------------------------
1706: --
1707: procedure chk_for_con_request
1708: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
1709: ) is
1710: --
1711: v_request_id pay_payroll_actions.request_id%TYPE;
1712: v_bl boolean;
1707: procedure chk_for_con_request
1708: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
1709: ) is
1710: --
1711: v_request_id pay_payroll_actions.request_id%TYPE;
1712: v_bl boolean;
1713: v_phase varchar2(255);
1714: v_status varchar2(255);
1715: v_dev_phase varchar2(255);
1718: v_proc varchar2(72) := g_package||'chk_for_con_request';
1719: --
1720: cursor sel_reqt is
1721: select request_id
1722: from pay_payroll_actions
1723: where payroll_action_id = p_payroll_action_id;
1724: begin
1725: hr_utility.set_location('Entering:'|| v_proc, 5);
1726: --
1729: open sel_reqt;
1730: fetch sel_reqt into v_request_id;
1731: if sel_reqt%notfound then
1732: close sel_reqt;
1733: -- A row could not be found in pay_payroll_actions
1734: -- with an id of p_payroll_action_id.
1735: hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
1736: hr_utility.raise_error;
1737: end if;
1797: --
1798: -- {End Of Comments}
1799: --
1800: function get_legislation_code
1801: (p_business_group_id in pay_payroll_actions.business_group_id%TYPE
1802: ) return varchar2 is
1803: --
1804: cursor cur_leg is
1805: select legislation_code
1916: hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
1917: hr_utility.set_message_token('PROCEDURE', v_proc);
1918: hr_utility.set_message_token('STEP','20');
1919: hr_utility.raise_error;
1920: elsif (p_constraint_name = 'PAY_PAYROLL_ACTIONS_FK1') Then
1921: hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
1922: hr_utility.set_message_token('PROCEDURE', v_proc);
1923: hr_utility.set_message_token('STEP','25');
1924: hr_utility.raise_error;
1921: hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
1922: hr_utility.set_message_token('PROCEDURE', v_proc);
1923: hr_utility.set_message_token('STEP','25');
1924: hr_utility.raise_error;
1925: elsif (p_constraint_name = 'PAY_PAYROLL_ACTIONS_FK2') Then
1926: hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
1927: hr_utility.set_message_token('PROCEDURE', v_proc);
1928: hr_utility.set_message_token('STEP','30');
1929: hr_utility.raise_error;
1926: hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
1927: hr_utility.set_message_token('PROCEDURE', v_proc);
1928: hr_utility.set_message_token('STEP','30');
1929: hr_utility.raise_error;
1930: elsif (p_constraint_name = 'PAY_PAYROLL_ACTIONS_FK5') Then
1931: hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
1932: hr_utility.set_message_token('PROCEDURE', v_proc);
1933: hr_utility.set_message_token('STEP','35');
1934: hr_utility.raise_error;
1931: hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
1932: hr_utility.set_message_token('PROCEDURE', v_proc);
1933: hr_utility.set_message_token('STEP','35');
1934: hr_utility.raise_error;
1935: elsif (p_constraint_name = 'PAY_PAYROLL_ACTIONS_FK6') Then
1936: hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
1937: hr_utility.set_message_token('PROCEDURE', v_proc);
1938: hr_utility.set_message_token('STEP','40');
1939: hr_utility.raise_error;
1936: hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
1937: hr_utility.set_message_token('PROCEDURE', v_proc);
1938: hr_utility.set_message_token('STEP','40');
1939: hr_utility.raise_error;
1940: elsif (p_constraint_name = 'PAY_PAYROLL_ACTIONS_FK7') Then
1941: hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
1942: hr_utility.set_message_token('PROCEDURE', v_proc);
1943: hr_utility.set_message_token('STEP','45');
1944: hr_utility.raise_error;
1941: hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
1942: hr_utility.set_message_token('PROCEDURE', v_proc);
1943: hr_utility.set_message_token('STEP','45');
1944: hr_utility.raise_error;
1945: elsif (p_constraint_name = 'PAY_PAYROLL_ACTIONS_FK8') Then
1946: hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
1947: hr_utility.set_message_token('PROCEDURE', v_proc);
1948: hr_utility.set_message_token('STEP','50');
1949: hr_utility.raise_error;
2128: -- {End Of Comments}
2129: --
2130: Procedure pre_insert
2131: (p_rec in out nocopy g_rec_type
2132: ,p_action_type out nocopy pay_payroll_actions.action_type%TYPE
2133: ,p_action_population_status out nocopy
2134: pay_payroll_actions.action_population_status%TYPE
2135: ) is
2136: --
2130: Procedure pre_insert
2131: (p_rec in out nocopy g_rec_type
2132: ,p_action_type out nocopy pay_payroll_actions.action_type%TYPE
2133: ,p_action_population_status out nocopy
2134: pay_payroll_actions.action_population_status%TYPE
2135: ) is
2136: --
2137: v_proc varchar2(72) := g_package||'pre_insert';
2138: --
2135: ) is
2136: --
2137: v_proc varchar2(72) := g_package||'pre_insert';
2138: --
2139: Cursor C_Sel1 is select pay_payroll_actions_s.nextval from sys.dual;
2140: --
2141: Begin
2142: hr_utility.set_location('Entering:'|| v_proc, 5);
2143: --
2442: --
2443: -- {End Of Comments}
2444: Procedure insert_dml
2445: (p_rec in out nocopy g_rec_type
2446: ,p_action_type in pay_payroll_actions.action_type%TYPE
2447: ,p_payroll_id in pay_payroll_actions.payroll_id%TYPE
2448: ,p_time_period_id in pay_payroll_actions.time_period_id%TYPE
2449: ,p_action_population_status in
2450: pay_payroll_actions.action_population_status%TYPE
2443: -- {End Of Comments}
2444: Procedure insert_dml
2445: (p_rec in out nocopy g_rec_type
2446: ,p_action_type in pay_payroll_actions.action_type%TYPE
2447: ,p_payroll_id in pay_payroll_actions.payroll_id%TYPE
2448: ,p_time_period_id in pay_payroll_actions.time_period_id%TYPE
2449: ,p_action_population_status in
2450: pay_payroll_actions.action_population_status%TYPE
2451: ) is
2444: Procedure insert_dml
2445: (p_rec in out nocopy g_rec_type
2446: ,p_action_type in pay_payroll_actions.action_type%TYPE
2447: ,p_payroll_id in pay_payroll_actions.payroll_id%TYPE
2448: ,p_time_period_id in pay_payroll_actions.time_period_id%TYPE
2449: ,p_action_population_status in
2450: pay_payroll_actions.action_population_status%TYPE
2451: ) is
2452: --
2446: ,p_action_type in pay_payroll_actions.action_type%TYPE
2447: ,p_payroll_id in pay_payroll_actions.payroll_id%TYPE
2448: ,p_time_period_id in pay_payroll_actions.time_period_id%TYPE
2449: ,p_action_population_status in
2450: pay_payroll_actions.action_population_status%TYPE
2451: ) is
2452: --
2453: v_proc varchar2(72) := g_package||'insert_dml';
2454: --
2457: p_rec.object_version_number := 1; -- Initialise the object version
2458: --
2459: g_api_dml := true; -- Set the api dml status
2460: --
2461: -- Insert the row into: pay_payroll_actions
2462: --
2463: insert into pay_payroll_actions
2464: (payroll_action_id
2465: ,action_type
2459: g_api_dml := true; -- Set the api dml status
2460: --
2461: -- Insert the row into: pay_payroll_actions
2462: --
2463: insert into pay_payroll_actions
2464: (payroll_action_id
2465: ,action_type
2466: ,business_group_id
2467: ,consolidation_set_id
2588: -- Set the api dml status
2589: --
2590: g_api_dml := true;
2591: --
2592: -- Update the pay_payroll_actions Row
2593: --
2594: update pay_payroll_actions set
2595: business_group_id = p_rec.business_group_id
2596: ,consolidation_set_id = p_rec.consolidation_set_id
2590: g_api_dml := true;
2591: --
2592: -- Update the pay_payroll_actions Row
2593: --
2594: update pay_payroll_actions set
2595: business_group_id = p_rec.business_group_id
2596: ,consolidation_set_id = p_rec.consolidation_set_id
2597: ,action_status = p_rec.action_status
2598: ,effective_date = p_rec.effective_date
2692: -- Set the api dml status
2693: --
2694: g_api_dml := true;
2695: --
2696: -- Delete the pay_payroll_actions row.
2697: --
2698: delete from pay_payroll_actions
2699: where payroll_action_id = p_rec.payroll_action_id;
2700: --
2694: g_api_dml := true;
2695: --
2696: -- Delete the pay_payroll_actions row.
2697: --
2698: delete from pay_payroll_actions
2699: where payroll_action_id = p_rec.payroll_action_id;
2700: --
2701: -- Unset the api dml status
2702: --
2780: --
2781: -- {End Of Comments}
2782: --
2783: procedure lck_general
2784: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
2785: ,p_p_object_version_number in pay_payroll_actions.object_version_number%TYPE
2786: ,p_a_object_version_number in
2787: pay_assignment_actions.object_version_number%TYPE
2788: ,p_only_action_type in pay_payroll_actions.action_type%TYPE
2781: -- {End Of Comments}
2782: --
2783: procedure lck_general
2784: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
2785: ,p_p_object_version_number in pay_payroll_actions.object_version_number%TYPE
2786: ,p_a_object_version_number in
2787: pay_assignment_actions.object_version_number%TYPE
2788: ,p_only_action_type in pay_payroll_actions.action_type%TYPE
2789: ,p_actual_action_type out nocopy pay_payroll_actions.action_type%TYPE
2784: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
2785: ,p_p_object_version_number in pay_payroll_actions.object_version_number%TYPE
2786: ,p_a_object_version_number in
2787: pay_assignment_actions.object_version_number%TYPE
2788: ,p_only_action_type in pay_payroll_actions.action_type%TYPE
2789: ,p_actual_action_type out nocopy pay_payroll_actions.action_type%TYPE
2790: ,p_a_action_status out nocopy pay_assignment_actions.
2791: action_status%TYPE
2792: ) is
2785: ,p_p_object_version_number in pay_payroll_actions.object_version_number%TYPE
2786: ,p_a_object_version_number in
2787: pay_assignment_actions.object_version_number%TYPE
2788: ,p_only_action_type in pay_payroll_actions.action_type%TYPE
2789: ,p_actual_action_type out nocopy pay_payroll_actions.action_type%TYPE
2790: ,p_a_action_status out nocopy pay_assignment_actions.
2791: action_status%TYPE
2792: ) is
2793: v_a_object_version_number pay_assignment_actions.object_version_number%TYPE;
2792: ) is
2793: v_a_object_version_number pay_assignment_actions.object_version_number%TYPE;
2794: --
2795: -- Cursor selects the 'current' row from the HR Schema
2796: -- (Locks pay_payroll_actions first, then pay_assignment_actions.)
2797: --
2798: Cursor C_Sel1 is
2799: select pya.payroll_action_id
2800: , pya.business_group_id
2811: , pya.object_version_number
2812: , pya.action_type
2813: , aga.action_status
2814: , aga.object_version_number
2815: from pay_payroll_actions pya
2816: , pay_assignment_actions aga
2817: where /* Payroll action lock */
2818: pya.payroll_action_id = p_payroll_action_id
2819: and ( pya.action_type = p_only_action_type
2903: -- The object is locked therefore we need to supply a meaningful
2904: -- error message.
2905: --
2906: hr_utility.set_message(801, 'HR_7165_OBJECT_LOCKED');
2907: hr_utility.set_message_token('TABLE_NAME', 'pay_payroll_actions');
2908: hr_utility.raise_error;
2909: End lck_general;
2910: --
2911: -- ----------------------------------------------------------------------------
2912: -- |---------------------------------< lck >----------------------------------|
2913: -- ----------------------------------------------------------------------------
2914: --
2915: procedure lck
2916: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
2917: ,p_p_object_version_number in pay_payroll_actions.object_version_number%TYPE
2918: ,p_a_object_version_number in
2919: pay_assignment_actions.object_version_number%TYPE
2920: ) is
2913: -- ----------------------------------------------------------------------------
2914: --
2915: procedure lck
2916: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
2917: ,p_p_object_version_number in pay_payroll_actions.object_version_number%TYPE
2918: ,p_a_object_version_number in
2919: pay_assignment_actions.object_version_number%TYPE
2920: ) is
2921: v_unwanted_type pay_payroll_actions.action_type%TYPE;
2917: ,p_p_object_version_number in pay_payroll_actions.object_version_number%TYPE
2918: ,p_a_object_version_number in
2919: pay_assignment_actions.object_version_number%TYPE
2920: ) is
2921: v_unwanted_type pay_payroll_actions.action_type%TYPE;
2922: v_unwanted_status pay_assignment_actions.action_status%TYPE;
2923: begin
2924: --
2925: -- Lock the row only if it is a QuickPay Run action
3143: --
3144: procedure insert_validate
3145: (p_rec in out nocopy g_rec_type
3146: ,p_assignment_id in number
3147: ,p_payroll_id out nocopy pay_payroll_actions.payroll_id%TYPE
3148: ,p_time_period_id out nocopy pay_payroll_actions.time_period_id%TYPE
3149: ) is
3150: --
3151: v_unused_return_b boolean;
3144: procedure insert_validate
3145: (p_rec in out nocopy g_rec_type
3146: ,p_assignment_id in number
3147: ,p_payroll_id out nocopy pay_payroll_actions.payroll_id%TYPE
3148: ,p_time_period_id out nocopy pay_payroll_actions.time_period_id%TYPE
3149: ) is
3150: --
3151: v_unused_return_b boolean;
3152: v_unused_return_d date;
3151: v_unused_return_b boolean;
3152: v_unused_return_d date;
3153: v_legislation_code per_business_groups.legislation_code%TYPE;
3154: v_unused_return_nam per_time_periods.period_name%TYPE;
3155: v_payroll_id pay_payroll_actions.payroll_id%TYPE;
3156: v_time_period_id pay_payroll_actions.time_period_id%TYPE;
3157: v_proc varchar2(72) := g_package||'insert_validate';
3158: --
3159: Begin
3152: v_unused_return_d date;
3153: v_legislation_code per_business_groups.legislation_code%TYPE;
3154: v_unused_return_nam per_time_periods.period_name%TYPE;
3155: v_payroll_id pay_payroll_actions.payroll_id%TYPE;
3156: v_time_period_id pay_payroll_actions.time_period_id%TYPE;
3157: v_proc varchar2(72) := g_package||'insert_validate';
3158: --
3159: Begin
3160: hr_utility.set_location('Entering:'|| v_proc, 5);
3430: v_proc varchar2(72) := g_package||'ins';
3431: --
3432: -- These variables are set by insert_validate and past to insert_dml
3433: --
3434: v_payroll_id pay_payroll_actions.payroll_id%TYPE;
3435: v_time_period_id pay_payroll_actions.time_period_id%TYPE;
3436: --
3437: -- These variables are set by pre_insert and past to insert_dml
3438: --
3431: --
3432: -- These variables are set by insert_validate and past to insert_dml
3433: --
3434: v_payroll_id pay_payroll_actions.payroll_id%TYPE;
3435: v_time_period_id pay_payroll_actions.time_period_id%TYPE;
3436: --
3437: -- These variables are set by pre_insert and past to insert_dml
3438: --
3439: v_action_type pay_payroll_actions.action_type%TYPE;
3435: v_time_period_id pay_payroll_actions.time_period_id%TYPE;
3436: --
3437: -- These variables are set by pre_insert and past to insert_dml
3438: --
3439: v_action_type pay_payroll_actions.action_type%TYPE;
3440: v_action_population_status pay_payroll_actions.action_population_status%TYPE;
3441: --
3442: -- These variables are set by post_insert and returned from this procedure
3443: --
3436: --
3437: -- These variables are set by pre_insert and past to insert_dml
3438: --
3439: v_action_type pay_payroll_actions.action_type%TYPE;
3440: v_action_population_status pay_payroll_actions.action_population_status%TYPE;
3441: --
3442: -- These variables are set by post_insert and returned from this procedure
3443: --
3444: v_assignment_action_id pay_assignment_actions.assignment_action_id%TYPE;
3826: -- ----------------------------------------------------------------------------
3827: --
3828: procedure default_values
3829: (p_assignment_id in pay_assignment_actions.assignment_id%TYPE
3830: ,p_df_effective_date out nocopy pay_payroll_actions.
3831: effective_date%TYPE
3832: ,p_df_date_earned out nocopy pay_payroll_actions.date_earned%TYPE
3833: ,p_period_name out nocopy per_time_periods.period_name%TYPE
3834: ,p_consolidation_set_id out nocopy pay_consolidation_sets.
3828: procedure default_values
3829: (p_assignment_id in pay_assignment_actions.assignment_id%TYPE
3830: ,p_df_effective_date out nocopy pay_payroll_actions.
3831: effective_date%TYPE
3832: ,p_df_date_earned out nocopy pay_payroll_actions.date_earned%TYPE
3833: ,p_period_name out nocopy per_time_periods.period_name%TYPE
3834: ,p_consolidation_set_id out nocopy pay_consolidation_sets.
3835: consolidation_set_id%TYPE
3836: ,p_consolidation_set_name out nocopy pay_consolidation_sets.
3910: -- The Form or Database session effective date.
3911: v_eff_date date;
3912: --
3913: -- Working value which is used to set the out argument p_df_effective_date.
3914: v_df_effective_date pay_payroll_actions.effective_date%TYPE;
3915: --
3916: -- Working value which is used to set the out argument p_df_date_earned.
3917: v_df_date_earned pay_payroll_actions.date_earned%TYPE;
3918: --
3913: -- Working value which is used to set the out argument p_df_effective_date.
3914: v_df_effective_date pay_payroll_actions.effective_date%TYPE;
3915: --
3916: -- Working value which is used to set the out argument p_df_date_earned.
3917: v_df_date_earned pay_payroll_actions.date_earned%TYPE;
3918: --
3919: -- Working value which is used to set the out argument p_period_name;
3920: v_df_period_name per_time_periods.period_name%TYPE;
3921: --
4125: --
4126: -- {End Of Comments}
4127: --
4128: procedure get_latest_status
4129: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
4130: ,p_p_action_status out nocopy pay_payroll_actions.action_status%TYPE
4131: ,p_display_run_number out nocopy pay_payroll_actions.
4132: display_run_number%TYPE
4133: ,p_a_action_status out nocopy pay_assignment_actions.action_status%TYPE
4126: -- {End Of Comments}
4127: --
4128: procedure get_latest_status
4129: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
4130: ,p_p_action_status out nocopy pay_payroll_actions.action_status%TYPE
4131: ,p_display_run_number out nocopy pay_payroll_actions.
4132: display_run_number%TYPE
4133: ,p_a_action_status out nocopy pay_assignment_actions.action_status%TYPE
4134: ) is
4127: --
4128: procedure get_latest_status
4129: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
4130: ,p_p_action_status out nocopy pay_payroll_actions.action_status%TYPE
4131: ,p_display_run_number out nocopy pay_payroll_actions.
4132: display_run_number%TYPE
4133: ,p_a_action_status out nocopy pay_assignment_actions.action_status%TYPE
4134: ) is
4135: v_proc varchar2(72) := g_package||'get_latest_status';
4138: cursor cur_stat is
4139: select pya.action_status
4140: , pya.display_run_number
4141: , aga.action_status
4142: from pay_payroll_actions pya
4143: , pay_assignment_actions aga
4144: where pya.payroll_action_id = p_payroll_action_id
4145: and aga.payroll_action_id = pya.payroll_action_id;
4146: begin
4176: -- |--------------------------< start_quickpay_process >----------------------|
4177: -- ----------------------------------------------------------------------------
4178: --
4179: procedure start_quickpay_process
4180: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
4181: ,p_p_object_version_number in pay_payroll_actions.object_version_number%TYPE
4182: ,p_a_object_version_number in pay_assignment_actions.
4183: object_version_number%TYPE
4184: ,p_status in out nocopy varchar2
4177: -- ----------------------------------------------------------------------------
4178: --
4179: procedure start_quickpay_process
4180: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
4181: ,p_p_object_version_number in pay_payroll_actions.object_version_number%TYPE
4182: ,p_a_object_version_number in pay_assignment_actions.
4183: object_version_number%TYPE
4184: ,p_status in out nocopy varchar2
4185: ) is
4183: object_version_number%TYPE
4184: ,p_status in out nocopy varchar2
4185: ) is
4186: v_proc varchar2(72) := g_package||'start_quickpay_process';
4187: v_request_id pay_payroll_actions.request_id%TYPE;
4188: v_action_type pay_payroll_actions.action_type%TYPE;
4189: v_a_action_status pay_assignment_actions.action_status%TYPE;
4190: v_leg_code per_business_groups.legislation_code%TYPE;
4191: v_process_name varchar2(30);
4184: ,p_status in out nocopy varchar2
4185: ) is
4186: v_proc varchar2(72) := g_package||'start_quickpay_process';
4187: v_request_id pay_payroll_actions.request_id%TYPE;
4188: v_action_type pay_payroll_actions.action_type%TYPE;
4189: v_a_action_status pay_assignment_actions.action_status%TYPE;
4190: v_leg_code per_business_groups.legislation_code%TYPE;
4191: v_process_name varchar2(30);
4192: v_first_arg varchar2(30);
4213: FROM pay_element_types_f ET,
4214: pay_element_links_f EL,
4215: pay_element_entries_f EE,
4216: pay_assignment_actions ACT,
4217: pay_payroll_actions PACT
4218: WHERE ACT.assignment_action_id = v_asactid
4219: AND PACT.payroll_action_id = p_payroll_action_id
4220: AND EE.assignment_id = ACT.assignment_id
4221: AND ((p_use_qpay_excl_model = 'N'
4268: FROM pay_element_types_f ET,
4269: pay_element_links_f EL,
4270: pay_element_entries_f EE,
4271: pay_assignment_actions ACT,
4272: pay_payroll_actions PACT,
4273: pay_element_entry_values_f EEV
4274: WHERE PACT.payroll_action_id = p_payroll_action_id
4275: and PACT.payroll_action_id = ACT.payroll_action_id
4276: and ACT.action_status not in ('C', 'S')
4322: AND EE.effective_end_date = nvl(EEV.effective_end_date,
4323: EE.effective_end_date)
4324: AND ET.processing_type = 'R'
4325: AND EXISTS ( select ''
4326: from pay_payroll_actions ppa,
4327: per_time_periods ptp,
4328: pay_element_entries_f pee
4329: where pee.element_entry_id = EE.element_entry_id
4330: and ppa.payroll_action_id = ACT.payroll_action_id
4364: --
4365: select pbg.legislation_code
4366: into v_leg_code
4367: from per_business_groups_perf pbg,
4368: pay_payroll_actions ppa
4369: where ppa.payroll_action_id = p_payroll_action_id
4370: and pbg.business_group_id = ppa.business_group_id;
4371: --
4372: -- Bugfix for 2177986: Unable to process separate payment elements in QuickPay.
4469: --
4470: -- Request has been accepted update payroll_actions
4471: -- with the request details.
4472: --
4473: update pay_payroll_actions
4474: set request_id = v_request_id
4475: where payroll_action_id = p_payroll_action_id;
4476: --
4477: end if;
4485: -- |--------------------------< wait_quickpay_process >-----------------------|
4486: -- ----------------------------------------------------------------------------
4487: --
4488: procedure wait_quickpay_process
4489: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
4490: ,p_display_run_number out nocopy pay_payroll_actions.
4491: display_run_number%TYPE
4492: ,p_a_action_status out nocopy pay_assignment_actions.action_status%TYPE
4493: ,p_process_info out nocopy varchar2
4486: -- ----------------------------------------------------------------------------
4487: --
4488: procedure wait_quickpay_process
4489: (p_payroll_action_id in pay_payroll_actions.payroll_action_id%TYPE
4490: ,p_display_run_number out nocopy pay_payroll_actions.
4491: display_run_number%TYPE
4492: ,p_a_action_status out nocopy pay_assignment_actions.action_status%TYPE
4493: ,p_process_info out nocopy varchar2
4494: ,p_request_id out nocopy pay_payroll_actions.request_id%TYPE
4490: ,p_display_run_number out nocopy pay_payroll_actions.
4491: display_run_number%TYPE
4492: ,p_a_action_status out nocopy pay_assignment_actions.action_status%TYPE
4493: ,p_process_info out nocopy varchar2
4494: ,p_request_id out nocopy pay_payroll_actions.request_id%TYPE
4495: ) is
4496: v_wait boolean;
4497: v_phase varchar2(255);
4498: v_status varchar2(255);
4500: v_dev_status varchar2(255);
4501: v_message varchar2(255);
4502: v_max_wait_sec number;
4503: v_interval_wait_sec number;
4504: v_request_id pay_payroll_actions.request_id%TYPE;
4505: v_p_action_status pay_payroll_actions.action_status%TYPE;
4506: v_proc varchar2(72) := g_package||'start_quickpay_run';
4507: --
4508: cursor cur_req is
4501: v_message varchar2(255);
4502: v_max_wait_sec number;
4503: v_interval_wait_sec number;
4504: v_request_id pay_payroll_actions.request_id%TYPE;
4505: v_p_action_status pay_payroll_actions.action_status%TYPE;
4506: v_proc varchar2(72) := g_package||'start_quickpay_run';
4507: --
4508: cursor cur_req is
4509: select request_id
4506: v_proc varchar2(72) := g_package||'start_quickpay_run';
4507: --
4508: cursor cur_req is
4509: select request_id
4510: from pay_payroll_actions
4511: where payroll_action_id = p_payroll_action_id;
4512: --
4513: cursor cur_max is
4514: select fnd_number.canonical_to_number(parameter_value)
4545: hr_utility.set_location(v_proc, 7);
4546: --
4547: -- Check the request_id has been set. A value of zero means the submit
4548: -- request was not accepted by the concurrent manager. (This value should
4549: -- not be in pay_payroll_actions in the first place.)
4550: --
4551: if (v_request_id is null) or (v_request_id = 0) then
4552: -- Error: You have attempted to wait for a request to finish, when no
4553: -- request has been submitted for this QuickPay Run or QuickPay