1: Package Body per_scn_ins as
2: /* $Header: pescnrhi.pkb 115.2 2003/08/07 23:57:30 vkonda noship $ */
3: --
4: -- ----------------------------------------------------------------------------
5: -- | Private Global Definitions |
4: -- ----------------------------------------------------------------------------
5: -- | Private Global Definitions |
6: -- ----------------------------------------------------------------------------
7: --
8: g_package varchar2(33) := ' per_scn_ins.'; -- Global package name
9: --
10: -- The following global variables are only to be used by
11: -- the set_base_key_value and pre_insert procedures.
12: --
26: --
27: Begin
28: hr_utility.set_location('Entering:'||l_proc, 10);
29: --
30: per_scn_ins.g_solution_id_i := p_solution_id;
31: per_scn_ins.g_component_name_i := p_component_name;
32: per_scn_ins.g_solution_type_name_i := p_solution_type_name;
33: --
34: hr_utility.set_location(' Leaving:'||l_proc, 20);
27: Begin
28: hr_utility.set_location('Entering:'||l_proc, 10);
29: --
30: per_scn_ins.g_solution_id_i := p_solution_id;
31: per_scn_ins.g_component_name_i := p_component_name;
32: per_scn_ins.g_solution_type_name_i := p_solution_type_name;
33: --
34: hr_utility.set_location(' Leaving:'||l_proc, 20);
35: End set_base_key_value;
28: hr_utility.set_location('Entering:'||l_proc, 10);
29: --
30: per_scn_ins.g_solution_id_i := p_solution_id;
31: per_scn_ins.g_component_name_i := p_component_name;
32: per_scn_ins.g_solution_type_name_i := p_solution_type_name;
33: --
34: hr_utility.set_location(' Leaving:'||l_proc, 20);
35: End set_base_key_value;
36: --
176: --
177: Cursor C_Sel2 is
178: Select null
179: from per_solution_cmpt_names
180: where solution_id = per_scn_ins.g_solution_id_i
181: and component_name = per_scn_ins.g_component_name_i
182: and solution_type_name = per_scn_ins.g_solution_type_name_i;
183: --
184: l_proc varchar2(72) := g_package||'pre_insert';
177: Cursor C_Sel2 is
178: Select null
179: from per_solution_cmpt_names
180: where solution_id = per_scn_ins.g_solution_id_i
181: and component_name = per_scn_ins.g_component_name_i
182: and solution_type_name = per_scn_ins.g_solution_type_name_i;
183: --
184: l_proc varchar2(72) := g_package||'pre_insert';
185: l_exists varchar2(1);
178: Select null
179: from per_solution_cmpt_names
180: where solution_id = per_scn_ins.g_solution_id_i
181: and component_name = per_scn_ins.g_component_name_i
182: and solution_type_name = per_scn_ins.g_solution_type_name_i;
183: --
184: l_proc varchar2(72) := g_package||'pre_insert';
185: l_exists varchar2(1);
186: --
186: --
187: Begin
188: hr_utility.set_location('Entering:'||l_proc, 5);
189: --
190: If (per_scn_ins.g_solution_id_i is not null or
191: per_scn_ins.g_component_name_i is not null or
192: per_scn_ins.g_solution_type_name_i is not null) Then
193: --
194: -- Verify registered primary key values not already in use
187: Begin
188: hr_utility.set_location('Entering:'||l_proc, 5);
189: --
190: If (per_scn_ins.g_solution_id_i is not null or
191: per_scn_ins.g_component_name_i is not null or
192: per_scn_ins.g_solution_type_name_i is not null) Then
193: --
194: -- Verify registered primary key values not already in use
195: --
188: hr_utility.set_location('Entering:'||l_proc, 5);
189: --
190: If (per_scn_ins.g_solution_id_i is not null or
191: per_scn_ins.g_component_name_i is not null or
192: per_scn_ins.g_solution_type_name_i is not null) Then
193: --
194: -- Verify registered primary key values not already in use
195: --
196: Open C_Sel2;
208: --
209: -- Use registered key values and clear globals
210: --
211: p_rec.solution_id :=
212: per_scn_ins.g_solution_id_i;
213: per_scn_ins.g_solution_id_i := null;
214: p_rec.component_name :=
215: per_scn_ins.g_component_name_i;
216: per_scn_ins.g_component_name_i := null;
209: -- Use registered key values and clear globals
210: --
211: p_rec.solution_id :=
212: per_scn_ins.g_solution_id_i;
213: per_scn_ins.g_solution_id_i := null;
214: p_rec.component_name :=
215: per_scn_ins.g_component_name_i;
216: per_scn_ins.g_component_name_i := null;
217: p_rec.solution_type_name :=
211: p_rec.solution_id :=
212: per_scn_ins.g_solution_id_i;
213: per_scn_ins.g_solution_id_i := null;
214: p_rec.component_name :=
215: per_scn_ins.g_component_name_i;
216: per_scn_ins.g_component_name_i := null;
217: p_rec.solution_type_name :=
218: per_scn_ins.g_solution_type_name_i;
219: per_scn_ins.g_solution_type_name_i := null;
212: per_scn_ins.g_solution_id_i;
213: per_scn_ins.g_solution_id_i := null;
214: p_rec.component_name :=
215: per_scn_ins.g_component_name_i;
216: per_scn_ins.g_component_name_i := null;
217: p_rec.solution_type_name :=
218: per_scn_ins.g_solution_type_name_i;
219: per_scn_ins.g_solution_type_name_i := null;
220: Else
214: p_rec.component_name :=
215: per_scn_ins.g_component_name_i;
216: per_scn_ins.g_component_name_i := null;
217: p_rec.solution_type_name :=
218: per_scn_ins.g_solution_type_name_i;
219: per_scn_ins.g_solution_type_name_i := null;
220: Else
221: --
222: -- No registerd key values, so raise an error.
215: per_scn_ins.g_component_name_i;
216: per_scn_ins.g_component_name_i := null;
217: p_rec.solution_type_name :=
218: per_scn_ins.g_solution_type_name_i;
219: per_scn_ins.g_solution_type_name_i := null;
220: Else
221: --
222: -- No registerd key values, so raise an error.
223: --
221: --
222: -- No registerd key values, so raise an error.
223: --
224: hr_utility.set_message(801, 'HR_7207_API_MANDATORY_ARG');
225: hr_utility.set_message_token('API_NAME', 'per_scn_ins');
226: hr_utility.set_message_token('ARGUMENT', 'base_key_value');
227: hr_utility.raise_error;
228: End If;
229: --
320: hr_multi_message.end_validation_set;
321: --
322: -- Call the supporting pre-insert operation
323: --
324: per_scn_ins.pre_insert(p_rec);
325: --
326: -- Insert the row
327: --
328: per_scn_ins.insert_dml(p_rec);
324: per_scn_ins.pre_insert(p_rec);
325: --
326: -- Insert the row
327: --
328: per_scn_ins.insert_dml(p_rec);
329: --
330: -- Call the supporting post-insert operation
331: --
332: per_scn_ins.post_insert
328: per_scn_ins.insert_dml(p_rec);
329: --
330: -- Call the supporting post-insert operation
331: --
332: per_scn_ins.post_insert
333: (p_rec
334: );
335: --
336: -- Call to raise any errors on multi-message list
370: --
371: -- Having converted the arguments into the per_scn_rec
372: -- plsql record structure we call the corresponding record business process.
373: --
374: per_scn_ins.ins
375: (l_rec
376: );
377: --
378: -- As the primary key argument(s)
385: --
386: hr_utility.set_location(' Leaving:'||l_proc, 10);
387: End ins;
388: --
389: end per_scn_ins;