713: --
714: -- insert the pto input value (always reduces entitlement)
715: --
716: hr_utility.set_location('pay_accrual_plans_pkg.post_insert_actions',1);
717: insert into pay_net_calculation_rules(
718: net_calculation_rule_id,
719: accrual_plan_id,
720: business_group_id,
721: input_value_id,
720: business_group_id,
721: input_value_id,
722: add_or_subtract)
723: select
724: pay_net_calculation_rules_s.nextval,
725: p_accrual_plan_id,
726: p_business_group_id,
727: p_pto_input_value_id,
728: -1
730: --
731: -- insert the carried over input value (always increases entitlement)
732: --
733: hr_utility.set_location('pay_accrual_plans_pkg.post_insert_actions',2);
734: insert into pay_net_calculation_rules(
735: net_calculation_rule_id,
736: accrual_plan_id,
737: business_group_id,
738: input_value_id,
737: business_group_id,
738: input_value_id,
739: add_or_subtract)
740: select
741: pay_net_calculation_rules_s.nextval,
742: p_accrual_plan_id,
743: p_business_group_id,
744: p_co_input_value_id,
745: 1
818: --
819: -- delete the old pto input value from the net calculation rules
820: --
821: hr_utility.set_location('pay_accrual_plans_pkg.post_update_actions',1);
822: delete from pay_net_calculation_rules
823: where input_value_id = p_old_pto_input_value_id
824: and accrual_plan_id = p_accrual_plan_id;
825: --
826: -- create a new net calculation rule for the new pto input value if one
826: -- create a new net calculation rule for the new pto input value if one
827: -- does not already exist
828: --
829: hr_utility.set_location('pay_accrual_plans_pkg.post_update_actions',2);
830: insert into pay_net_calculation_rules(
831: net_calculation_rule_id,
832: accrual_plan_id,
833: business_group_id,
834: input_value_id,
833: business_group_id,
834: input_value_id,
835: add_or_subtract)
836: select
837: pay_net_calculation_rules_s.nextval,
838: p_accrual_plan_id,
839: p_business_group_id,
840: p_pto_input_value_id,
841: -1
841: -1
842: from dual
843: where not exists(
844: select 1
845: from pay_net_calculation_rules
846: where input_value_id = p_pto_input_value_id
847: and accrual_plan_id = p_accrual_plan_id);
848: end if;
849: --
887: --
888: -- delete the net calculation rules
889: --
890: hr_utility.set_location('pay_accrual_plans_pkg.pre_delete_actions', 2);
891: delete from pay_net_calculation_rules
892: where accrual_plan_id = p_accrual_plan_id;
893: --
894: -- delete the element types created for the plan
895: --