[Home] [Help]
PACKAGE BODY: APPS.PER_RI_VIEW_REPORT_API
Source
1 Package Body per_ri_view_report_api AS
2 /* $Header: pervrapi.pkb 120.1 2006/06/12 23:58:23 ndorai noship $ */
3 --
4 -- Package Variables
5 --
6 g_package VARCHAR2(33) := 'per_ri_view_report_api.';
7 --
8 --------------------------------------------------------------------------------
9 g_dummy number(1); -- Dummy for cursor returns which are not needed
10 g_business_group_id number(15); -- For validating translation;
11 g_legislation_code varchar2(150); -- For validating translation;
12 --------------------------------------------------------------------------------
13 -- ----------------------------------------------------------------------------------
14 -- |-----------------------------< create_view_report >--------------------------|
15 -- ----------------------------------------------------------------------------------
16 --
17 Procedure create_view_report
18 ( p_validate In Boolean Default False
19 ,p_workbench_view_report_code In Varchar2
20 ,p_workbench_view_report_name In Varchar2
21 ,p_wb_view_report_description In Varchar2
22 ,p_workbench_item_code In Varchar2
23 ,p_workbench_view_report_type In Varchar2
24 ,p_workbench_view_report_action In Varchar2
25 ,p_workbench_view_country In Varchar2
26 ,p_wb_view_report_instruction In Varchar2
27 ,p_language_code In Varchar2 Default hr_api.userenv_lang
28 ,p_effective_date In Date
29 ,p_object_version_number Out Nocopy Number
30 ,p_primary_industry In Varchar2
31 ,p_enabled_flag In Varchar2 Default 'Y'
32 ) Is
33 --
34 -- Declare cursors and local variables
35 --
36 l_proc Varchar2(72) := g_package||'create_view_report';
37 l_object_version_number per_ri_view_reports.object_version_number%TYPE;
38 l_language_code per_ri_view_reports_tl.language%TYPE;
39 l_effective_date Date;
40 l_workbench_item_creation_date Date;
41 l_workbench_item_code per_ri_view_reports.workbench_item_code%TYPE;
42 --
43 Begin
44 --
45 hr_utility.set_location('Entering:'|| l_proc, 10);
46 --
47 -- Issue a savepoint
48 --
49 Savepoint create_view_report;
50 --
51 hr_utility.set_location(l_proc, 15);
52 per_rvr_ins.set_base_key_value (p_workbench_view_report_code => p_workbench_view_report_code );
53 --
54 -- All date input parameters must be truncated to remove time elements
55 --
56 l_effective_date := trunc (p_effective_date);
57
58 --
59 --
60 -- Validate the language parameter. l_language_code should be passed to functions
61 -- instead of p_language_code from now on, to allow an IN OUT parameter to
62 -- be passed through.
63 --
64 l_language_code := p_language_code;
65 hr_api.validate_language_code(p_language_code => l_language_code);
66 --
67 hr_utility.set_location(l_proc, 20);
68
69 -- Process Logic
70 --
71 -- Insert non-translatable rows into PER_RI_VIEW_REPORTS first
72 per_rvr_ins.ins
73 (p_workbench_view_report_code => p_workbench_view_report_code
74 ,p_workbench_item_code => p_workbench_item_code
75 ,p_workbench_view_report_type => p_workbench_view_report_type
76 ,p_workbench_view_report_action => p_workbench_view_report_action
77 ,p_workbench_view_country => p_workbench_view_country
78 ,p_wb_view_report_instruction => p_wb_view_report_instruction
79 ,p_object_version_number => p_object_version_number
80 ,p_primary_industry => p_primary_industry
81 ,p_enabled_flag => p_enabled_flag
82 );
83
84
85 --
86 -- Now insert translatable rows in PER_RI_VIEW_REPORTS_TL table
87 per_rvt_ins.ins_tl
88 (p_workbench_view_report_code =>p_workbench_view_report_code
89 ,p_workbench_view_report_name =>p_workbench_view_report_name
90 ,p_wb_view_report_description =>p_wb_view_report_description
91 ,p_language_code =>p_language_code
92 ) ;
93
94 hr_utility.set_location(l_proc, 60);
95 --
96 -- When in validation only mode raise the Validate_Enabled exception
97 --
98 If p_validate Then
99 Raise hr_api.validate_enabled;
100 End If;
101 --
102 -- Set all output arguments
103 --
104 p_object_version_number := l_object_version_number;
105 --
106 hr_utility.set_location(' Leaving:'||l_proc, 70);
107 --
108 Exception
109 --
110 When hr_api.validate_enabled Then
111 --
112 -- As the Validate_Enabled exception has been raised
113 -- we must rollback to the savepoint
114 --
115 Rollback To create_view_report;
116 --
117 -- Only set output warning arguments
118 -- (Any key or derived arguments must be set to null
119 -- when validation only mode is being used.)
120 --
121 p_object_version_number := Null;
122 hr_utility.set_location(' Leaving:'||l_proc, 80);
123 When Others Then
124 --
125 -- A validation or unexpected error has occurred
126 Rollback To create_view_report;
127 -- Set OUT parameters.
128 p_object_version_number := Null;
129 hr_utility.set_location(' Leaving:'||l_proc, 90);
130 Raise;
131 --
132 End create_view_report;
133 -- ----------------------------------------------------------------------------
134 -- |--------------------------< update_view_report >-----------------------------|
135 -- ----------------------------------------------------------------------------
136 --
137 Procedure update_view_report
138 ( p_validate In Boolean Default False
139 ,p_workbench_view_report_code In Varchar2
140 ,p_workbench_view_report_name In Varchar2 Default hr_api.g_varchar2
141 ,p_wb_view_report_description In Varchar2 Default hr_api.g_varchar2
142 ,p_workbench_item_code In Varchar2 Default hr_api.g_varchar2
143 ,p_workbench_view_report_type In Varchar2 Default hr_api.g_varchar2
144 ,p_workbench_view_report_action In Varchar2 Default hr_api.g_varchar2
145 ,p_workbench_view_country In Varchar2 Default hr_api.g_varchar2
146 ,p_wb_view_report_instruction In Varchar2 Default hr_api.g_varchar2
147 ,p_language_code In Varchar2 Default hr_api.userenv_lang
148 ,p_effective_date In Date
149 ,p_object_version_number In Out Nocopy Number
150 ,p_primary_industry In Varchar2 Default hr_api.g_varchar2
151 ,p_enabled_flag In Varchar2 Default 'Y'
152 ) Is
153 --
154 -- Declare cursors and local variables
155 --
156 l_proc VARCHAR2(72) := g_package||'update_view_report';
157 l_object_version_number per_ri_view_reports.object_version_number%TYPE;
158 l_language_code per_ri_view_reports_tl.language%TYPE;
159 l_workbench_item_creation_date Date;
160 l_effective_date DATE;
161
162 l_temp_ovn number := p_object_version_number;
163 --
164 BEGIN
165 --
166 hr_utility.set_location('Entering:'|| l_proc, 10);
167 --
168 -- Issue a savepoint.
169 --
170 savepoint update_view_report;
171 --
172 --
173 -- All date input parameters must be truncated to remove time elements
174 --
175 l_effective_date := trunc (p_effective_date);
176
177 --
178 -- Validate the language parameter. l_language_code should be passed to functions
179 -- instead of p_language_code from now on, to allow an IN OUT parameter to be
180 -- passed through.
181 --
182 l_language_code := p_language_code;
183 hr_api.validate_language_code(p_language_code => l_language_code);
184 hr_utility.set_location(l_proc, 20);
185 --
186 --
187 -- Process Logic
188 --
189 l_object_version_number := p_object_version_number;
190 --
191 -- Insert non-translatable rows in PER_RI_VIEW_REPORTS Table
192 --
193 per_rvr_upd.upd
194 (p_workbench_view_report_code => p_workbench_view_report_code
195 ,p_workbench_item_code => p_workbench_item_code
196 ,p_workbench_view_report_type => p_workbench_view_report_type
197 ,p_workbench_view_report_action => p_workbench_view_report_action
198 ,p_workbench_view_country => p_workbench_view_country
199 ,p_wb_view_report_instruction => p_wb_view_report_instruction
200 ,p_object_version_number => l_object_version_number
201 ,p_primary_industry => p_primary_industry
202 ,p_enabled_flag => p_enabled_flag
203 );
204 --
205 -- Now insert translatable rows in PER_RI_VIEW_REPORTS_TL table
206
207 per_rvt_upd.upd_tl
208 (p_workbench_view_report_code => p_workbench_view_report_code
209 ,p_workbench_view_report_name => p_workbench_view_report_name
210 ,p_wb_view_report_description => p_wb_view_report_description
211 ,p_language_code => p_language_code
212 ) ;
213
214 --
215
216 hr_utility.set_location(l_proc, 60);
217 --
218 -- When in validation only mode raise the Validate_Enabled exception
219 --
220 If p_validate Then
221 Raise hr_api.validate_enabled;
222 End If;
223 --
224 -- Set all output arguments. If p_validate was TRUE, this bit is
225 -- never reached, so p_object_version_number is passed back unchanged.
226 --
227 p_object_version_number := l_object_version_number;
228 --
229 hr_utility.set_location(' Leaving:'||l_proc, 70);
230 --
231 Exception
232 --
233 When hr_api.validate_enabled Then
234 --
235 -- As the Validate_Enabled exception has been raised
236 -- we must rollback to the savepoint
237 --
238 Rollback To update_view_report;
239 --
240 -- Only set output warning arguments
241 -- (Any key or derived arguments must be set to null
242 -- when validation only mode is being used.)
243 -- Reset IN OUT parameters.
244 p_object_version_number := l_temp_ovn;
245 hr_utility.set_location(' Leaving:'||l_proc, 80);
246 When Others Then
247 --
248 -- A validation or unexpected error has occurred
249 Rollback To update_view_report;
250 -- Reset IN OUT parameters.
251 p_object_version_number := l_temp_ovn;
252 hr_utility.set_location(' Leaving:'||l_proc, 90);
253 Raise;
254 --
255 --
256 End update_view_report;
257 -- ----------------------------------------------------------------------------
258 -- |-------------------------< delete_view_report >------------------------------|
259 -- ----------------------------------------------------------------------------
260 --
261 Procedure delete_view_report
262 ( p_validate In Boolean Default False
263 ,p_workbench_view_report_code In Varchar2
264 ,p_object_version_number IN Number )
265
266 Is
267 --
268 --
269 -- Declare cursors and local variables
270 --
271 l_proc Varchar2(72) := g_package||'delete_view_report';
272 --
273 Begin
274 --
275 hr_utility.set_location('Entering:'|| l_proc, 10);
276 --
277 -- Issue a savepoint
278 --
279 Savepoint delete_view_report;
280
281 --
282 -- Process Logic
283 -- =============
284 --
285 -- Need to lock main table to maintain the locking ladder order
286 --
287 hr_utility.set_location( l_proc, 30);
288 per_rvr_shd.lck ( p_workbench_view_report_code => p_workbench_view_report_code,
289 p_object_version_number => p_object_version_number );
290 --
291 -- Remove all matching translation rows
292 --
293 hr_utility.set_location( l_proc, 35);
294
295 per_rvt_del.del_tl( p_workbench_view_report_code => p_workbench_view_report_code );
296 --
297 -- Remove non-translated data row
298 --
299 hr_utility.set_location( l_proc, 40);
300
304 --
301 per_rvr_del.del(p_workbench_view_report_code => p_workbench_view_report_code,
302 p_object_version_number => p_object_version_number );
303 --
305 hr_utility.set_location(' Leaving:'||l_proc, 60);
306 --
307 -- When in validation only mode raise the Validate_Enabled exception
308 --
309 If p_validate Then
310 Raise hr_api.validate_enabled;
311 End If;
312 --
313 --
314 Exception
315 --
316 When hr_api.validate_enabled Then
317 --
318 -- As the Validate_Enabled exception has been raised
319 -- we must rollback to the savepoint
320 --
321 Rollback To delete_view_report;
322 --
323 -- Only set output warning arguments
324 -- (Any key or derived arguments must be set to null
325 -- when validation only mode is being used.)
326 --
327 hr_utility.set_location(' Leaving:'||l_proc, 80);
328 When Others Then
329 --
330 -- A validation or unexpected error has occurred
331 Rollback To delete_view_report;
332 hr_utility.set_location(' Leaving:'||l_proc, 90);
333 Raise;
334 --
335 End delete_view_report;
336
337 --
338
339 End per_ri_view_report_api;