DBA Data[Home] [Help]

PACKAGE BODY: APPS.FF_FUNCTION_CONTEXT_USG_API

Source


1 Package body FF_FUNCTION_CONTEXT_USG_API as
2 /* $Header: fffcuapi.pkb 120.0 2005/05/27 23:22:38 appldev noship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := '  FF_FUNCTION_CONTEXT_USG_API.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |--------------------------< CREATE_CONTEXT >------------------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure CREATE_CONTEXT
13   (p_validate                      in     boolean  default false
14   ,p_function_id                   in     number
15   ,p_context_id                    in     number
16   ,p_sequence_number                  out nocopy   number
17   ,p_object_version_number            out nocopy   number
18   ) is
19 
20   l_object_version_number ff_function_context_usages.object_version_number%type;
21   l_sequence_number       ff_function_context_usages.sequence_number%type;
22 
23   l_proc                  varchar2(72) := g_package||'CREATE_CONTEXT';
24 begin
25   hr_utility.set_location('Entering:'|| l_proc, 10);
26   --
27   -- Issue a savepoint
28   --
29   savepoint CREATE_CONTEXT;
30   --
31   -- Remember IN OUT parameter IN values
32   --
33   --
34   -- Truncate the time portion from all IN date parameters
35   --
36   --
37   -- Call Before Process User Hook
38   --
39   begin
40     FF_FUNCTION_CONTEXT_USG_BK1.CREATE_CONTEXT_b
41        (p_function_id               => p_function_id
42        ,p_context_id                => p_context_id
43        );
44   exception
45     when hr_api.cannot_find_prog_unit then
46       hr_api.cannot_find_prog_unit_error
47         (p_module_name => 'CREATE_CONTEXT'
48         ,p_hook_type   => 'BP'
49         );
50   end;
51   --
52   -- Validation in addition to Row Handlers
53   --
54 
55 
56 
57   --
58   -- Process Logic
59   --
60   ff_fcu_ins.ins
61      (p_function_id               => p_function_id
62      ,p_context_id                => p_context_id
63      ,p_sequence_number           => l_sequence_number
64      ,p_object_version_number     => l_object_version_number
65      );
66 
67   --
68   -- Call After Process User Hook
69   --
70   begin
71     FF_FUNCTION_CONTEXT_USG_BK1.CREATE_CONTEXT_a
72        (p_function_id               => p_function_id
73        ,p_context_id                => p_context_id
74        ,p_sequence_number           => l_sequence_number
75        ,p_object_version_number     => l_object_version_number
76        );
77   exception
78     when hr_api.cannot_find_prog_unit then
79       hr_api.cannot_find_prog_unit_error
80         (p_module_name => 'CREATE_CONTEXT'
81         ,p_hook_type   => 'AP'
82         );
83   end;
84   --
85   -- When in validation only mode raise the Validate_Enabled exception
86   --
87   if p_validate then
88     raise hr_api.validate_enabled;
89   end if;
90   --
91   -- Set all IN OUT and OUT parameters with out values
92   --
93   p_sequence_number        := l_sequence_number;
94   p_object_version_number  := l_object_version_number;
95   --
96   hr_utility.set_location(' Leaving:'||l_proc, 70);
97 exception
98   when hr_api.validate_enabled then
99     --
100     -- As the Validate_Enabled exception has been raised
101     -- we must rollback to the savepoint
102     --
103     rollback to CREATE_CONTEXT;
104     --
105     -- Reset IN OUT parameters and set OUT parameters
106     -- (Any key or derived arguments must be set to null
107     -- when validation only mode is being used.)
108     --
109     p_sequence_number        := null;
110     p_object_version_number  := null;
111 
112     hr_utility.set_location(' Leaving:'||l_proc, 80);
113   when others then
114     --
115     -- A validation or unexpected error has occured
116     --
117     rollback to CREATE_CONTEXT;
118     --
119     -- Reset IN OUT parameters and set all
120     -- OUT parameters, including warnings, to null
121     --
122     p_sequence_number        := null;
123     p_object_version_number  := null;
124     hr_utility.set_location(' Leaving:'||l_proc, 90);
125     raise;
126 end CREATE_CONTEXT;
127 --
128 -- ----------------------------------------------------------------------------
129 -- |--------------------------< UPDATE_CONTEXT >------------------------------|
130 -- ----------------------------------------------------------------------------
131 --
132 procedure UPDATE_CONTEXT
133   (p_validate                      in     boolean  default false
134   ,p_function_id                   in     number
135   ,p_sequence_number               in     number
136   ,p_object_version_number         in out nocopy   number
137   ,p_context_id                    in     number   default hr_api.g_number
138   ) is
139   --
140   -- Declare cursors and local variables
141   --
142   l_object_version_number      ff_function_context_usages.object_version_number%type;
143   l_proc                varchar2(72) := g_package||'UPDATE_CONTEXT';
144 begin
145   hr_utility.set_location('Entering:'|| l_proc, 10);
146   --
147   -- Issue a savepoint
148   --
149   savepoint UPDATE_CONTEXT;
150   --
151   -- Remember IN OUT parameter IN values
152   --
153   l_object_version_number := p_object_version_number;
154 
155   --
156   -- Truncate the time portion from all IN date parameters
157   --
158   --
159   -- Call Before Process User Hook
160   --
161   begin
162     FF_FUNCTION_CONTEXT_USG_BK2.UPDATE_CONTEXT_b
163        (p_function_id               => p_function_id
164        ,p_sequence_number           => p_sequence_number
165        ,p_object_version_number     => l_object_version_number
166        ,p_context_id                => p_context_id
167        );
168   exception
169     when hr_api.cannot_find_prog_unit then
170       hr_api.cannot_find_prog_unit_error
171         (p_module_name => 'UPDATE_CONTEXT'
172         ,p_hook_type   => 'BP'
173         );
174   end;
175   --
176   -- Validation in addition to Row Handlers
177   --
178 
179 
180 
181   --
182   -- Process Logic
183   --
184   ff_fcu_upd.upd
185      (p_function_id               => p_function_id
186      ,p_sequence_number           => p_sequence_number
187      ,p_object_version_number     => l_object_version_number
188      ,p_context_id                => p_context_id
189      );
190 
191 
192   --
193   -- Call After Process User Hook
194   --
195   begin
196     FF_FUNCTION_CONTEXT_USG_BK2.UPDATE_CONTEXT_a
197        (p_function_id               => p_function_id
198        ,p_sequence_number           => p_sequence_number
199        ,p_object_version_number     => l_object_version_number
200        ,p_context_id                => p_context_id
201        );
202   exception
203     when hr_api.cannot_find_prog_unit then
204       hr_api.cannot_find_prog_unit_error
205         (p_module_name => 'UPDATE_CONTEXT'
206         ,p_hook_type   => 'AP'
207         );
208   end;
209   --
210   -- When in validation only mode raise the Validate_Enabled exception
211   --
212   if p_validate then
213     raise hr_api.validate_enabled;
214   end if;
215   --
216   -- Set all IN OUT and OUT parameters with out values
217   --
218   p_object_version_number  := l_object_version_number;
219   --
220   hr_utility.set_location(' Leaving:'||l_proc, 70);
221 exception
222   when hr_api.validate_enabled then
223     --
224     -- As the Validate_Enabled exception has been raised
225     -- we must rollback to the savepoint
226     --
227     rollback to UPDATE_CONTEXT;
228     --
229     -- Reset IN OUT parameters and set OUT parameters
230     -- (Any key or derived arguments must be set to null
231     -- when validation only mode is being used.)
232     --
233     p_object_version_number  := null;
234     hr_utility.set_location(' Leaving:'||l_proc, 80);
235   when others then
236     --
237     -- A validation or unexpected error has occured
238     --
239     rollback to UPDATE_CONTEXT;
240     --
241     -- Reset IN OUT parameters and set all
242     -- OUT parameters, including warnings, to null
243     --
244     p_object_version_number  := null;
245     hr_utility.set_location(' Leaving:'||l_proc, 90);
246     raise;
247 end UPDATE_CONTEXT;
248 --
249 -- ----------------------------------------------------------------------------
250 -- |--------------------------< DELETE_CONTEXT >--------------------------|
251 -- ----------------------------------------------------------------------------
252 --
253 procedure DELETE_CONTEXT
254   (p_validate                      in     boolean  default false
255   ,p_function_id                   in     number
256   ,p_sequence_number               in     number
257   ,p_object_version_number         in     number
258   ) is
259   --
260   -- Declare cursors and local variables
261   --
262 
263   l_proc                varchar2(72) := g_package||'DELETE_CONTEXT';
264 begin
265   hr_utility.set_location('Entering:'|| l_proc, 10);
266   --
267   -- Issue a savepoint
268   --
269   savepoint DELETE_CONTEXT;
270   --
271   -- Remember IN OUT parameter IN values
272   --
273   -- Truncate the time portion from all IN date parameters
274   --
275   --
276   -- Call Before Process User Hook
277   --
278   begin
279     FF_FUNCTION_CONTEXT_USG_BK3.DELETE_CONTEXT_b
280        (p_function_id               => p_function_id
281        ,p_sequence_number           => p_sequence_number
282        ,p_object_version_number     => p_object_version_number
283        );
284   exception
285     when hr_api.cannot_find_prog_unit then
286       hr_api.cannot_find_prog_unit_error
287         (p_module_name => 'DELETE_CONTEXT'
288         ,p_hook_type   => 'BP'
289         );
290   end;
291   --
292   -- Validation in addition to Row Handlers
293   --
294 
295 
296 
297   --
298   -- Process Logic
299   --
300   ff_fcu_del.del
301      (p_function_id               => p_function_id
302      ,p_sequence_number           => p_sequence_number
303      ,p_object_version_number     => p_object_version_number
304      );
305 
306 
307   --
308   -- Call After Process User Hook
309   --
310   begin
311     FF_FUNCTION_CONTEXT_USG_BK3.DELETE_CONTEXT_a
312        (p_function_id               => p_function_id
313        ,p_sequence_number           => p_sequence_number
314        ,p_object_version_number     => p_object_version_number
315        );
316   exception
317     when hr_api.cannot_find_prog_unit then
318       hr_api.cannot_find_prog_unit_error
319         (p_module_name => 'DELETE_CONTEXT'
320         ,p_hook_type   => 'AP'
321         );
322   end;
323   --
324   -- When in validation only mode raise the Validate_Enabled exception
325   --
326   if p_validate then
327     raise hr_api.validate_enabled;
328   end if;
329   --
330   -- Set all IN OUT and OUT parameters with out values
331   --
332   --
333   hr_utility.set_location(' Leaving:'||l_proc, 70);
334 exception
335   when hr_api.validate_enabled then
336     --
337     -- As the Validate_Enabled exception has been raised
338     -- we must rollback to the savepoint
339     --
340     rollback to DELETE_CONTEXT;
341     --
342     -- Reset IN OUT parameters and set OUT parameters
343     -- (Any key or derived arguments must be set to null
344     -- when validation only mode is being used.)
345     --
346     hr_utility.set_location(' Leaving:'||l_proc, 80);
347   when others then
348     --
349     -- A validation or unexpected error has occured
350     --
351     rollback to DELETE_CONTEXT;
352     --
353     -- Reset IN OUT parameters and set all
354     -- OUT parameters, including warnings, to null
355     --
356     hr_utility.set_location(' Leaving:'||l_proc, 90);
357     raise;
358 end DELETE_CONTEXT;
359 --
360 
361 end FF_FUNCTION_CONTEXT_USG_API;