[Home] [Help]
PACKAGE BODY: APPS.PQH_BUDGETS_API
Source
1 Package Body pqh_budgets_api as
2 /* $Header: pqbgtapi.pkb 120.1 2005/11/18 11:06:21 srajakum noship $ */
3 --
4 -- Package Variables
5 --
6 g_package varchar2(33) := ' pqh_budgets_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |------------------------< create_budget >----------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_budget
13 (p_validate in boolean default false
14 ,p_budget_id out nocopy number
15 ,p_business_group_id in number default null
16 ,p_start_organization_id in number default null
17 ,p_org_structure_version_id in number default null
18 ,p_budgeted_entity_cd in varchar2 default null
19 ,p_budget_style_cd in varchar2 default null
20 ,p_budget_name in varchar2 default null
21 ,p_period_set_name in varchar2 default null
22 ,p_budget_start_date in date default null
23 ,p_budget_end_date in date default null
24 ,p_gl_budget_name in varchar2 default null
25 ,p_psb_budget_flag in varchar2 default 'N'
26 ,p_transfer_to_gl_flag in varchar2 default null
27 ,p_transfer_to_grants_flag in varchar2 default null
28 ,p_status in varchar2 default null
29 ,p_object_version_number out nocopy number
30 ,p_budget_unit1_id in number default null
31 ,p_budget_unit2_id in number default null
32 ,p_budget_unit3_id in number default null
33 ,p_gl_set_of_books_id in number default null
34 ,p_budget_unit1_aggregate in varchar2 default null
35 ,p_budget_unit2_aggregate in varchar2 default null
36 ,p_budget_unit3_aggregate in varchar2 default null
37 ,p_position_control_flag in varchar2 default null
38 ,p_valid_grade_reqd_flag in varchar2 default null
39 ,p_currency_code in varchar2 default null
40 ,p_dflt_budget_set_id in number default null
41 ,p_effective_date in date
42 ) is
43 --
44 -- Declare cursors and local variables
45 --
46 l_budget_id pqh_budgets.budget_id%TYPE;
47 l_proc varchar2(72) := g_package||'create_budget';
48 l_object_version_number pqh_budgets.object_version_number%TYPE;
49 --
50 begin
51 --
52 hr_utility.set_location('Entering:'|| l_proc, 10);
53 --
54 -- Issue a savepoint if operating in validation only mode
55 --
56 savepoint create_budget;
57 --
58 hr_utility.set_location(l_proc, 20);
59 --
60 -- Process Logic
61 --
62 begin
63 --
64 -- Start of API User Hook for the before hook of create_budget
65 --
66 pqh_budgets_bk1.create_budget_b
67 (
68 p_business_group_id => p_business_group_id
69 ,p_start_organization_id => p_start_organization_id
70 ,p_org_structure_version_id => p_org_structure_version_id
71 ,p_budgeted_entity_cd => p_budgeted_entity_cd
72 ,p_budget_style_cd => p_budget_style_cd
73 ,p_budget_name => p_budget_name
74 ,p_period_set_name => p_period_set_name
75 ,p_budget_start_date => p_budget_start_date
76 ,p_budget_end_date => p_budget_end_date
77 ,p_gl_budget_name => p_gl_budget_name
78 ,p_psb_budget_flag => p_psb_budget_flag
79 ,p_transfer_to_gl_flag => p_transfer_to_gl_flag
80 ,p_transfer_to_grants_flag => p_transfer_to_grants_flag
81 ,p_status => p_status
82 ,p_budget_unit1_id => p_budget_unit1_id
83 ,p_budget_unit2_id => p_budget_unit2_id
84 ,p_budget_unit3_id => p_budget_unit3_id
85 ,p_gl_set_of_books_id => p_gl_set_of_books_id
86 ,p_budget_unit1_aggregate => p_budget_unit1_aggregate
87 ,p_budget_unit2_aggregate => p_budget_unit2_aggregate
88 ,p_budget_unit3_aggregate => p_budget_unit3_aggregate
89 ,p_position_control_flag => p_position_control_flag
90 ,p_valid_grade_reqd_flag => p_valid_grade_reqd_flag
91 ,p_currency_code => p_currency_code
92 ,p_dflt_budget_set_id => p_dflt_budget_set_id
93 ,p_effective_date => trunc(p_effective_date)
94 );
95 exception
96 when hr_api.cannot_find_prog_unit then
97 hr_api.cannot_find_prog_unit_error
98 (
99 p_module_name => 'create_budget'
100 ,p_hook_type => 'BP'
101 );
102 --
103 -- End of API User Hook for the before hook of create_budget
104 --
105 end;
106 --
107 PQH_BGT_ins.ins
108 (
109 p_budget_id => l_budget_id
110 ,p_business_group_id => p_business_group_id
111 ,p_start_organization_id => p_start_organization_id
112 ,p_org_structure_version_id => p_org_structure_version_id
113 ,p_budgeted_entity_cd => p_budgeted_entity_cd
114 ,p_budget_style_cd => p_budget_style_cd
115 ,p_budget_name => p_budget_name
116 ,p_period_set_name => p_period_set_name
117 ,p_budget_start_date => p_budget_start_date
118 ,p_budget_end_date => p_budget_end_date
119 ,p_gl_budget_name => p_gl_budget_name
120 ,p_psb_budget_flag => p_psb_budget_flag
121 ,p_transfer_to_gl_flag => p_transfer_to_gl_flag
122 ,p_transfer_to_grants_flag => p_transfer_to_grants_flag
123 ,p_status => p_status
124 ,p_object_version_number => l_object_version_number
125 ,p_budget_unit1_id => p_budget_unit1_id
126 ,p_budget_unit2_id => p_budget_unit2_id
127 ,p_budget_unit3_id => p_budget_unit3_id
128 ,p_gl_set_of_books_id => p_gl_set_of_books_id
129 ,p_budget_unit1_aggregate => p_budget_unit1_aggregate
130 ,p_budget_unit2_aggregate => p_budget_unit2_aggregate
131 ,p_budget_unit3_aggregate => p_budget_unit3_aggregate
132 ,p_position_control_flag => p_position_control_flag
133 ,p_valid_grade_reqd_flag => p_valid_grade_reqd_flag
134 ,p_currency_code => p_currency_code
135 ,p_dflt_budget_set_id => p_dflt_budget_set_id
136 ,p_effective_date => trunc(p_effective_date)
137 );
138 --
139 begin
140 --
141 -- Start of API User Hook for the after hook of create_budget
142 --
143 pqh_budgets_bk1.create_budget_a
144 (
145 p_budget_id => l_budget_id
146 ,p_business_group_id => p_business_group_id
147 ,p_start_organization_id => p_start_organization_id
148 ,p_org_structure_version_id => p_org_structure_version_id
149 ,p_budgeted_entity_cd => p_budgeted_entity_cd
150 ,p_budget_style_cd => p_budget_style_cd
151 ,p_budget_name => p_budget_name
152 ,p_period_set_name => p_period_set_name
153 ,p_budget_start_date => p_budget_start_date
154 ,p_budget_end_date => p_budget_end_date
155 ,p_gl_budget_name => p_gl_budget_name
156 ,p_psb_budget_flag => p_psb_budget_flag
157 ,p_transfer_to_gl_flag => p_transfer_to_gl_flag
158 ,p_transfer_to_grants_flag => p_transfer_to_grants_flag
159 ,p_status => p_status
160 ,p_object_version_number => l_object_version_number
161 ,p_budget_unit1_id => p_budget_unit1_id
162 ,p_budget_unit2_id => p_budget_unit2_id
163 ,p_budget_unit3_id => p_budget_unit3_id
164 ,p_gl_set_of_books_id => p_gl_set_of_books_id
165 ,p_budget_unit1_aggregate => p_budget_unit1_aggregate
166 ,p_budget_unit2_aggregate => p_budget_unit2_aggregate
167 ,p_budget_unit3_aggregate => p_budget_unit3_aggregate
168 ,p_position_control_flag => p_position_control_flag
169 ,p_valid_grade_reqd_flag => p_valid_grade_reqd_flag
170 ,p_currency_code => p_currency_code
171 ,p_dflt_budget_set_id => p_dflt_budget_set_id
172 ,p_effective_date => trunc(p_effective_date)
173 );
174 exception
175 when hr_api.cannot_find_prog_unit then
176 hr_api.cannot_find_prog_unit_error
177 (p_module_name => 'create_budget'
178 ,p_hook_type => 'AP'
179 );
180 --
181 -- End of API User Hook for the after hook of create_budget
182 --
183 end;
184 --
185 hr_utility.set_location(l_proc, 60);
186 --
187 -- When in validation only mode raise the Validate_Enabled exception
188 --
189 if p_validate then
190 raise hr_api.validate_enabled;
191 end if;
192 --
193 -- Set all output arguments
194 --
195 p_budget_id := l_budget_id;
196 p_object_version_number := l_object_version_number;
197 --
198 hr_utility.set_location(' Leaving:'||l_proc, 70);
199 --
200 exception
201 --
202 when hr_api.validate_enabled then
203 --
204 -- As the Validate_Enabled exception has been raised
205 -- we must rollback to the savepoint
206 --
207 ROLLBACK TO create_budget;
208 --
209 -- Only set output warning arguments
210 -- (Any key or derived arguments must be set to null
211 -- when validation only mode is being used.)
212 --
213 p_budget_id := null;
214 p_object_version_number := null;
215 hr_utility.set_location(' Leaving:'||l_proc, 80);
216 --
217 when others then
218 p_budget_id := null;
219 p_object_version_number := null;
220 --
221 -- A validation or unexpected error has occured
222 --
223 ROLLBACK TO create_budget;
224 raise;
225 --
226 end create_budget;
227 -- ----------------------------------------------------------------------------
228 -- |------------------------< update_budget >--- ------------------|
229 -- ----------------------------------------------------------------------------
230 --
231 procedure update_budget
232 (p_validate in boolean default false
233 ,p_budget_id in number
234 ,p_business_group_id in number default hr_api.g_number
235 ,p_start_organization_id in number default hr_api.g_number
236 ,p_org_structure_version_id in number default hr_api.g_number
237 ,p_budgeted_entity_cd in varchar2 default hr_api.g_varchar2
238 ,p_budget_style_cd in varchar2 default hr_api.g_varchar2
239 ,p_budget_name in varchar2 default hr_api.g_varchar2
240 ,p_period_set_name in varchar2 default hr_api.g_varchar2
241 ,p_budget_start_date in date default hr_api.g_date
242 ,p_budget_end_date in date default hr_api.g_date
243 ,p_gl_budget_name in varchar2 default hr_api.g_varchar2
244 ,p_psb_budget_flag in varchar2 default hr_api.g_varchar2
245 ,p_transfer_to_gl_flag in varchar2 default hr_api.g_varchar2
246 ,p_transfer_to_grants_flag in varchar2 default hr_api.g_varchar2
247 ,p_status in varchar2 default hr_api.g_varchar2
248 ,p_object_version_number in out nocopy number
249 ,p_budget_unit1_id in number default hr_api.g_number
250 ,p_budget_unit2_id in number default hr_api.g_number
251 ,p_budget_unit3_id in number default hr_api.g_number
252 ,p_gl_set_of_books_id in number default hr_api.g_number
253 ,p_budget_unit1_aggregate in varchar2 default hr_api.g_varchar2
254 ,p_budget_unit2_aggregate in varchar2 default hr_api.g_varchar2
255 ,p_budget_unit3_aggregate in varchar2 default hr_api.g_varchar2
256 ,p_position_control_flag in varchar2 default hr_api.g_varchar2
257 ,p_valid_grade_reqd_flag in varchar2 default hr_api.g_varchar2
258 ,p_currency_code in varchar2 default hr_api.g_varchar2
259 ,p_dflt_budget_set_id in number default hr_api.g_number
260 ,p_effective_date in date
261 ) is
262 --
263 -- Declare cursors and local variables
264 --
265 l_proc varchar2(72) := g_package||'update_budget';
266 l_object_version_number pqh_budgets.object_version_number%TYPE;
267 --
268 begin
269 --
270 hr_utility.set_location('Entering:'|| l_proc, 10);
271 --
272 -- Issue a savepoint if operating in validation only mode
273 --
274 savepoint update_budget;
275 --
276 hr_utility.set_location(l_proc, 20);
277 --
278 -- Process Logic
279 --
280 l_object_version_number := p_object_version_number;
281 --
282 begin
283 --
284 -- Start of API User Hook for the before hook of update_budget
285 --
286 pqh_budgets_bk2.update_budget_b
287 (
288 p_budget_id => p_budget_id
289 ,p_business_group_id => p_business_group_id
290 ,p_start_organization_id => p_start_organization_id
291 ,p_org_structure_version_id => p_org_structure_version_id
292 ,p_budgeted_entity_cd => p_budgeted_entity_cd
293 ,p_budget_style_cd => p_budget_style_cd
294 ,p_budget_name => p_budget_name
295 ,p_period_set_name => p_period_set_name
296 ,p_budget_start_date => p_budget_start_date
297 ,p_budget_end_date => p_budget_end_date
298 ,p_gl_budget_name => p_gl_budget_name
299 ,p_psb_budget_flag => p_psb_budget_flag
300 ,p_transfer_to_gl_flag => p_transfer_to_gl_flag
301 ,p_transfer_to_grants_flag => p_transfer_to_grants_flag
302 ,p_status => p_status
303 ,p_object_version_number => p_object_version_number
304 ,p_budget_unit1_id => p_budget_unit1_id
305 ,p_budget_unit2_id => p_budget_unit2_id
306 ,p_budget_unit3_id => p_budget_unit3_id
307 ,p_gl_set_of_books_id => p_gl_set_of_books_id
308 ,p_budget_unit1_aggregate => p_budget_unit1_aggregate
309 ,p_budget_unit2_aggregate => p_budget_unit2_aggregate
310 ,p_budget_unit3_aggregate => p_budget_unit3_aggregate
311 ,p_position_control_flag => p_position_control_flag
312 ,p_valid_grade_reqd_flag => p_valid_grade_reqd_flag
313 ,p_currency_code => p_currency_code
314 ,p_dflt_budget_set_id => p_dflt_budget_set_id
315 ,p_effective_date => trunc(p_effective_date)
316 );
317 exception
318 when hr_api.cannot_find_prog_unit then
319 hr_api.cannot_find_prog_unit_error
320 (p_module_name => 'update_budget'
321 ,p_hook_type => 'BP'
322 );
323 --
324 -- End of API User Hook for the before hook of update_budget
325 --
326 end;
327 --
328 PQH_BGT_upd.upd
329 (
330 p_budget_id => p_budget_id
331 ,p_business_group_id => p_business_group_id
332 ,p_start_organization_id => p_start_organization_id
333 ,p_org_structure_version_id => p_org_structure_version_id
334 ,p_budgeted_entity_cd => p_budgeted_entity_cd
335 ,p_budget_style_cd => p_budget_style_cd
336 ,p_budget_name => p_budget_name
337 ,p_period_set_name => p_period_set_name
338 ,p_budget_start_date => p_budget_start_date
339 ,p_budget_end_date => p_budget_end_date
340 ,p_gl_budget_name => p_gl_budget_name
341 ,p_psb_budget_flag => p_psb_budget_flag
342 ,p_transfer_to_gl_flag => p_transfer_to_gl_flag
343 ,p_transfer_to_grants_flag => p_transfer_to_grants_flag
344 ,p_status => p_status
345 ,p_object_version_number => l_object_version_number
346 ,p_budget_unit1_id => p_budget_unit1_id
347 ,p_budget_unit2_id => p_budget_unit2_id
348 ,p_budget_unit3_id => p_budget_unit3_id
349 ,p_gl_set_of_books_id => p_gl_set_of_books_id
350 ,p_budget_unit1_aggregate => p_budget_unit1_aggregate
351 ,p_budget_unit2_aggregate => p_budget_unit2_aggregate
352 ,p_budget_unit3_aggregate => p_budget_unit3_aggregate
353 ,p_position_control_flag => p_position_control_flag
354 ,p_valid_grade_reqd_flag => p_valid_grade_reqd_flag
355 ,p_currency_code => p_currency_code
356 ,p_dflt_budget_set_id => p_dflt_budget_set_id
357 ,p_effective_date => trunc(p_effective_date)
358 );
359 --
360 begin
361 --
362 -- Start of API User Hook for the after hook of update_budget
363 --
364 pqh_budgets_bk2.update_budget_a
365 (
366 p_budget_id => p_budget_id
367 ,p_business_group_id => p_business_group_id
368 ,p_start_organization_id => p_start_organization_id
369 ,p_org_structure_version_id => p_org_structure_version_id
370 ,p_budgeted_entity_cd => p_budgeted_entity_cd
371 ,p_budget_style_cd => p_budget_style_cd
372 ,p_budget_name => p_budget_name
373 ,p_period_set_name => p_period_set_name
374 ,p_budget_start_date => p_budget_start_date
375 ,p_budget_end_date => p_budget_end_date
376 ,p_gl_budget_name => p_gl_budget_name
377 ,p_psb_budget_flag => p_psb_budget_flag
378 ,p_transfer_to_gl_flag => p_transfer_to_gl_flag
379 ,p_transfer_to_grants_flag => p_transfer_to_grants_flag
380 ,p_status => p_status
381 ,p_object_version_number => l_object_version_number
382 ,p_budget_unit1_id => p_budget_unit1_id
383 ,p_budget_unit2_id => p_budget_unit2_id
384 ,p_budget_unit3_id => p_budget_unit3_id
385 ,p_gl_set_of_books_id => p_gl_set_of_books_id
386 ,p_budget_unit1_aggregate => p_budget_unit1_aggregate
387 ,p_budget_unit2_aggregate => p_budget_unit2_aggregate
388 ,p_budget_unit3_aggregate => p_budget_unit3_aggregate
389 ,p_position_control_flag => p_position_control_flag
390 ,p_valid_grade_reqd_flag => p_valid_grade_reqd_flag
391 ,p_currency_code => p_currency_code
392 ,p_dflt_budget_set_id => p_dflt_budget_set_id
393 ,p_effective_date => trunc(p_effective_date)
394 );
395 exception
396 when hr_api.cannot_find_prog_unit then
397 hr_api.cannot_find_prog_unit_error
398 (p_module_name => 'update_budget'
399 ,p_hook_type => 'AP'
400 );
401 --
402 -- End of API User Hook for the after hook of update_budget
403 --
404 end;
405 --
406 hr_utility.set_location(l_proc, 60);
407 --
408 -- When in validation only mode raise the Validate_Enabled exception
409 --
410 if p_validate then
411 raise hr_api.validate_enabled;
412 end if;
413 --
414 -- Set all output arguments
415 --
416 p_object_version_number := l_object_version_number;
417 --
418 hr_utility.set_location(' Leaving:'||l_proc, 70);
419 --
420 exception
421 --
422 when hr_api.validate_enabled then
423 --
424 -- As the Validate_Enabled exception has been raised
425 -- we must rollback to the savepoint
426 --
427 ROLLBACK TO update_budget;
428 --
429 -- Only set output warning arguments
430 -- (Any key or derived arguments must be set to null
431 -- when validation only mode is being used.)
432 --
433 hr_utility.set_location(' Leaving:'||l_proc, 80);
434 --
435 when others then
436 p_object_version_number := l_object_version_number;
437 --
438 -- A validation or unexpected error has occured
439 --
440 ROLLBACK TO update_budget;
441 raise;
442 --
443 end update_budget;
444 -- ----------------------------------------------------------------------------
445 -- |------------------------< delete_budget >----------------------|
446 -- ----------------------------------------------------------------------------
447 --
448 procedure delete_budget
449 (p_validate in boolean default false
450 ,p_budget_id in number
451 ,p_object_version_number in number
452 ,p_effective_date in date
453 ) is
454 --
455 -- Declare cursors and local variables
456 --
457 l_proc varchar2(72) := g_package||'delete_budget';
458 l_object_version_number pqh_budgets.object_version_number%TYPE;
459 --
460 begin
461 --
462 hr_utility.set_location('Entering:'|| l_proc, 10);
463 --
464 -- Issue a savepoint if operating in validation only mode
465 --
466 savepoint delete_budget;
467 --
468 hr_utility.set_location(l_proc, 20);
469 --
470 -- Process Logic
471 --
472 l_object_version_number := p_object_version_number;
473 --
474 --
475 begin
476 --
477 -- Start of API User Hook for the before hook of delete_budget
478 --
479 pqh_budgets_bk3.delete_budget_b
480 (
481 p_budget_id => p_budget_id
482 ,p_object_version_number => p_object_version_number
483 ,p_effective_date => trunc(p_effective_date)
484 );
485 exception
486 when hr_api.cannot_find_prog_unit then
487 hr_api.cannot_find_prog_unit_error
488 (p_module_name => 'delete_budget'
489 ,p_hook_type => 'BP'
490 );
491 --
492 -- End of API User Hook for the before hook of delete_budget
493 --
494 end;
495 --
496 PQH_BGT_del.del
497 (
498 p_budget_id => p_budget_id
499 ,p_object_version_number => l_object_version_number
500 ,p_effective_date => p_effective_date
501 );
502 --
503 begin
504 --
505 -- Start of API User Hook for the after hook of delete_budget
506 --
507 pqh_budgets_bk3.delete_budget_a
508 (
509 p_budget_id => p_budget_id
510 ,p_object_version_number => l_object_version_number
511 ,p_effective_date => trunc(p_effective_date)
512 );
513 exception
514 when hr_api.cannot_find_prog_unit then
515 hr_api.cannot_find_prog_unit_error
516 (p_module_name => 'delete_budget'
517 ,p_hook_type => 'AP'
518 );
519 --
520 -- End of API User Hook for the after hook of delete_budget
521 --
522 end;
523 --
524 hr_utility.set_location(l_proc, 60);
525 --
526 -- When in validation only mode raise the Validate_Enabled exception
527 --
528 if p_validate then
529 raise hr_api.validate_enabled;
530 end if;
531 --
532 hr_utility.set_location(' Leaving:'||l_proc, 70);
533 --
534 exception
535 --
536 when hr_api.validate_enabled then
537 --
538 -- As the Validate_Enabled exception has been raised
539 -- we must rollback to the savepoint
540 --
541 ROLLBACK TO delete_budget;
542 --
543 -- Only set output warning arguments
544 -- (Any key or derived arguments must be set to null
545 -- when validation only mode is being used.)
546 --
547 --
548 when others then
549 --
550 -- A validation or unexpected error has occured
551 --
552 ROLLBACK TO delete_budget;
553 raise;
554 --
555 end delete_budget;
556 --
557 -- ----------------------------------------------------------------------------
558 -- |-------------------------------< lck >------------------------------------|
559 -- ----------------------------------------------------------------------------
560 --
561 procedure lck
562 (
563 p_budget_id in number
564 ,p_object_version_number in number
565 ) is
566 --
567 --
568 -- Declare cursors and local variables
569 --
570 l_proc varchar2(72) := g_package||'lck';
571 --
572 begin
573 --
574 hr_utility.set_location('Entering:'|| l_proc, 10);
575 --
576 PQH_BGT_shd.lck
577 (
578 p_budget_id => p_budget_id
579 ,p_object_version_number => p_object_version_number
580 );
581 --
582 hr_utility.set_location(' Leaving:'||l_proc, 70);
583 --
584 end lck;
585 --
586 end pqh_budgets_api;