DBA Data[Home] [Help]

PACKAGE BODY: APPS.PQH_PTX_INS

Source


1 Package Body pqh_ptx_ins as
2 /* $Header: pqptxrhi.pkb 120.1 2008/01/31 09:40:13 brsinha noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)	:= '  pqh_ptx_ins.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------------< insert_dml >------------------------------|
12 -- ----------------------------------------------------------------------------
13 -- {Start Of Comments}
14 --
15 -- Description:
16 --   This procedure controls the actual dml insert logic. The processing of
17 --   this procedure are as follows:
18 --   1) Initialise the object_version_number to 1 if the object_version_number
19 --      is defined as an attribute for this entity.
20 --   3) To insert the row into the schema.
21 --   4) To trap any constraint violations that may have occurred.
22 --   5) To raise any other errors.
23 --
24 -- Prerequisites:
25 --   This is an internal private procedure which must be called from the ins
26 --   procedure and must have all mandatory attributes set (except the
27 --   object_version_number which is initialised within this procedure).
28 --
29 -- In Parameters:
30 --   A Pl/Sql record structre.
31 --
32 -- Post Success:
33 --   The specified row will be inserted into the schema.
34 --
35 -- Post Failure:
36 --   If a check, unique or parent integrity constraint violation is raised the
37 --   constraint_error procedure will be called.
38 --
39 -- Developer Implementation Notes:
40 --   None.
41 --
42 -- Access Status:
43 --   Internal Row Handler Use Only.
44 --
45 -- {End Of Comments}
46 -- ----------------------------------------------------------------------------
47 Procedure insert_dml(p_rec in out nocopy pqh_ptx_shd.g_rec_type) is
48 --
49   l_proc  varchar2(72) := g_package||'insert_dml';
50 --
51 Begin
52   hr_utility.set_location('Entering:'||l_proc, 5);
53   p_rec.object_version_number := 1;  -- Initialise the object version
54   --
55   --
56   -- Insert the row into: pqh_position_transactions
57   --
58   insert into pqh_position_transactions
59   (	position_transaction_id,
60 	action_date,
61 	position_id,
62 	availability_status_id,
63 	business_group_id,
64 	entry_step_id,
65 	entry_grade_rule_id,
66 	job_id,
67 	location_id,
68 	organization_id,
69 	pay_freq_payroll_id,
70 	position_definition_id,
71 	prior_position_id,
72 	relief_position_id,
73 	entry_grade_id,
74 	successor_position_id,
75 	supervisor_position_id,
76 	amendment_date,
77 	amendment_recommendation,
78 	amendment_ref_number,
79 	avail_status_prop_end_date,
80 	bargaining_unit_cd,
81 	comments,
82 	country1,
83 	country2,
84 	country3,
85 	current_job_prop_end_date,
86 	current_org_prop_end_date,
87 	date_effective,
88 	date_end,
89 	earliest_hire_date,
90 	fill_by_date,
91 	frequency,
92 	fte,
93         fte_capacity,
94 	location1,
95 	location2,
96 	location3,
97 	max_persons,
98 	name,
99 	other_requirements,
100 	overlap_period,
101 	overlap_unit_cd,
102 	passport_required,
103 	pay_term_end_day_cd,
104 	pay_term_end_month_cd,
105 	permanent_temporary_flag,
106 	permit_recruitment_flag,
107 	position_type,
108 	posting_description,
109 	probation_period,
110 	probation_period_unit_cd,
111 	relocate_domestically,
112 	relocate_internationally,
113 	replacement_required_flag,
114 	review_flag,
115 	seasonal_flag,
116 	security_requirements,
117 	service_minimum,
118 	term_start_day_cd,
119 	term_start_month_cd,
120 	time_normal_finish,
121 	time_normal_start,
122 	transaction_status,
123 	travel_required,
124 	working_hours,
125 	works_council_approval_flag,
126 	work_any_country,
127 	work_any_location,
128 	work_period_type_cd,
129 	work_schedule,
130 	work_duration,
131 	work_term_end_day_cd,
132 	work_term_end_month_cd,
133         proposed_fte_for_layoff,
134         proposed_date_for_layoff,
135 	information1,
136 	information2,
137 	information3,
138 	information4,
139 	information5,
140 	information6,
141 	information7,
142 	information8,
143 	information9,
144 	information10,
145 	information11,
146 	information12,
147 	information13,
148 	information14,
149 	information15,
150 	information16,
151 	information17,
152 	information18,
153 	information19,
154 	information20,
155 	information21,
156 	information22,
157 	information23,
158 	information24,
159 	information25,
160 	information26,
161 	information27,
162 	information28,
163 	information29,
164 	information30,
165 	information_category,
166 	attribute1,
167 	attribute2,
168 	attribute3,
169 	attribute4,
170 	attribute5,
171 	attribute6,
172 	attribute7,
173 	attribute8,
174 	attribute9,
175 	attribute10,
176 	attribute11,
177 	attribute12,
178 	attribute13,
179 	attribute14,
180 	attribute15,
181 	attribute16,
182 	attribute17,
183 	attribute18,
184 	attribute19,
185 	attribute20,
186 	attribute21,
187 	attribute22,
188 	attribute23,
189 	attribute24,
190 	attribute25,
191 	attribute26,
192 	attribute27,
193 	attribute28,
194 	attribute29,
195 	attribute30,
196 	attribute_category,
197 	object_version_number ,
198 	pay_basis_id,
199 	supervisor_id,
200 	wf_transaction_category_id
201   )
202   Values
203   (	p_rec.position_transaction_id,
204 	p_rec.action_date,
205 	p_rec.position_id,
206 	p_rec.availability_status_id,
207 	p_rec.business_group_id,
208 	p_rec.entry_step_id,
209 	p_rec.entry_grade_rule_id,
210 	p_rec.job_id,
211 	p_rec.location_id,
212 	p_rec.organization_id,
213 	p_rec.pay_freq_payroll_id,
214 	p_rec.position_definition_id,
215 	p_rec.prior_position_id,
216 	p_rec.relief_position_id,
217 	p_rec.entry_grade_id,
218 	p_rec.successor_position_id,
219 	p_rec.supervisor_position_id,
220 	p_rec.amendment_date,
221 	p_rec.amendment_recommendation,
222 	p_rec.amendment_ref_number,
223 	p_rec.avail_status_prop_end_date,
224 	p_rec.bargaining_unit_cd,
225 	p_rec.comments,
226 	p_rec.country1,
227 	p_rec.country2,
228 	p_rec.country3,
229 	p_rec.current_job_prop_end_date,
230 	p_rec.current_org_prop_end_date,
231 	p_rec.date_effective,
232 	p_rec.date_end,
233 	p_rec.earliest_hire_date,
234 	p_rec.fill_by_date,
235 	p_rec.frequency,
236 	p_rec.fte,
237         p_rec.fte_capacity,
238 	p_rec.location1,
239 	p_rec.location2,
240 	p_rec.location3,
241 	p_rec.max_persons,
242 	p_rec.name,
243 	p_rec.other_requirements,
244 	p_rec.overlap_period,
245 	p_rec.overlap_unit_cd,
246 	p_rec.passport_required,
247 	p_rec.pay_term_end_day_cd,
248 	p_rec.pay_term_end_month_cd,
249 	p_rec.permanent_temporary_flag,
250 	p_rec.permit_recruitment_flag,
251 	p_rec.position_type,
252 	p_rec.posting_description,
253 	p_rec.probation_period,
254 	p_rec.probation_period_unit_cd,
255 	p_rec.relocate_domestically,
256 	p_rec.relocate_internationally,
257 	p_rec.replacement_required_flag,
258 	p_rec.review_flag,
259 	p_rec.seasonal_flag,
260 	p_rec.security_requirements,
261 	p_rec.service_minimum,
262 	p_rec.term_start_day_cd,
263 	p_rec.term_start_month_cd,
264 	p_rec.time_normal_finish,
265 	p_rec.time_normal_start,
266 	p_rec.transaction_status,
267 	p_rec.travel_required,
268 	p_rec.working_hours,
269 	p_rec.works_council_approval_flag,
270 	p_rec.work_any_country,
271 	p_rec.work_any_location,
272 	p_rec.work_period_type_cd,
273 	p_rec.work_schedule,
274 	p_rec.work_duration,
275 	p_rec.work_term_end_day_cd,
276 	p_rec.work_term_end_month_cd,
277         p_rec.proposed_fte_for_layoff,
278         p_rec.proposed_date_for_layoff,
279 	p_rec.information1,
280 	p_rec.information2,
281 	p_rec.information3,
282 	p_rec.information4,
283 	p_rec.information5,
284 	p_rec.information6,
285 	p_rec.information7,
286 	p_rec.information8,
287 	p_rec.information9,
288 	p_rec.information10,
289 	p_rec.information11,
290 	p_rec.information12,
291 	p_rec.information13,
292 	p_rec.information14,
293 	p_rec.information15,
294 	p_rec.information16,
295 	p_rec.information17,
296 	p_rec.information18,
297 	p_rec.information19,
298 	p_rec.information20,
299 	p_rec.information21,
300 	p_rec.information22,
301 	p_rec.information23,
302 	p_rec.information24,
303 	p_rec.information25,
304 	p_rec.information26,
305 	p_rec.information27,
306 	p_rec.information28,
307 	p_rec.information29,
308 	p_rec.information30,
309 	p_rec.information_category,
310 	p_rec.attribute1,
311 	p_rec.attribute2,
312 	p_rec.attribute3,
313 	p_rec.attribute4,
314 	p_rec.attribute5,
315 	p_rec.attribute6,
316 	p_rec.attribute7,
317 	p_rec.attribute8,
318 	p_rec.attribute9,
319 	p_rec.attribute10,
320 	p_rec.attribute11,
321 	p_rec.attribute12,
322 	p_rec.attribute13,
323 	p_rec.attribute14,
324 	p_rec.attribute15,
325 	p_rec.attribute16,
326 	p_rec.attribute17,
327 	p_rec.attribute18,
328 	p_rec.attribute19,
329 	p_rec.attribute20,
330 	p_rec.attribute21,
331 	p_rec.attribute22,
332 	p_rec.attribute23,
333 	p_rec.attribute24,
334 	p_rec.attribute25,
335 	p_rec.attribute26,
336 	p_rec.attribute27,
337 	p_rec.attribute28,
338 	p_rec.attribute29,
339 	p_rec.attribute30,
340 	p_rec.attribute_category,
341 	p_rec.object_version_number ,
342 	p_rec.pay_basis_id,
343 	p_rec.supervisor_id,
344 	p_rec.wf_transaction_category_id
345   );
346   --
347   --
348   hr_utility.set_location(' Leaving:'||l_proc, 10);
349 Exception
350   When hr_api.check_integrity_violated Then
351     -- A check constraint has been violated
352     pqh_ptx_shd.constraint_error
353       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
354   When hr_api.parent_integrity_violated Then
355     -- Parent integrity has been violated
356     pqh_ptx_shd.constraint_error
357       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
358   When hr_api.unique_integrity_violated Then
359     -- Unique integrity has been violated
360     pqh_ptx_shd.constraint_error
361       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
362   When Others Then
363     Raise;
364 End insert_dml;
365 --
366 -- ----------------------------------------------------------------------------
367 -- |------------------------------< pre_insert >------------------------------|
368 -- ----------------------------------------------------------------------------
369 -- {Start Of Comments}
370 --
371 -- Description:
372 --   This private procedure contains any processing which is required before
373 --   the insert dml. Presently, if the entity has a corresponding primary
374 --   key which is maintained by an associating sequence, the primary key for
375 --   the entity will be populated with the next sequence value in
376 --   preparation for the insert dml.
377 --
378 -- Prerequisites:
379 --   This is an internal procedure which is called from the ins procedure.
380 --
381 -- In Parameters:
382 --   A Pl/Sql record structre.
383 --
384 -- Post Success:
385 --   Processing continues.
386 --
387 -- Post Failure:
388 --   If an error has occurred, an error message and exception will be raised
389 --   but not handled.
390 --
391 -- Developer Implementation Notes:
392 --   Any pre-processing required before the insert dml is issued should be
393 --   coded within this procedure. As stated above, a good example is the
394 --   generation of a primary key number via a corresponding sequence.
395 --   It is important to note that any 3rd party maintenance should be reviewed
396 --   before placing in this procedure.
397 --
398 -- Access Status:
399 --   Internal Row Handler Use Only.
400 --
401 -- {End Of Comments}
402 -- ----------------------------------------------------------------------------
403 Procedure pre_insert(p_rec  in out nocopy pqh_ptx_shd.g_rec_type) is
404 --
405   l_proc  varchar2(72) := g_package||'pre_insert';
406 --
407   Cursor C_Sel1 is select pqh_position_transactions_s.nextval from sys.dual;
408 --
409 Begin
410   hr_utility.set_location('Entering:'||l_proc, 5);
411   --
412   --
413   -- Select the next sequence number
414   --
415   Open C_Sel1;
416   Fetch C_Sel1 Into p_rec.position_transaction_id;
417   Close C_Sel1;
418   --
419   hr_utility.set_location(' Leaving:'||l_proc, 10);
420 End pre_insert;
421 --
422 -- ----------------------------------------------------------------------------
423 -- |-----------------------------< post_insert >------------------------------|
424 -- ----------------------------------------------------------------------------
425 -- {Start Of Comments}
426 --
427 -- Description:
428 --   This private procedure contains any processing which is required after the
429 --   insert dml.
430 --
431 -- Prerequisites:
432 --   This is an internal procedure which is called from the ins procedure.
433 --
434 -- In Parameters:
435 --   A Pl/Sql record structre.
436 --
437 -- Post Success:
438 --   Processing continues.
439 --
440 -- Post Failure:
441 --   If an error has occurred, an error message and exception will be raised
442 --   but not handled.
443 --
444 -- Developer Implementation Notes:
445 --   Any post-processing required after the insert dml is issued should be
446 --   coded within this procedure. It is important to note that any 3rd party
447 --   maintenance should be reviewed before placing in this procedure.
448 --
449 -- Access Status:
450 --   Internal Row Handler Use Only.
451 --
452 -- {End Of Comments}
453 -- ----------------------------------------------------------------------------
454 Procedure post_insert(
455 p_effective_date in date,p_rec in pqh_ptx_shd.g_rec_type) is
456 --
457   l_proc  varchar2(72) := g_package||'post_insert';
458   l_effective_start_date            date;
459   l_effective_end_date              date;
460   l_position_definition_id          number;
461   l_valid_grades_changed_warning    boolean;
462   l_name                            hr_all_positions_f.name%type;
463   l_review_flag                     hr_all_positions_f.review_flag%type;
464   l_object_version_number           number;
465   l_effective_date                  date        :=sysdate;
466   l_datetrack_mode                  varchar2(20):='UPDATE';
467 --
468 cursor c_review_flag(p_position_id number) is
469 select review_flag
470 from hr_all_positions_f
471 where position_id = p_position_id;
472 --
473 cursor c1(p_position_id number, p_effective_date date) is
474 select review_flag, object_version_number
475 from hr_all_positions_f
476 where position_id = p_position_id
477 and p_effective_date between effective_start_date and effective_end_date;
478 --
479 Begin
480   hr_utility.set_location('Entering:'||l_proc, 5);
481 --
482 if p_rec.position_id is not null then
483   open c_review_flag(p_rec.position_id);
484   fetch c_review_flag into l_review_flag;
485   close c_review_flag;
486   --
487 --  if (nvl(p_rec.review_flag,'N') = 'Y' and nvl(l_review_flag,'N') = 'Y'
488 --    and nvl(pqh_ptx_shd.g_old_rec.review_flag,'N') = 'N')then
489 
490   if ( nvl(l_review_flag,'N') = 'Y')then
491     hr_utility.set_message(8302, 'PQH_POSITION_UNDER_REVIEW');
492     hr_utility.raise_error;
493   /* Bug 6524175 Changes
494   elsif ((nvl(p_rec.review_flag,'N') = 'Y' and nvl(l_review_flag,'N') = 'N'))then */
495     --
496   else
497     update hr_all_positions_f
498     set review_flag = p_rec.review_flag
499     where position_id = p_rec.position_id;
500 /*
501     hr_position_api.update_position(
502       p_validate                   => false,
503       p_position_id            	 => p_rec.position_id,
504       p_effective_start_date    	 => l_effective_start_date,
505       p_effective_end_date	 => l_effective_end_date,
506       p_position_definition_id     => l_position_definition_id,
507       p_valid_grades_changed_warning=> l_valid_grades_changed_warning,
508       p_name                       => l_name,
509       p_review_flag                => p_rec.review_flag,
510       p_object_version_number   	 => l_object_version_number,
511       p_effective_date	  	 => l_effective_date,
512       p_datetrack_mode		 => l_datetrack_mode
513     );
514 */
515 end if;
516 end if;
517   --
518   -- Start of API User Hook for post_insert.
519   --
520   begin
521     --
522     pqh_ptx_rki.after_insert
523       (
524   p_position_transaction_id       =>p_rec.position_transaction_id
525  ,p_action_date                   =>p_rec.action_date
526  ,p_position_id                   =>p_rec.position_id
527  ,p_availability_status_id        =>p_rec.availability_status_id
528  ,p_business_group_id             =>p_rec.business_group_id
529  ,p_entry_step_id                 =>p_rec.entry_step_id
530  ,p_entry_grade_rule_id                 =>p_rec.entry_grade_rule_id
531  ,p_job_id                        =>p_rec.job_id
532  ,p_location_id                   =>p_rec.location_id
533  ,p_organization_id               =>p_rec.organization_id
534  ,p_pay_freq_payroll_id           =>p_rec.pay_freq_payroll_id
535  ,p_position_definition_id        =>p_rec.position_definition_id
536  ,p_prior_position_id             =>p_rec.prior_position_id
537  ,p_relief_position_id            =>p_rec.relief_position_id
538  ,p_entry_grade_id         =>p_rec.entry_grade_id
539  ,p_successor_position_id         =>p_rec.successor_position_id
540  ,p_supervisor_position_id        =>p_rec.supervisor_position_id
541  ,p_amendment_date                =>p_rec.amendment_date
542  ,p_amendment_recommendation      =>p_rec.amendment_recommendation
543  ,p_amendment_ref_number          =>p_rec.amendment_ref_number
544  ,p_avail_status_prop_end_date    =>p_rec.avail_status_prop_end_date
545  ,p_bargaining_unit_cd            =>p_rec.bargaining_unit_cd
546  ,p_comments                      =>p_rec.comments
547  ,p_country1                      =>p_rec.country1
548  ,p_country2                      =>p_rec.country2
549  ,p_country3                      =>p_rec.country3
550  ,p_current_job_prop_end_date     =>p_rec.current_job_prop_end_date
551  ,p_current_org_prop_end_date     =>p_rec.current_org_prop_end_date
552  ,p_date_effective                =>p_rec.date_effective
553  ,p_date_end                      =>p_rec.date_end
554  ,p_earliest_hire_date            =>p_rec.earliest_hire_date
555  ,p_fill_by_date                  =>p_rec.fill_by_date
556  ,p_frequency                     =>p_rec.frequency
557  ,p_fte                           =>p_rec.fte
558  ,p_fte_capacity                  =>p_rec.fte_capacity
559  ,p_location1                     =>p_rec.location1
560  ,p_location2                     =>p_rec.location2
561  ,p_location3                     =>p_rec.location3
562  ,p_max_persons                   =>p_rec.max_persons
563  ,p_name                          =>p_rec.name
564  ,p_other_requirements            =>p_rec.other_requirements
565  ,p_overlap_period                =>p_rec.overlap_period
566  ,p_overlap_unit_cd               =>p_rec.overlap_unit_cd
567  ,p_passport_required             =>p_rec.passport_required
568  ,p_pay_term_end_day_cd           =>p_rec.pay_term_end_day_cd
569  ,p_pay_term_end_month_cd         =>p_rec.pay_term_end_month_cd
570  ,p_permanent_temporary_flag      =>p_rec.permanent_temporary_flag
571  ,p_permit_recruitment_flag       =>p_rec.permit_recruitment_flag
572  ,p_position_type                 =>p_rec.position_type
573  ,p_posting_description           =>p_rec.posting_description
574  ,p_probation_period              =>p_rec.probation_period
575  ,p_probation_period_unit_cd      =>p_rec.probation_period_unit_cd
576  ,p_relocate_domestically         =>p_rec.relocate_domestically
577  ,p_relocate_internationally      =>p_rec.relocate_internationally
578  ,p_replacement_required_flag     =>p_rec.replacement_required_flag
579  ,p_review_flag                   =>p_rec.review_flag
580  ,p_seasonal_flag                 =>p_rec.seasonal_flag
581  ,p_security_requirements         =>p_rec.security_requirements
582  ,p_service_minimum               =>p_rec.service_minimum
583  ,p_term_start_day_cd             =>p_rec.term_start_day_cd
584  ,p_term_start_month_cd           =>p_rec.term_start_month_cd
585  ,p_time_normal_finish            =>p_rec.time_normal_finish
586  ,p_time_normal_start             =>p_rec.time_normal_start
587  ,p_transaction_status            =>p_rec.transaction_status
588  ,p_travel_required               =>p_rec.travel_required
589  ,p_working_hours                 =>p_rec.working_hours
590  ,p_works_council_approval_flag   =>p_rec.works_council_approval_flag
591  ,p_work_any_country              =>p_rec.work_any_country
592  ,p_work_any_location             =>p_rec.work_any_location
593  ,p_work_period_type_cd           =>p_rec.work_period_type_cd
594  ,p_work_schedule                 =>p_rec.work_schedule
595  ,p_work_duration                 =>p_rec.work_duration
596  ,p_work_term_end_day_cd          =>p_rec.work_term_end_day_cd
597  ,p_work_term_end_month_cd        =>p_rec.work_term_end_month_cd
598  ,p_proposed_fte_for_layoff       =>p_rec.proposed_fte_for_layoff
599  ,p_proposed_date_for_layoff      =>p_rec.proposed_date_for_layoff
600  ,p_information1                  =>p_rec.information1
601  ,p_information2                  =>p_rec.information2
602  ,p_information3                  =>p_rec.information3
603  ,p_information4                  =>p_rec.information4
604  ,p_information5                  =>p_rec.information5
605  ,p_information6                  =>p_rec.information6
606  ,p_information7                  =>p_rec.information7
607  ,p_information8                  =>p_rec.information8
608  ,p_information9                  =>p_rec.information9
609  ,p_information10                 =>p_rec.information10
610  ,p_information11                 =>p_rec.information11
611  ,p_information12                 =>p_rec.information12
612  ,p_information13                 =>p_rec.information13
613  ,p_information14                 =>p_rec.information14
614  ,p_information15                 =>p_rec.information15
615  ,p_information16                 =>p_rec.information16
616  ,p_information17                 =>p_rec.information17
617  ,p_information18                 =>p_rec.information18
618  ,p_information19                 =>p_rec.information19
619  ,p_information20                 =>p_rec.information20
620  ,p_information21                 =>p_rec.information21
621  ,p_information22                 =>p_rec.information22
622  ,p_information23                 =>p_rec.information23
623  ,p_information24                 =>p_rec.information24
624  ,p_information25                 =>p_rec.information25
625  ,p_information26                 =>p_rec.information26
626  ,p_information27                 =>p_rec.information27
627  ,p_information28                 =>p_rec.information28
628  ,p_information29                 =>p_rec.information29
629  ,p_information30                 =>p_rec.information30
630  ,p_information_category          =>p_rec.information_category
631  ,p_attribute1                    =>p_rec.attribute1
632  ,p_attribute2                    =>p_rec.attribute2
633  ,p_attribute3                    =>p_rec.attribute3
634  ,p_attribute4                    =>p_rec.attribute4
635  ,p_attribute5                    =>p_rec.attribute5
636  ,p_attribute6                    =>p_rec.attribute6
637  ,p_attribute7                    =>p_rec.attribute7
638  ,p_attribute8                    =>p_rec.attribute8
639  ,p_attribute9                    =>p_rec.attribute9
640  ,p_attribute10                   =>p_rec.attribute10
641  ,p_attribute11                   =>p_rec.attribute11
642  ,p_attribute12                   =>p_rec.attribute12
643  ,p_attribute13                   =>p_rec.attribute13
644  ,p_attribute14                   =>p_rec.attribute14
645  ,p_attribute15                   =>p_rec.attribute15
646  ,p_attribute16                   =>p_rec.attribute16
647  ,p_attribute17                   =>p_rec.attribute17
648  ,p_attribute18                   =>p_rec.attribute18
649  ,p_attribute19                   =>p_rec.attribute19
650  ,p_attribute20                   =>p_rec.attribute20
651  ,p_attribute21                   =>p_rec.attribute21
652  ,p_attribute22                   =>p_rec.attribute22
653  ,p_attribute23                   =>p_rec.attribute23
654  ,p_attribute24                   =>p_rec.attribute24
655  ,p_attribute25                   =>p_rec.attribute25
656  ,p_attribute26                   =>p_rec.attribute26
657  ,p_attribute27                   =>p_rec.attribute27
658  ,p_attribute28                   =>p_rec.attribute28
659  ,p_attribute29                   =>p_rec.attribute29
660  ,p_attribute30                   =>p_rec.attribute30
661  ,p_attribute_category            =>p_rec.attribute_category
662  ,p_object_version_number         =>p_rec.object_version_number
663  ,p_effective_date                =>p_effective_date
664  ,p_pay_basis_id		  =>p_rec.pay_basis_id
665  ,p_supervisor_id		  =>p_rec.supervisor_id
666  ,p_wf_transaction_category_id	  =>p_rec.wf_transaction_category_id
667       );
668     --
669   exception
670     --
671     when hr_api.cannot_find_prog_unit then
672       --
673       hr_api.cannot_find_prog_unit_error
674         (p_module_name => 'pqh_position_transactions'
675         ,p_hook_type   => 'AI');
676       --
677   end;
678   --
679   -- End of API User Hook for post_insert.
680   --
681   --
682   hr_utility.set_location(' Leaving:'||l_proc, 10);
683 End post_insert;
684 --
685 -- ----------------------------------------------------------------------------
686 -- |---------------------------------< ins >----------------------------------|
687 -- ----------------------------------------------------------------------------
688 Procedure ins
689   (
690   p_effective_date in date,
691   p_rec        in out nocopy pqh_ptx_shd.g_rec_type
692   ) is
693 --
694   l_proc  varchar2(72) := g_package||'ins';
695 --
696 Begin
697   hr_utility.set_location('Entering:'||l_proc, 5);
698   --
699   -- Call the supporting insert validate operations
700   --
701   pqh_ptx_bus.insert_validate(p_rec
702   ,p_effective_date);
703   --
704   -- Call the supporting pre-insert operation
705   --
706   pre_insert(p_rec);
707   --
708   -- Insert the row
709   --
710   insert_dml(p_rec);
711   --
712   -- Call the supporting post-insert operation
713   --
714   post_insert(
715 p_effective_date,p_rec);
716 end ins;
717 --
718 -- ----------------------------------------------------------------------------
719 -- |---------------------------------< ins >----------------------------------|
720 -- ----------------------------------------------------------------------------
721 Procedure ins
722   (
723   p_effective_date in date,
724   p_position_transaction_id      out nocopy number,
725   p_action_date                  in date             default null,
726   p_position_id                  in number           default null,
727   p_availability_status_id       in number           default null,
728   p_business_group_id            in number           default null,
729   p_entry_step_id                in number           default null,
730   p_entry_grade_rule_id                in number           default null,
731   p_job_id                       in number           default null,
732   p_location_id                  in number           default null,
733   p_organization_id              in number           default null,
734   p_pay_freq_payroll_id          in number           default null,
735   p_position_definition_id       in number           default null,
736   p_prior_position_id            in number           default null,
737   p_relief_position_id           in number           default null,
738   p_entry_grade_id        in number           default null,
739   p_successor_position_id        in number           default null,
740   p_supervisor_position_id       in number           default null,
741   p_amendment_date               in date             default null,
742   p_amendment_recommendation     in varchar2         default null,
743   p_amendment_ref_number         in varchar2         default null,
744   p_avail_status_prop_end_date   in date             default null,
745   p_bargaining_unit_cd           in varchar2         default null,
746   p_comments                     in varchar2         default null,
747   p_country1                     in varchar2         default null,
748   p_country2                     in varchar2         default null,
749   p_country3                     in varchar2         default null,
750   p_current_job_prop_end_date    in date             default null,
751   p_current_org_prop_end_date    in date             default null,
752   p_date_effective               in date             default null,
753   p_date_end                     in date             default null,
754   p_earliest_hire_date           in date             default null,
755   p_fill_by_date                 in date             default null,
756   p_frequency                    in varchar2         default null,
757   p_fte                          in number           default null,
758   p_fte_capacity                 in varchar2         default null,
759   p_location1                    in varchar2         default null,
760   p_location2                    in varchar2         default null,
761   p_location3                    in varchar2         default null,
762   p_max_persons                  in number           default null,
763   p_name                         in varchar2         default null,
764   p_other_requirements           in varchar2         default null,
765   p_overlap_period               in number           default null,
766   p_overlap_unit_cd              in varchar2         default null,
767   p_passport_required            in varchar2         default null,
768   p_pay_term_end_day_cd          in varchar2         default null,
769   p_pay_term_end_month_cd        in varchar2         default null,
770   p_permanent_temporary_flag     in varchar2         default null,
771   p_permit_recruitment_flag      in varchar2         default null,
772   p_position_type                in varchar2         default null,
773   p_posting_description          in varchar2         default null,
774   p_probation_period             in number           default null,
775   p_probation_period_unit_cd     in varchar2         default null,
776   p_relocate_domestically        in varchar2         default null,
777   p_relocate_internationally     in varchar2         default null,
778   p_replacement_required_flag    in varchar2         default null,
779   p_review_flag                  in varchar2         default null,
780   p_seasonal_flag                in varchar2         default null,
781   p_security_requirements        in varchar2         default null,
782   p_service_minimum              in varchar2         default null,
783   p_term_start_day_cd            in varchar2         default null,
784   p_term_start_month_cd          in varchar2         default null,
785   p_time_normal_finish           in varchar2         default null,
786   p_time_normal_start            in varchar2         default null,
787   p_transaction_status           in varchar2         default null,
788   p_travel_required              in varchar2         default null,
789   p_working_hours                in number           default null,
790   p_works_council_approval_flag  in varchar2         default null,
791   p_work_any_country             in varchar2         default null,
792   p_work_any_location            in varchar2         default null,
793   p_work_period_type_cd          in varchar2         default null,
794   p_work_schedule                in varchar2         default null,
795   p_work_duration                in varchar2         default null,
796   p_work_term_end_day_cd         in varchar2         default null,
797   p_work_term_end_month_cd       in varchar2         default null,
798   p_proposed_fte_for_layoff      in number           default null,
799   p_proposed_date_for_layoff     in date             default null,
800   p_information1                 in varchar2         default null,
801   p_information2                 in varchar2         default null,
802   p_information3                 in varchar2         default null,
803   p_information4                 in varchar2         default null,
804   p_information5                 in varchar2         default null,
805   p_information6                 in varchar2         default null,
806   p_information7                 in varchar2         default null,
807   p_information8                 in varchar2         default null,
808   p_information9                 in varchar2         default null,
809   p_information10                in varchar2         default null,
810   p_information11                in varchar2         default null,
811   p_information12                in varchar2         default null,
812   p_information13                in varchar2         default null,
813   p_information14                in varchar2         default null,
814   p_information15                in varchar2         default null,
815   p_information16                in varchar2         default null,
816   p_information17                in varchar2         default null,
817   p_information18                in varchar2         default null,
818   p_information19                in varchar2         default null,
819   p_information20                in varchar2         default null,
820   p_information21                in varchar2         default null,
821   p_information22                in varchar2         default null,
822   p_information23                in varchar2         default null,
823   p_information24                in varchar2         default null,
824   p_information25                in varchar2         default null,
825   p_information26                in varchar2         default null,
826   p_information27                in varchar2         default null,
827   p_information28                in varchar2         default null,
828   p_information29                in varchar2         default null,
829   p_information30                in varchar2         default null,
830   p_information_category         in varchar2         default null,
831   p_attribute1                   in varchar2         default null,
832   p_attribute2                   in varchar2         default null,
833   p_attribute3                   in varchar2         default null,
834   p_attribute4                   in varchar2         default null,
835   p_attribute5                   in varchar2         default null,
836   p_attribute6                   in varchar2         default null,
837   p_attribute7                   in varchar2         default null,
838   p_attribute8                   in varchar2         default null,
839   p_attribute9                   in varchar2         default null,
840   p_attribute10                  in varchar2         default null,
841   p_attribute11                  in varchar2         default null,
842   p_attribute12                  in varchar2         default null,
843   p_attribute13                  in varchar2         default null,
844   p_attribute14                  in varchar2         default null,
845   p_attribute15                  in varchar2         default null,
846   p_attribute16                  in varchar2         default null,
847   p_attribute17                  in varchar2         default null,
848   p_attribute18                  in varchar2         default null,
849   p_attribute19                  in varchar2         default null,
850   p_attribute20                  in varchar2         default null,
851   p_attribute21                  in varchar2         default null,
852   p_attribute22                  in varchar2         default null,
853   p_attribute23                  in varchar2         default null,
854   p_attribute24                  in varchar2         default null,
855   p_attribute25                  in varchar2         default null,
856   p_attribute26                  in varchar2         default null,
857   p_attribute27                  in varchar2         default null,
858   p_attribute28                  in varchar2         default null,
859   p_attribute29                  in varchar2         default null,
860   p_attribute30                  in varchar2         default null,
861   p_attribute_category           in varchar2         default null,
862   p_object_version_number        out nocopy number,
863   p_pay_basis_id	         in number           default null,
864   p_supervisor_id	         in number           default null,
865   p_wf_transaction_category_id	 in number           default null
866   ) is
867 --
868   l_rec	  pqh_ptx_shd.g_rec_type;
869   l_proc  varchar2(72) := g_package||'ins';
870 --
871 Begin
872   hr_utility.set_location('Entering:'||l_proc, 5);
873   --
874   -- Call conversion function to turn arguments into the
875   -- p_rec structure.
876   --
877   l_rec :=
878   pqh_ptx_shd.convert_args
879   (
880   null,
881   p_action_date,
882   p_position_id,
883   p_availability_status_id,
884   p_business_group_id,
885   p_entry_step_id,
886   p_entry_grade_rule_id,
887   p_job_id,
888   p_location_id,
889   p_organization_id,
890   p_pay_freq_payroll_id,
891   p_position_definition_id,
892   p_prior_position_id,
893   p_relief_position_id,
894   p_entry_grade_id,
895   p_successor_position_id,
896   p_supervisor_position_id,
897   p_amendment_date,
898   p_amendment_recommendation,
899   p_amendment_ref_number,
900   p_avail_status_prop_end_date,
901   p_bargaining_unit_cd,
902   p_comments,
903   p_country1,
904   p_country2,
905   p_country3,
906   p_current_job_prop_end_date,
907   p_current_org_prop_end_date,
908   p_date_effective,
909   p_date_end,
910   p_earliest_hire_date,
911   p_fill_by_date,
912   p_frequency,
913   p_fte,
914   p_fte_capacity,
915   p_location1,
916   p_location2,
917   p_location3,
918   p_max_persons,
919   p_name,
920   p_other_requirements,
921   p_overlap_period,
922   p_overlap_unit_cd,
923   p_passport_required,
924   p_pay_term_end_day_cd,
925   p_pay_term_end_month_cd,
926   p_permanent_temporary_flag,
927   p_permit_recruitment_flag,
928   p_position_type,
929   p_posting_description,
930   p_probation_period,
931   p_probation_period_unit_cd,
932   p_relocate_domestically,
933   p_relocate_internationally,
934   p_replacement_required_flag,
935   p_review_flag,
936   p_seasonal_flag,
937   p_security_requirements,
938   p_service_minimum,
939   p_term_start_day_cd,
940   p_term_start_month_cd,
941   p_time_normal_finish,
942   p_time_normal_start,
943   p_transaction_status,
944   p_travel_required,
945   p_working_hours,
946   p_works_council_approval_flag,
947   p_work_any_country,
948   p_work_any_location,
949   p_work_period_type_cd,
950   p_work_schedule,
951   p_work_duration,
952   p_work_term_end_day_cd,
953   p_work_term_end_month_cd,
954   p_proposed_fte_for_layoff,
955   p_proposed_date_for_layoff,
956   p_information1,
957   p_information2,
958   p_information3,
959   p_information4,
960   p_information5,
961   p_information6,
962   p_information7,
963   p_information8,
964   p_information9,
965   p_information10,
966   p_information11,
967   p_information12,
968   p_information13,
969   p_information14,
970   p_information15,
971   p_information16,
972   p_information17,
973   p_information18,
974   p_information19,
975   p_information20,
976   p_information21,
977   p_information22,
978   p_information23,
979   p_information24,
980   p_information25,
981   p_information26,
982   p_information27,
983   p_information28,
984   p_information29,
985   p_information30,
986   p_information_category,
987   p_attribute1,
988   p_attribute2,
989   p_attribute3,
990   p_attribute4,
991   p_attribute5,
992   p_attribute6,
993   p_attribute7,
994   p_attribute8,
995   p_attribute9,
996   p_attribute10,
997   p_attribute11,
998   p_attribute12,
999   p_attribute13,
1000   p_attribute14,
1001   p_attribute15,
1002   p_attribute16,
1003   p_attribute17,
1004   p_attribute18,
1005   p_attribute19,
1006   p_attribute20,
1007   p_attribute21,
1008   p_attribute22,
1009   p_attribute23,
1010   p_attribute24,
1011   p_attribute25,
1012   p_attribute26,
1013   p_attribute27,
1014   p_attribute28,
1015   p_attribute29,
1016   p_attribute30,
1017   p_attribute_category,
1018   null ,
1019   p_pay_basis_id,
1020   p_supervisor_id,
1021   p_wf_transaction_category_id
1022   );
1023   --
1024   -- Having converted the arguments into the pqh_ptx_rec
1025   -- plsql record structure we call the corresponding record business process.
1026   --
1027   ins(
1028     p_effective_date,l_rec);
1029   --
1030   -- As the primary key argument(s)
1031   -- are specified as an OUT's we must set these values.
1032   --
1033   p_position_transaction_id := l_rec.position_transaction_id;
1034   p_object_version_number := l_rec.object_version_number;
1035   --
1036   hr_utility.set_location(' Leaving:'||l_proc, 10);
1037 End ins;
1038 --
1039 end pqh_ptx_ins;