89: close csr_disallow_update;
90: --
91: -- p_input_value_id
92: --
93: if nvl(p_rec.input_value_id, hr_api.g_number) <>
94: nvl(pay_sbf_shd.g_old_rec.input_value_id, hr_api.g_number)
95: then
96: hr_utility.set_location(l_proc, 25);
97: l_argument := 'p_input_value_id';
90: --
91: -- p_input_value_id
92: --
93: if nvl(p_rec.input_value_id, hr_api.g_number) <>
94: nvl(pay_sbf_shd.g_old_rec.input_value_id, hr_api.g_number)
95: then
96: hr_utility.set_location(l_proc, 25);
97: l_argument := 'p_input_value_id';
98: raise l_error;
99: end if;
100: hr_utility.set_location(' Leaving:'||l_proc, 40);
101: exception
102: when l_error then
103: hr_api.argument_changed_error
104: (p_api_name => l_proc
105: ,p_argument => l_argument);
106: when others then
107: hr_utility.set_location('Leaving:'||l_proc, 45);
128: hr_utility.set_location('Entering:'||l_proc, 5);
129: --
130: -- Check that the input value is not null.
131: --
132: hr_api.mandatory_arg_error
133: (p_api_name => l_proc
134: ,p_argument => 'p_input_value_id'
135: ,p_argument_value => p_input_value_id
136: );
166: cursor csr_exists is
167: select null
168: from pay_shadow_balance_feeds sbf
169: where sbf.input_value_id = p_input_value_id
170: and nvl(sbf.balance_type_id, hr_api.g_number) = p_balance_type_id;
171: --
172: -- Cursor to check that the balance type exists and is compatible with
173: -- the input value (same uom and from the same template).
174: --
191: l_api_updating := pay_sbf_shd.api_updating
192: (p_balance_feed_id => p_balance_feed_id
193: ,p_object_version_number => p_object_version_number
194: );
195: if (l_api_updating and nvl(p_balance_type_id, hr_api.g_number) <>
196: nvl(pay_sbf_shd.g_old_rec.balance_type_id, hr_api.g_number)) or
197: not l_api_updating
198: then
199: --
192: (p_balance_feed_id => p_balance_feed_id
193: ,p_object_version_number => p_object_version_number
194: );
195: if (l_api_updating and nvl(p_balance_type_id, hr_api.g_number) <>
196: nvl(pay_sbf_shd.g_old_rec.balance_type_id, hr_api.g_number)) or
197: not l_api_updating
198: then
199: --
200: -- If the balance name is null then balance_type_id is mandatory.
199: --
200: -- If the balance name is null then balance_type_id is mandatory.
201: --
202: if p_balance_name is null then
203: hr_api.mandatory_arg_error
204: (p_api_name => l_proc
205: ,p_argument => 'p_balance_type_id'
206: ,p_argument_value => p_balance_type_id
207: );
262: cursor csr_exists is
263: select null
264: from pay_shadow_balance_feeds sbf
265: where sbf.input_value_id = p_input_value_id
266: and nvl(upper(sbf.balance_name), hr_api.g_varchar2) =
267: upper(p_balance_name);
268: --
269: l_proc varchar2(72) := g_package||'chk_balance_name';
270: l_exists varchar2(1);
275: l_api_updating := pay_sbf_shd.api_updating
276: (p_balance_feed_id => p_balance_feed_id
277: ,p_object_version_number => p_object_version_number
278: );
279: if (l_api_updating and nvl(p_balance_name, hr_api.g_varchar2) <>
280: nvl(pay_sbf_shd.g_old_rec.balance_name, hr_api.g_varchar2)) or
281: not l_api_updating
282: then
283: --
276: (p_balance_feed_id => p_balance_feed_id
277: ,p_object_version_number => p_object_version_number
278: );
279: if (l_api_updating and nvl(p_balance_name, hr_api.g_varchar2) <>
280: nvl(pay_sbf_shd.g_old_rec.balance_name, hr_api.g_varchar2)) or
281: not l_api_updating
282: then
283: --
284: -- The balance name is mandatory if balance_type_id is null.
283: --
284: -- The balance name is mandatory if balance_type_id is null.
285: --
286: if p_balance_type_id is null then
287: hr_api.mandatory_arg_error
288: (p_api_name => l_proc
289: ,p_argument => 'p_balance_name'
290: ,p_argument_value => p_balance_name
291: );
325: l_api_updating := pay_sbf_shd.api_updating
326: (p_balance_feed_id => p_balance_feed_id
327: ,p_object_version_number => p_object_version_number
328: );
329: if (l_api_updating and nvl(p_scale, hr_api.g_number) <>
330: nvl(pay_sbc_shd.g_old_rec.scale, hr_api.g_number)) or
331: not l_api_updating
332: then
333: --
326: (p_balance_feed_id => p_balance_feed_id
327: ,p_object_version_number => p_object_version_number
328: );
329: if (l_api_updating and nvl(p_scale, hr_api.g_number) <>
330: nvl(pay_sbc_shd.g_old_rec.scale, hr_api.g_number)) or
331: not l_api_updating
332: then
333: --
334: -- Check that scale is not null.
332: then
333: --
334: -- Check that scale is not null.
335: --
336: hr_api.mandatory_arg_error
337: (p_api_name => l_proc
338: ,p_argument => 'p_scale'
339: ,p_argument_value => p_scale
340: );
378: l_api_updating := pay_sbf_shd.api_updating
379: (p_balance_feed_id => p_balance_feed_id
380: ,p_object_version_number => p_object_version_number
381: );
382: if (l_api_updating and nvl(p_exclusion_rule_id, hr_api.g_number) <>
383: nvl(pay_sbf_shd.g_old_rec.exclusion_rule_id, hr_api.g_number)) or
384: not l_api_updating
385: then
386: if p_exclusion_rule_id is not null then
379: (p_balance_feed_id => p_balance_feed_id
380: ,p_object_version_number => p_object_version_number
381: );
382: if (l_api_updating and nvl(p_exclusion_rule_id, hr_api.g_number) <>
383: nvl(pay_sbf_shd.g_old_rec.exclusion_rule_id, hr_api.g_number)) or
384: not l_api_updating
385: then
386: if p_exclusion_rule_id is not null then
387: open csr_exclusion_rule_id_valid;