DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_ICX_SHD

Source


1 Package Body hr_icx_shd as
2 /* $Header: hricxrhi.pkb 115.5 2003/10/23 01:44:08 bsubrama noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33) := '  hr_icx_shd.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |---------------------------< constraint_error >---------------------------|
12 -- ----------------------------------------------------------------------------
13 Procedure constraint_error
14   (p_constraint_name in all_constraints.constraint_name%TYPE
15   ) Is
16 --
17   l_proc  varchar2(72) := g_package||'constraint_error';
18 --
19 Begin
20   --
21   If (p_constraint_name = 'HR_ITEM_CONTEXTS_PK') Then
22     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
23     fnd_message.set_token('PROCEDURE', l_proc);
24     fnd_message.set_token('STEP','5');
25     fnd_message.raise_error;
26   Else
27     fnd_message.set_name('PAY', 'HR_7877_API_INVALID_CONSTRAINT');
28     fnd_message.set_token('PROCEDURE', l_proc);
29     fnd_message.set_token('CONSTRAINT_NAME', p_constraint_name);
30     fnd_message.raise_error;
31   End If;
32   --
33 End constraint_error;
34 --
35 -- ----------------------------------------------------------------------------
36 -- |-----------------------------< api_updating >-----------------------------|
37 -- ----------------------------------------------------------------------------
38 Function api_updating
39   (p_item_context_id                      in     number
40   ,p_object_version_number                in     number
41   )
42   Return Boolean Is
43 --
44   --
45   -- Cursor selects the 'current' row from the HR Schema
46   --
47   Cursor C_Sel1 is
48     select
49        item_context_id
50       ,object_version_number
51       ,id_flex_num
52       ,summary_flag
53       ,enabled_flag
54       ,start_date_active
55       ,end_date_active
56       ,segment1
57       ,segment2
58       ,segment3
59       ,segment4
60       ,segment5
61       ,segment6
62       ,segment7
63       ,segment8
64       ,segment9
65       ,segment10
66       ,segment11
67       ,segment12
68       ,segment13
69       ,segment14
70       ,segment15
71       ,segment16
72       ,segment17
73       ,segment18
74       ,segment19
75       ,segment20
76       ,segment21
77       ,segment22
78       ,segment23
79       ,segment24
80       ,segment25
81       ,segment26
82       ,segment27
83       ,segment28
84       ,segment29
85       ,segment30
86     from  hr_item_contexts
87     where item_context_id = p_item_context_id;
88 --
89   l_fct_ret boolean;
90 --
91 Begin
92   --
93   If (p_item_context_id is null and
94       p_object_version_number is null
95      ) Then
96     --
97     -- One of the primary key arguments is null therefore we must
98     -- set the returning function value to false
99     --
100     l_fct_ret := false;
101   Else
102     If (p_item_context_id
103         = hr_icx_shd.g_old_rec.item_context_id and
104         p_object_version_number
105         = hr_tdg_shd.g_old_rec.object_version_number
106        ) Then
107       --
108       -- The g_old_rec is current therefore we must
109       -- set the returning function to true
110       --
111       l_fct_ret := true;
112     Else
113       --
114       -- Select the current row into g_old_rec
115       --
116       Open C_Sel1;
117       Fetch C_Sel1 Into hr_icx_shd.g_old_rec;
118       If C_Sel1%notfound Then
119         Close C_Sel1;
120         --
121         -- The primary key is invalid therefore we must error
122         --
123         fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
124         fnd_message.raise_error;
125       End If;
126       Close C_Sel1;
127       If (p_object_version_number
128           <> hr_tdg_shd.g_old_rec.object_version_number) Then
129         fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
130         fnd_message.raise_error;
131       End If;
132 
133       l_fct_ret := true;
134     End If;
135   End If;
136   Return (l_fct_ret);
137 --
138 End api_updating;
139 --
140 -- ----------------------------------------------------------------------------
141 -- |---------------------------------< lck >----------------------------------|
142 -- ----------------------------------------------------------------------------
143 Procedure lck
144   (p_item_context_id                      in     number
145   ,p_object_version_number                in     number
146   ) is
147 --
148 -- Cursor selects the 'current' row from the HR Schema
149 --
150   Cursor C_Sel1 is
151     select
152        item_context_id
153       ,object_version_number
154       ,id_flex_num
155       ,summary_flag
156       ,enabled_flag
157       ,start_date_active
158       ,end_date_active
159       ,segment1
160       ,segment2
161       ,segment3
162       ,segment4
163       ,segment5
164       ,segment6
165       ,segment7
166       ,segment8
167       ,segment9
168       ,segment10
169       ,segment11
170       ,segment12
171       ,segment13
172       ,segment14
173       ,segment15
174       ,segment16
175       ,segment17
176       ,segment18
177       ,segment19
178       ,segment20
179       ,segment21
180       ,segment22
181       ,segment23
182       ,segment24
183       ,segment25
184       ,segment26
185       ,segment27
186       ,segment28
187       ,segment29
188       ,segment30
189     from  hr_item_contexts
190     where item_context_id = p_item_context_id
191     for update nowait;
192 --
193   l_proc  varchar2(72) := g_package||'lck';
194 --
195 Begin
196   hr_utility.set_location('Entering:'||l_proc, 5);
197   --
198   hr_api.mandatory_arg_error
199     (p_api_name           => l_proc
200     ,p_argument           => 'ITEM_CONTEXT_ID'
201     ,p_argument_value     => p_item_context_id
202     );
203   --
204   hr_api.mandatory_arg_error
205     (p_api_name   => l_proc
206     ,p_argument   => 'object_version_number'
207     ,p_argument_value   => p_object_version_number
208    );
209   Open  C_Sel1;
210   Fetch C_Sel1 Into hr_icx_shd.g_old_rec;
211   If C_Sel1%notfound then
212     Close C_Sel1;
213     --
214     -- The primary key is invalid therefore we must error
215     --
216     fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
217     fnd_message.raise_error;
218   End If;
219   Close C_Sel1;
220   --
221   If (p_object_version_number
222       <> hr_tdg_shd.g_old_rec.object_version_number) Then
223         fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
224         fnd_message.raise_error;
225   End If;
226   --
227   hr_utility.set_location(' Leaving:'||l_proc, 10);
228   --
229   -- We need to trap the ORA LOCK exception
230   --
231 Exception
232   When HR_Api.Object_Locked then
233     --
234     -- The object is locked therefore we need to supply a meaningful
235     -- error message.
236     --
237     fnd_message.set_name('PAY', 'HR_7165_OBJECT_LOCKED');
238     fnd_message.set_token('TABLE_NAME', 'hr_item_contexts');
239     fnd_message.raise_error;
240 End lck;
241 --
242 -- ----------------------------------------------------------------------------
243 -- |-----------------------------< convert_args >-----------------------------|
244 -- ----------------------------------------------------------------------------
245 Function convert_args
246   (p_item_context_id                in number
247   ,p_object_version_number          in number
248   ,p_id_flex_num                    in number
249   ,p_summary_flag                   in varchar2
250   ,p_enabled_flag                   in varchar2
251   ,p_start_date_active              in date
252   ,p_end_date_active                in date
253   ,p_segment1                       in varchar2
254   ,p_segment2                       in varchar2
255   ,p_segment3                       in varchar2
256   ,p_segment4                       in varchar2
257   ,p_segment5                       in varchar2
258   ,p_segment6                       in varchar2
259   ,p_segment7                       in varchar2
260   ,p_segment8                       in varchar2
261   ,p_segment9                       in varchar2
262   ,p_segment10                      in varchar2
263   ,p_segment11                      in varchar2
264   ,p_segment12                      in varchar2
265   ,p_segment13                      in varchar2
266   ,p_segment14                      in varchar2
267   ,p_segment15                      in varchar2
268   ,p_segment16                      in varchar2
269   ,p_segment17                      in varchar2
270   ,p_segment18                      in varchar2
271   ,p_segment19                      in varchar2
272   ,p_segment20                      in varchar2
273   ,p_segment21                      in varchar2
274   ,p_segment22                      in varchar2
275   ,p_segment23                      in varchar2
276   ,p_segment24                      in varchar2
277   ,p_segment25                      in varchar2
278   ,p_segment26                      in varchar2
279   ,p_segment27                      in varchar2
280   ,p_segment28                      in varchar2
281   ,p_segment29                      in varchar2
282   ,p_segment30                      in varchar2
283   )
284   Return g_rec_type is
285 --
286   l_rec   g_rec_type;
287 --
288 Begin
289   --
290   -- Convert arguments into local l_rec structure.
291   --
292   l_rec.item_context_id                  := p_item_context_id;
293   l_rec.object_version_number            := p_object_version_number;
294   l_rec.id_flex_num                      := p_id_flex_num;
295   l_rec.summary_flag                     := p_summary_flag;
296   l_rec.enabled_flag                     := p_enabled_flag;
297   l_rec.start_date_active                := p_start_date_active;
298   l_rec.end_date_active                  := p_end_date_active;
299   l_rec.segment1                         := p_segment1;
300   l_rec.segment2                         := p_segment2;
301   l_rec.segment3                         := p_segment3;
302   l_rec.segment4                         := p_segment4;
303   l_rec.segment5                         := p_segment5;
304   l_rec.segment6                         := p_segment6;
305   l_rec.segment7                         := p_segment7;
306   l_rec.segment8                         := p_segment8;
307   l_rec.segment9                         := p_segment9;
308   l_rec.segment10                        := p_segment10;
309   l_rec.segment11                        := p_segment11;
310   l_rec.segment12                        := p_segment12;
311   l_rec.segment13                        := p_segment13;
312   l_rec.segment14                        := p_segment14;
313   l_rec.segment15                        := p_segment15;
314   l_rec.segment16                        := p_segment16;
315   l_rec.segment17                        := p_segment17;
316   l_rec.segment18                        := p_segment18;
317   l_rec.segment19                        := p_segment19;
318   l_rec.segment20                        := p_segment20;
319   l_rec.segment21                        := p_segment21;
320   l_rec.segment22                        := p_segment22;
321   l_rec.segment23                        := p_segment23;
322   l_rec.segment24                        := p_segment24;
323   l_rec.segment25                        := p_segment25;
324   l_rec.segment26                        := p_segment26;
325   l_rec.segment27                        := p_segment27;
326   l_rec.segment28                        := p_segment28;
327   l_rec.segment29                        := p_segment29;
328   l_rec.segment30                        := p_segment30;
329   --
330   -- Return the plsql record structure.
331   --
332   Return(l_rec);
333 --
334 End convert_args;
335 --
336 end hr_icx_shd;