[Home] [Help]
PACKAGE BODY: APPS.PER_ZA_EQT_SHD
Source
1 Package Body per_za_eqt_shd as
2 /* $Header: pezaeqsh.pkb 115.0 2001/02/04 22:32:59 pkm ship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' per_za_eqt_shd.'; -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------< return_api_dml_status >-------------------------|
12 -- ----------------------------------------------------------------------------
13 Function return_api_dml_status Return Boolean Is
14 --
15 l_proc varchar2(72) := g_package||'return_api_dml_status';
16 --
17 Begin
18 hr_utility.set_location('Entering:'||l_proc, 5);
19 --
20 Return (nvl(g_api_dml, false));
21 --
22 hr_utility.set_location(' Leaving:'||l_proc, 10);
23 End return_api_dml_status;
24 --
25 -- ----------------------------------------------------------------------------
26 -- |---------------------------< constraint_error >---------------------------|
27 -- ----------------------------------------------------------------------------
28 Procedure constraint_error
29 (p_constraint_name in all_constraints.constraint_name%TYPE) Is
30 --
31 l_proc varchar2(72) := g_package||'constraint_error';
32 --
33 Begin
34 hr_utility.set_location('Entering:'||l_proc, 5);
35 --
36 If (p_constraint_name = 'PER_QUALIFICATION_TYPES_PK') Then
37 hr_utility.set_message(801, 'HR_51535_EQT_QUAL_TYPE_PK');
38 hr_utility.raise_error;
39 ElsIf (p_constraint_name = 'PER_QUALIFICATION_TYPES_UK') Then
40 hr_utility.set_message(801, 'HR_51536_EQT_NAME_UK');
41 hr_utility.raise_error;
42 Else
43 hr_utility.set_message(801, 'HR_7877_API_INVALID_CONSTRAINT');
44 hr_utility.set_message_token('PROCEDURE', l_proc);
45 hr_utility.set_message_token('CONSTRAINT_NAME', p_constraint_name);
46 hr_utility.raise_error;
47 End If;
48 --
49 hr_utility.set_location(' Leaving:'||l_proc, 10);
50 End constraint_error;
51 --
52 -- ----------------------------------------------------------------------------
53 -- |-----------------------------< api_updating >-----------------------------|
54 -- ----------------------------------------------------------------------------
55 Function api_updating
56 (
57 p_qualification_type_id in number,
58 p_object_version_number in number
59 ) Return Boolean Is
60 --
61 --
62 -- Cursor selects the 'current' row from the HR Schema
63 --
64 Cursor C_Sel1 is
65 select
66 a.qualification_type_id,
67 b.nqf_qualification_type,
68 a.name,
69 a.category,
70 a.rank,
71 a.attribute_category,
72 a.attribute1,
73 a.attribute2,
74 a.attribute3,
75 a.attribute4,
76 a.attribute5,
77 a.attribute6,
78 a.attribute7,
79 a.attribute8,
80 a.attribute9,
81 a.attribute10,
82 a.attribute11,
83 a.attribute12,
84 a.attribute13,
85 a.attribute14,
86 a.attribute15,
87 a.attribute16,
88 a.attribute17,
89 a.attribute18,
90 a.attribute19,
91 a.attribute20,
92 a.object_version_number
93 from per_qualification_types a,
94 per_za_qualification_types b
95 where a.qualification_type_id = p_qualification_type_id and
96 a.qualification_type_id = b.qualification_type_id(+);
97 --
98 l_proc varchar2(72) := g_package||'api_updating';
99 l_fct_ret boolean;
100 --
101 Begin
102 hr_utility.set_location('Entering:'||l_proc, 5);
103 --
104 If (
105 p_qualification_type_id is null and
106 p_object_version_number is null
107 ) Then
108 --
109 -- One of the primary key arguments is null therefore we must
110 -- set the returning function value to false
111 --
112 l_fct_ret := false;
113 Else
114 If (
115 p_qualification_type_id = g_old_rec.qualification_type_id and
116 p_object_version_number = g_old_rec.object_version_number
117 ) Then
118 hr_utility.set_location(l_proc, 10);
119 --
120 -- The g_old_rec is current therefore we must
121 -- set the returning function to true
122 --
123 l_fct_ret := true;
124 Else
125 --
126 -- Select the current row into g_old_rec
127 --
128 Open C_Sel1;
129 Fetch C_Sel1 Into g_old_rec;
130 If C_Sel1%notfound Then
131 Close C_Sel1;
132 --
133 -- The primary key is invalid therefore we must error
134 --
135 hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
136 hr_utility.raise_error;
137 End If;
138 Close C_Sel1;
139 If (p_object_version_number <> g_old_rec.object_version_number) Then
140 hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
141 hr_utility.raise_error;
142 End If;
143 hr_utility.set_location(l_proc, 15);
144 l_fct_ret := true;
145 End If;
146 End If;
147 hr_utility.set_location(' Leaving:'||l_proc, 20);
148 Return (l_fct_ret);
149 --
150 End api_updating;
151 --
152 -- ----------------------------------------------------------------------------
153 -- |---------------------------------< lck >----------------------------------|
154 -- ----------------------------------------------------------------------------
155 Procedure lck
156 (
157 p_qualification_type_id in number,
158 p_object_version_number in number
159 ) is
160 --
161 -- Cursor selects the 'current' row from the HR Schema
162 --
163 Cursor C_Sel1 is
164 select
165 a.qualification_type_id,
166 b.nqf_qualification_type,
167 a.name,
168 a.category,
169 a.rank,
170 a.attribute_category,
171 a.attribute1,
172 a.attribute2,
173 a.attribute3,
174 a.attribute4,
175 a.attribute5,
176 a.attribute6,
177 a.attribute7,
178 a.attribute8,
179 a.attribute9,
180 a.attribute10,
181 a.attribute11,
182 a.attribute12,
183 a.attribute13,
184 a.attribute14,
185 a.attribute15,
186 a.attribute16,
187 a.attribute17,
188 a.attribute18,
189 a.attribute19,
190 a.attribute20,
191 a.object_version_number
192 from per_qualification_types a,
193 per_za_qualification_types b
194 where a.qualification_type_id = p_qualification_type_id and
195 a.qualification_type_id = b.qualification_type_id(+)
196 for update nowait;
197 --
198 l_proc varchar2(72) := g_package||'lck';
199 --
200 Begin
201 hr_utility.set_location('Entering:'||l_proc, 5);
202 --
203 -- Add any mandatory argument checking here:
204 -- Example:
205 -- hr_api.mandatory_arg_error
206 -- (p_api_name => l_proc,
207 -- p_argument => 'object_version_number',
208 -- p_argument_value => p_object_version_number);
209 --
210 Open C_Sel1;
211 Fetch C_Sel1 Into g_old_rec;
212 If C_Sel1%notfound then
213 Close C_Sel1;
214 --
215 -- The primary key is invalid therefore we must error
216 --
217 hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
218 hr_utility.raise_error;
219 End If;
220 Close C_Sel1;
221 If (p_object_version_number <> g_old_rec.object_version_number) Then
222 hr_utility.set_message(801, 'HR_7155_OBJECT_INVALID');
223 hr_utility.raise_error;
224 End If;
225 --
226 hr_utility.set_location(' Leaving:'||l_proc, 10);
227 --
228 -- We need to trap the ORA LOCK exception
229 --
230 Exception
231 When HR_Api.Object_Locked then
232 --
233 -- The object is locked therefore we need to supply a meaningful
234 -- error message.
235 --
236 hr_utility.set_message(801, 'HR_7165_OBJECT_LOCKED');
237 hr_utility.set_message_token('TABLE_NAME', 'per_qualification_types');
238 hr_utility.raise_error;
239 End lck;
240 --
241 -- ----------------------------------------------------------------------------
242 -- |-----------------------------< convert_args >-----------------------------|
243 -- ----------------------------------------------------------------------------
244 Function convert_args
245 (
246 p_qualification_type_id in number,
247 p_nqf_qualification_type in varchar2,
248 p_name in varchar2,
249 p_category in varchar2,
250 p_rank in number,
251 p_attribute_category in varchar2,
252 p_attribute1 in varchar2,
253 p_attribute2 in varchar2,
254 p_attribute3 in varchar2,
255 p_attribute4 in varchar2,
256 p_attribute5 in varchar2,
257 p_attribute6 in varchar2,
258 p_attribute7 in varchar2,
259 p_attribute8 in varchar2,
260 p_attribute9 in varchar2,
261 p_attribute10 in varchar2,
262 p_attribute11 in varchar2,
263 p_attribute12 in varchar2,
264 p_attribute13 in varchar2,
265 p_attribute14 in varchar2,
266 p_attribute15 in varchar2,
267 p_attribute16 in varchar2,
268 p_attribute17 in varchar2,
269 p_attribute18 in varchar2,
270 p_attribute19 in varchar2,
271 p_attribute20 in varchar2,
272 p_object_version_number in number
273 )
274 Return g_rec_type is
275 --
276 l_rec g_rec_type;
277 l_proc varchar2(72) := g_package||'convert_args';
278 --
279 Begin
280 --
281 hr_utility.set_location('Entering:'||l_proc, 5);
282 --
283 -- Convert arguments into local l_rec structure.
284 --
285 l_rec.qualification_type_id := p_qualification_type_id;
286 l_rec.nqf_qualification_type := p_nqf_qualification_type;
287 l_rec.name := p_name;
288 l_rec.category := p_category;
289 l_rec.rank := p_rank;
290 l_rec.attribute_category := p_attribute_category;
291 l_rec.attribute1 := p_attribute1;
292 l_rec.attribute2 := p_attribute2;
293 l_rec.attribute3 := p_attribute3;
294 l_rec.attribute4 := p_attribute4;
295 l_rec.attribute5 := p_attribute5;
296 l_rec.attribute6 := p_attribute6;
297 l_rec.attribute7 := p_attribute7;
298 l_rec.attribute8 := p_attribute8;
299 l_rec.attribute9 := p_attribute9;
300 l_rec.attribute10 := p_attribute10;
301 l_rec.attribute11 := p_attribute11;
302 l_rec.attribute12 := p_attribute12;
303 l_rec.attribute13 := p_attribute13;
304 l_rec.attribute14 := p_attribute14;
305 l_rec.attribute15 := p_attribute15;
306 l_rec.attribute16 := p_attribute16;
307 l_rec.attribute17 := p_attribute17;
308 l_rec.attribute18 := p_attribute18;
309 l_rec.attribute19 := p_attribute19;
310 l_rec.attribute20 := p_attribute20;
311 l_rec.object_version_number := p_object_version_number;
312 --
313 -- Return the plsql record structure.
314 --
315 hr_utility.set_location(' Leaving:'||l_proc, 10);
316 Return(l_rec);
317 --
318 End convert_args;
319 --
320 end per_za_eqt_shd;