73:
74: --
75: -- Only Update ce bank tables if both ce and pay are installed
76: --
77: hr_utility.set_location('Entering : '||l_proc, 10);
78: if pay_ce_support_pkg.pay_and_ce_licensed then
79:
80: if p_bank_account_id is not null then
81:
82: open csr_chk_payroll_bank_acct;
83: fetch csr_chk_payroll_bank_acct into l_payroll_bank_account_id;
84: if (csr_chk_payroll_bank_acct% NOTFOUND) THEN
85:
86: hr_utility.set_location(l_proc||'Stamping has to be done', 20);
87: hr_utility.set_location(l_proc||'Stamping ....',30);
88: update ce_bank_acct_uses_all
89: set payroll_bank_account_id = p_external_account_id
90: where Bank_account_id = p_bank_account_id
83: fetch csr_chk_payroll_bank_acct into l_payroll_bank_account_id;
84: if (csr_chk_payroll_bank_acct% NOTFOUND) THEN
85:
86: hr_utility.set_location(l_proc||'Stamping has to be done', 20);
87: hr_utility.set_location(l_proc||'Stamping ....',30);
88: update ce_bank_acct_uses_all
89: set payroll_bank_account_id = p_external_account_id
90: where Bank_account_id = p_bank_account_id
91: and pay_use_enable_flag = 'Y'
92: and org_id in (select business_group_id from pay_org_payment_methods_f
93: where org_payment_method_id = p_org_payment_method_id);
94: close csr_chk_payroll_bank_acct;
95:
96: hr_utility.set_location(l_proc||'Nullifying earlier stamping ....',40);
97: update ce_bank_acct_uses_all
98: set payroll_bank_account_id = null
99: where payroll_bank_account_id = p_external_account_id
100: AND Bank_account_id <> p_bank_account_id
101: and org_id in (select business_group_id from pay_org_payment_methods_f
102: where org_payment_method_id = p_org_payment_method_id);
103:
104: else
105: hr_utility.set_location(l_proc||'No need of stamping ....',50);
106: close csr_chk_payroll_bank_acct;
107: -- Raising error, if the requested updation is going to break the one-to-one relationship
108: if (nvl(l_payroll_bank_account_id, -1) <> p_external_account_id) THEN
109: hr_utility.set_location(l_proc||'Raising an error ....',60);
105: hr_utility.set_location(l_proc||'No need of stamping ....',50);
106: close csr_chk_payroll_bank_acct;
107: -- Raising error, if the requested updation is going to break the one-to-one relationship
108: if (nvl(l_payroll_bank_account_id, -1) <> p_external_account_id) THEN
109: hr_utility.set_location(l_proc||'Raising an error ....',60);
110: fnd_message.set_name('PAY', 'PAY_34070_PAY_CE_MAP_ERR');
111: fnd_message.raise_error;
112: end if;
113: END if;
135:
136: -- anything else, we want to know about.
137:
138: raise;
139: hr_utility.set_location('Leaving : '||l_proc, 10);
140: end;
141:
142: procedure remove_redundant_bank_detail
143: is