1: PACKAGE BODY hr_us_ff_udf1 AS
2: /* $Header: pyusudf1.pkb 120.64 2012/01/05 09:45:03 emunisek ship $ */
3: /*
4: +======================================================================+
5: | Copyright (c) 1993 Oracle Corporation |
6: | Redwood Shores, California, USA |
7: | All rights reserved. |
8: +======================================================================+
9:
10: Name : hr_us_ff_udf1
11: Filename : pyusudf1.pkb
12: Change List
13: -----------
14: Date Name Vers Bug No Description
236:
237: l_return_value varchar2(1);
238:
239: BEGIN
240: hr_utility.trace('BEGIN -> hr_us_ff_udf1.get_tax_jurisdiction ');
241: select nvl(hoi.org_information16,'N')
242: into l_return_value
243: from per_assignments_f paf,
244: hr_organization_information hoi,
250: and hsk.segment1 = hoi.organization_id
251: and hoi.org_information_context = 'W2 Reporting Rules';
252:
253: hr_utility.trace('get_tax_jurisdiction retrun_value = ' || l_return_value);
254: hr_utility.trace('END -> hr_us_ff_udf1.get_tax_jurisdiction ');
255: return (l_return_value);
256: EXCEPTION
257: WHEN NO_DATA_FOUND THEN
258: return ('N');
268:
269: l_ret number;
270:
271: BEGIN
272: hr_utility.trace('tab.count = '||to_char(hr_us_ff_udf1.l_neg_earn_tab.count));
273:
274: IF hr_us_ff_udf1.l_neg_earn_tab.count <= 0 THEN
275: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn := 0;
276: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed := 0;
270:
271: BEGIN
272: hr_utility.trace('tab.count = '||to_char(hr_us_ff_udf1.l_neg_earn_tab.count));
273:
274: IF hr_us_ff_udf1.l_neg_earn_tab.count <= 0 THEN
275: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn := 0;
276: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed := 0;
277: hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn := p_neg_earn_asg_gre_itd;
278: END IF;
271: BEGIN
272: hr_utility.trace('tab.count = '||to_char(hr_us_ff_udf1.l_neg_earn_tab.count));
273:
274: IF hr_us_ff_udf1.l_neg_earn_tab.count <= 0 THEN
275: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn := 0;
276: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed := 0;
277: hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn := p_neg_earn_asg_gre_itd;
278: END IF;
279:
272: hr_utility.trace('tab.count = '||to_char(hr_us_ff_udf1.l_neg_earn_tab.count));
273:
274: IF hr_us_ff_udf1.l_neg_earn_tab.count <= 0 THEN
275: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn := 0;
276: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed := 0;
277: hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn := p_neg_earn_asg_gre_itd;
278: END IF;
279:
280: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn := p_template_earning +
273:
274: IF hr_us_ff_udf1.l_neg_earn_tab.count <= 0 THEN
275: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn := 0;
276: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed := 0;
277: hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn := p_neg_earn_asg_gre_itd;
278: END IF;
279:
280: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn := p_template_earning +
281: p_addl_asg_gre_itd +
276: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed := 0;
277: hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn := p_neg_earn_asg_gre_itd;
278: END IF;
279:
280: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn := p_template_earning +
281: p_addl_asg_gre_itd +
282: hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn;
283:
284: hr_utility.trace('temp_earn = '||
278: END IF;
279:
280: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn := p_template_earning +
281: p_addl_asg_gre_itd +
282: hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn;
283:
284: hr_utility.trace('temp_earn = '||
285: to_char(hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn));
286:
281: p_addl_asg_gre_itd +
282: hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn;
283:
284: hr_utility.trace('temp_earn = '||
285: to_char(hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn));
286:
287: IF hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn < 0 THEN
288: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed :=
289: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn;
283:
284: hr_utility.trace('temp_earn = '||
285: to_char(hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn));
286:
287: IF hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn < 0 THEN
288: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed :=
289: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn;
290: ELSE
291: IF (hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn > 0) and
284: hr_utility.trace('temp_earn = '||
285: to_char(hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn));
286:
287: IF hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn < 0 THEN
288: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed :=
289: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn;
290: ELSE
291: IF (hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn > 0) and
292: ( hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn = 0 ) THEN
285: to_char(hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn));
286:
287: IF hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn < 0 THEN
288: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed :=
289: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn;
290: ELSE
291: IF (hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn > 0) and
292: ( hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn = 0 ) THEN
293: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed := 0;
287: IF hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn < 0 THEN
288: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed :=
289: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn;
290: ELSE
291: IF (hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn > 0) and
292: ( hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn = 0 ) THEN
293: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed := 0;
294: END IF;
295:
288: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed :=
289: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn;
290: ELSE
291: IF (hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn > 0) and
292: ( hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn = 0 ) THEN
293: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed := 0;
294: END IF;
295:
296: IF ( hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn >= 0) and
289: hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn;
290: ELSE
291: IF (hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn > 0) and
292: ( hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn = 0 ) THEN
293: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed := 0;
294: END IF;
295:
296: IF ( hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn >= 0) and
297: ( hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn < 0) THEN
292: ( hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn = 0 ) THEN
293: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed := 0;
294: END IF;
295:
296: IF ( hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn >= 0) and
297: ( hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn < 0) THEN
298: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed :=
299: ( -1 * hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn);
300: END IF;
293: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed := 0;
294: END IF;
295:
296: IF ( hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn >= 0) and
297: ( hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn < 0) THEN
298: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed :=
299: ( -1 * hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn);
300: END IF;
301: END IF;
294: END IF;
295:
296: IF ( hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn >= 0) and
297: ( hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn < 0) THEN
298: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed :=
299: ( -1 * hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn);
300: END IF;
301: END IF;
302:
295:
296: IF ( hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn >= 0) and
297: ( hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn < 0) THEN
298: hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed :=
299: ( -1 * hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn);
300: END IF;
301: END IF;
302:
303: hr_utility.trace('neg_earn_feed = '||
300: END IF;
301: END IF;
302:
303: hr_utility.trace('neg_earn_feed = '||
304: to_char(hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed));
305:
306: hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn
307: := hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn +
308: (-1 * hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn);
302:
303: hr_utility.trace('neg_earn_feed = '||
304: to_char(hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed));
305:
306: hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn
307: := hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn +
308: (-1 * hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn);
309:
310: hr_utility.trace('reduced_neg_earn = '||
303: hr_utility.trace('neg_earn_feed = '||
304: to_char(hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed));
305:
306: hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn
307: := hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn +
308: (-1 * hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn);
309:
310: hr_utility.trace('reduced_neg_earn = '||
311: to_char(hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn));
304: to_char(hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed));
305:
306: hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn
307: := hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn +
308: (-1 * hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn);
309:
310: hr_utility.trace('reduced_neg_earn = '||
311: to_char(hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn));
312:
307: := hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn +
308: (-1 * hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn);
309:
310: hr_utility.trace('reduced_neg_earn = '||
311: to_char(hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn));
312:
313: l_ret := hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn;
314:
315: return l_ret;
309:
310: hr_utility.trace('reduced_neg_earn = '||
311: to_char(hr_us_ff_udf1.l_neg_earn_tab(1).reduced_neg_earn));
312:
313: l_ret := hr_us_ff_udf1.l_neg_earn_tab(1).temp_earn;
314:
315: return l_ret;
316: END calc_earning;
317: --
318: --
319: FUNCTION neg_earning RETURN NUMBER is
320: l_ret number;
321: BEGIN
322: l_ret := hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed;
323: hr_utility.trace('hr_us_ff_udf1.neg_earning : neg_earn_feed = '||
324: to_char(l_ret));
325: return l_ret;
326: END neg_earning;
319: FUNCTION neg_earning RETURN NUMBER is
320: l_ret number;
321: BEGIN
322: l_ret := hr_us_ff_udf1.l_neg_earn_tab(1).neg_earn_feed;
323: hr_utility.trace('hr_us_ff_udf1.neg_earning : neg_earn_feed = '||
324: to_char(l_ret));
325: return l_ret;
326: END neg_earning;
327:
1441: l_business_group_id NUMBER;
1442: l_tax_unit_id NUMBER;
1443:
1444: BEGIN
1445: -- hr_utility.trace_on(NULL,'SK_hr_us_ff_udf1');
1446: hr_utility.trace('Begin get_work_jurisdictions');
1447: hr_utility.trace('get_work_jurisdictions query 1');
1448: hr_utility.trace('Fetch Payroll Details ');
1449:
2122: RETURN NUMBER IS
2123: l_dummy_value number;
2124: BEGIN
2125: --{
2126: l_dummy_value := hr_us_ff_udf1.get_prev_ptd_values(p_assignment_action_id
2127: ,p_tax_unit_id
2128: ,'00-000-0000'
2129: ,p_fed_or_state
2130: ,p_regular_aggregate
2161: l_return number;
2162: begin
2163: --{
2164: hr_utility.trace('IN get_jd_percent');
2165: hr_utility.trace('get_jd_percent Use Information Hours Flag =>'||hr_us_ff_udf1.g_use_it_flag);
2166: IF hr_us_ff_udf1.g_use_it_flag = 'Y' THEN
2167: --{
2168: hr_utility.trace('get_jd_percent Calling Function get_it_jd_percent');
2169: l_percentage :=
2162: begin
2163: --{
2164: hr_utility.trace('IN get_jd_percent');
2165: hr_utility.trace('get_jd_percent Use Information Hours Flag =>'||hr_us_ff_udf1.g_use_it_flag);
2166: IF hr_us_ff_udf1.g_use_it_flag = 'Y' THEN
2167: --{
2168: hr_utility.trace('get_jd_percent Calling Function get_it_jd_percent');
2169: l_percentage :=
2170: hr_us_ff_udf1.get_it_jd_percent(p_jurisdiction_code => p_jurisdiction_code
2166: IF hr_us_ff_udf1.g_use_it_flag = 'Y' THEN
2167: --{
2168: hr_utility.trace('get_jd_percent Calling Function get_it_jd_percent');
2169: l_percentage :=
2170: hr_us_ff_udf1.get_it_jd_percent(p_jurisdiction_code => p_jurisdiction_code
2171: ,p_jd_level => p_jd_level
2172: ,p_hours_to_accumulate => p_hours_to_accumulate
2173: ,p_wages_to_accrue_flag => p_wages_to_accrue_flag
2174: );
2392: and nvl(regular_payment_date,end_date) <= l_date;
2393:
2394: BEGIN
2395:
2396: hr_utility.trace('In hr_us_ff_udf1.get_wc_flag() function');
2397: hr_utility.trace('**PARAMETERS**');
2398: hr_utility.trace('p_assignment_id: ' || to_char(p_assignment_id));
2399: hr_utility.trace('p_date_earned: ' || to_char(p_date_earned));
2400: hr_utility.trace('p_wc_flat_rate_period: ' || p_wc_flat_rate_period);
3740: of SIT Withheld balance.
3741: */
3742:
3743: /* l_sit_withheld :=
3744: hr_us_ff_udf1.get_jd_tax_balance(p_threshold_basis => l_threshold_basis
3745: ,p_assignment_action_id => p_assignment_action_id
3746: ,p_jurisdiction_code => l_jurisdiction
3747: ,p_tax_unit_id => p_tax_unit_id
3748: ,p_jurisdiction_level => 'STATE'
3764: -- Fetch Information Hours logged for the person depending on the payroll effective date
3765: -- call to get_th_assignment for the STATE
3766: hr_utility.trace('EMJT STATE: Fetch Information Hours Logged for Assignment ');
3767: l_state_ih_logged
3768: := hr_us_ff_udf1.get_person_it_hours(p_person_id => l_person_id
3769: ,p_assignment_id => p_assignment_id
3770: ,p_jurisdiction_code => l_jurisdiction
3771: ,p_jd_level => 2
3772: ,p_threshold_basis => l_threshold_basis
4134: threshold checking irrespective of county tax Withheld balance.
4135: */
4136:
4137: /* l_county_withheld :=
4138: hr_us_ff_udf1.get_jd_tax_balance(p_threshold_basis => l_threshold_basis
4139: ,p_assignment_action_id=> p_assignment_action_id
4140: ,p_jurisdiction_code => l_jurisdiction
4141: ,p_tax_unit_id => p_tax_unit_id
4142: ,p_jurisdiction_level => 'COUNTY'
4148: --=============================================================================
4149: IF l_county_withheld = 0 THEN
4150:
4151: l_sit_county_withheld :=
4152: hr_us_ff_udf1.get_jd_tax_balance(p_threshold_basis => l_threshold_basis
4153: ,p_assignment_action_id => p_assignment_action_id
4154: ,p_jurisdiction_code => l_jurisdiction
4155: ,p_tax_unit_id => p_tax_unit_id
4156: ,p_jurisdiction_level => 'STATE'
4184: -- Fetch Information Hours logged for the person depending on the payroll effective date
4185: -- call to get_th_assignment for the COUNTY
4186: hr_utility.trace('EMJT COUNTY: Fetch Information Hours Logged for Assignment ');
4187: l_county_ih_logged
4188: := hr_us_ff_udf1.get_person_it_hours(p_person_id => l_person_id
4189: ,p_assignment_id => p_assignment_id
4190: ,p_jurisdiction_code => l_jurisdiction
4191: ,p_jd_level => 6
4192: ,p_threshold_basis => l_threshold_basis
4592: threshold checking irrespective of city tax Withheld balance.
4593: */
4594:
4595: /* l_city_withheld :=
4596: hr_us_ff_udf1.get_jd_tax_balance(p_threshold_basis => l_threshold_basis
4597: ,p_assignment_action_id=> p_assignment_action_id
4598: ,p_jurisdiction_code => l_jurisdiction
4599: ,p_tax_unit_id => p_tax_unit_id
4600: ,p_jurisdiction_level => 'CITY'
4606: --=============================================================================
4607: IF l_city_withheld = 0 THEN
4608:
4609: l_county_city_withheld :=
4610: hr_us_ff_udf1.get_jd_tax_balance(p_threshold_basis => l_threshold_basis
4611: ,p_assignment_action_id=> p_assignment_action_id
4612: ,p_jurisdiction_code => l_jurisdiction
4613: ,p_tax_unit_id => p_tax_unit_id
4614: ,p_jurisdiction_level => 'COUNTY'
4618:
4619: IF l_county_city_withheld = 0 THEN
4620:
4621: l_sit_city_withheld :=
4622: hr_us_ff_udf1.get_jd_tax_balance(p_threshold_basis => l_threshold_basis
4623: ,p_assignment_action_id => p_assignment_action_id
4624: ,p_jurisdiction_code => l_jurisdiction
4625: ,p_tax_unit_id => p_tax_unit_id
4626: ,p_jurisdiction_level => 'STATE'
4666: -- Fetch Information Hours logged for the person depending on the payroll effective date
4667: -- call to get_th_assignment for the CITY
4668: hr_utility.trace('EMJT CITY: Fetch Information Hours Logged for the CITY JD');
4669: l_city_ih_logged
4670: := hr_us_ff_udf1.get_person_it_hours(p_person_id => l_person_id
4671: ,p_assignment_id => p_assignment_id
4672: ,p_jurisdiction_code => l_jurisdiction
4673: ,p_jd_level => 11
4674: ,p_threshold_basis => l_threshold_basis
5659: l_return_value NUMBER;
5660:
5661: BEGIN
5662:
5663: hr_utility.trace('hr_us_ff_udf1.get_jit_date');
5664: hr_utility.trace('p_jurisdiction_code --> '|| p_jurisdiction_code);
5665: hr_utility.trace('p_date_earned --> '|| p_date_earned);
5666: hr_utility.trace('p_jit_type --> '|| p_jit_type);
5667:
5769:
5770: END IF;
5771: CLOSE c_override_jd;
5772:
5773: hr_utility.trace('hr_us_ff_udf1.get_rs_jd');
5774: --hr_utility.trace('p_jurisdiction_code --> '|| p_jurisdiction_code);
5775: hr_utility.trace('p_date_earned --> '|| p_date_earned);
5776: --hr_utility.trace('p_jit_type --> '|| p_jit_type);
5777:
5851: END IF;
5852: CLOSE c_override_wk_jd;
5853:
5854:
5855: hr_utility.trace('hr_us_ff_udf1.get_wk_jd');
5856: hr_utility.trace('p_jurisdiction_code --> '|| p_jurisdiction_code);
5857: hr_utility.trace('p_date_earned --> '|| p_date_earned);
5858: --hr_utility.trace('p_jit_type --> '|| p_jit_type);
5859:
6223: l_remaining_periods NUMBER;
6224:
6225: BEGIN
6226:
6227: hr_utility.trace('Entering hr_us_ff_udf1.count_remaining_pay_periods');
6228: hr_utility.trace( 'p_payroll_action Id '|| p_payroll_action_id);
6229: hr_utility.trace( 'p_logical_hire_date '|| to_char(p_logical_hire_date,'dd-mon-yyyy'));
6230:
6231: l_remaining_periods := 0;
6236: l_remaining_periods := 0;
6237: END IF;
6238: CLOSE get_count;
6239:
6240: hr_utility.trace('Leaving hr_us_ff_udf1.count_remaining_pay_periods');
6241: return l_remaining_periods;
6242:
6243: EXCEPTION
6244: WHEN OTHERS THEN
6241: return l_remaining_periods;
6242:
6243: EXCEPTION
6244: WHEN OTHERS THEN
6245: hr_utility.trace('Exception raised in hr_us_ff_udf1.count_remaining pay periods .');
6246: return 0;
6247: END count_remaining_pay_periods;
6248:
6249: FUNCTION GET_PSD_JD_CODE
6551: l_balance_value NUMBER;
6552:
6553: BEGIN
6554:
6555: hr_utility.trace('Inside hr_us_ff_udf1.get_ht_withheld_per_jd_month function');
6556:
6557: OPEN get_balance_type_id;
6558: FETCH get_balance_type_id INTO l_balance_type_id;
6559: CLOSE get_balance_type_id;
6561: OPEN get_value(p_assignment_action_id,p_jurisdiction_code,l_balance_type_id);
6562: FETCH get_value INTO l_balance_value;
6563: CLOSE get_value;
6564:
6565: hr_utility.trace('Leaving hr_us_ff_udf1.get_ht_withheld_per_jd_month function');
6566: hr_utility.trace('Return Value :'||l_balance_value);
6567:
6568: RETURN l_balance_value;
6569:
6568: RETURN l_balance_value;
6569:
6570: EXCEPTION
6571: WHEN OTHERS THEN
6572: hr_utility.trace('Exception raised in hr_us_ff_udf1.get_ht_withheld_per_jd_month function. Returning Zero');
6573: RETURN 0;
6574:
6575: END;
6576:
6575: END;
6576:
6577: /*End Bug#12618403*/
6578:
6579: END hr_us_ff_udf1;