DBA Data[Home] [Help]

PACKAGE BODY: APPS.PA_GANTT_CONFIG_PVT

Source


1 PACKAGE BODY PA_GANTT_CONFIG_PVT AS
2 /* $Header: PAGCGCVB.pls 120.1 2005/08/19 16:33:01 mwasowic noship $ */
3 
4 g_module_name      VARCHAR2(100) := 'pa.plsql.PA_GANTT_CONFIG_PVT';
5 Invalid_Arg_Exc_GC Exception;
6 
7 
8 procedure CREATE_GANTT_CONFIG (
9   P_COMMIT                    in VARCHAR2,
10   P_CALLING_MODULE            in VARCHAR2,
11   P_GANTT_VIEW_ID             in PA_GANTT_CONFIG_B.gantt_view_id%TYPE,
12   P_GANTT_CONFIG_USAGE        in PA_GANTT_CONFIG_B.gantt_config_usage%TYPE,
13   P_FILTER_CODE               in PA_GANTT_CONFIG_B.filter_code%TYPE,
14   P_TIME_SCALE_CODE           in PA_GANTT_CONFIG_B.time_scale_code%TYPE,
15   P_EXPAND_COLLAPSE_FLAG      in PA_GANTT_CONFIG_B.expand_collapse_flag%TYPE,
16   P_NUMBER_OF_DISPLAYED_ROWS  in PA_GANTT_CONFIG_B.number_of_displayed_rows%TYPE,
17   P_SHOW_ADDITIONAL_COL_FLAG  in PA_GANTT_CONFIG_B.show_additional_col_flag%TYPE,
18   P_FOCUS_ENABLED_FLAG        in PA_GANTT_CONFIG_B.focus_enabled_flag%TYPE,
19   P_SHOW_HEADER_UI_FLAG       in PA_GANTT_CONFIG_B.show_header_ui_flag%TYPE,
20   P_NAME                      in PA_GANTT_CONFIG_TL.name%TYPE,
21   P_DESCRIPTION               in PA_GANTT_CONFIG_TL.description%TYPE,
22   PX_GANTT_CONFIG_ID          in OUT NOCOPY PA_GANTT_CONFIG_B.gantt_config_id%TYPE, --File.Sql.39 bug 4440895
23   X_RETURN_STATUS             OUT NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
24   X_MSG_COUNT                 OUT NOCOPY NUMBER, --File.Sql.39 bug 4440895
25   X_MSG_DATA                  OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
26 )
27 AS
28 
29 l_msg_count                     NUMBER := 0;
30 l_data                          VARCHAR2(2000);
31 l_msg_data                      VARCHAR2(2000);
32 l_msg_index_out                 NUMBER;
33 l_debug_mode                    VARCHAR2(1);
34 
35 l_debug_level2                   CONSTANT NUMBER := 2;
36 l_debug_level3                   CONSTANT NUMBER := 3;
37 l_debug_level4                   CONSTANT NUMBER := 4;
38 l_debug_level5                   CONSTANT NUMBER := 5;
39 
40 l_rowid                         ROWID;
41 
42 BEGIN
43      IF p_commit = 'Y' THEN
44           savepoint create_gantt_config;
45      END IF;
46 
47      x_msg_count := 0;
48      x_return_status := FND_API.G_RET_STS_SUCCESS;
49      l_debug_mode  := NVL(FND_PROFILE.value('PA_DEBUG_MODE'),'N');
50 
51      IF l_debug_mode = 'Y' THEN
52           pa_debug.set_curr_function( p_function   => 'CREATE_GANTT_CONFIG',
53                                       p_debug_mode => l_debug_mode );
54      END IF;
55 
56      PA_GANTT_CONFIG_PKG.INSERT_ROW (
57            X_ROWID                         =>  l_rowid
58           ,X_GANTT_CONFIG_ID               =>  PX_GANTT_CONFIG_ID
59           ,X_GANTT_VIEW_ID                 =>  P_GANTT_VIEW_ID
60           ,X_GANTT_CONFIG_USAGE            =>  P_GANTT_CONFIG_USAGE
61           ,X_FILTER_CODE                   =>  P_FILTER_CODE
62           ,X_TIME_SCALE_CODE               =>  P_TIME_SCALE_CODE
63           ,X_EXPAND_COLLAPSE_FLAG          =>  P_EXPAND_COLLAPSE_FLAG
64           ,X_NUMBER_OF_DISPLAYED_ROWS      =>  P_NUMBER_OF_DISPLAYED_ROWS
65           ,X_SHOW_ADDITIONAL_COL_FLAG      =>  P_SHOW_ADDITIONAL_COL_FLAG
66           ,X_FOCUS_ENABLED_FLAG            =>  P_FOCUS_ENABLED_FLAG
67           ,X_SHOW_HEADER_UI_FLAG           =>  P_SHOW_HEADER_UI_FLAG
68           ,X_RECORD_VERSION_NUMBER         =>  1
69           ,X_ATTRIBUTE_CATEGORY            =>  NULL
70           ,X_ATTRIBUTE1                    =>  NULL
71           ,X_ATTRIBUTE2                    =>  NULL
72           ,X_ATTRIBUTE3                    =>  NULL
73           ,X_ATTRIBUTE4                    =>  NULL
74           ,X_ATTRIBUTE5                    =>  NULL
75           ,X_ATTRIBUTE6                    =>  NULL
76           ,X_ATTRIBUTE7                    =>  NULL
77           ,X_ATTRIBUTE8                    =>  NULL
78           ,X_ATTRIBUTE9                    =>  NULL
79           ,X_ATTRIBUTE10                   =>  NULL
80           ,X_ATTRIBUTE11                   =>  NULL
81           ,X_ATTRIBUTE12                   =>  NULL
82           ,X_ATTRIBUTE13                   =>  NULL
83           ,X_ATTRIBUTE14                   =>  NULL
84           ,X_ATTRIBUTE15                   =>  NULL
85           ,X_NAME                          =>  P_NAME
86           ,X_DESCRIPTION                   =>  P_DESCRIPTION
87           ,X_CREATION_DATE                 =>  sysdate
88           ,X_CREATED_BY                    =>  fnd_global.user_id
89           ,X_LAST_UPDATE_DATE              =>  sysdate
90           ,X_LAST_UPDATED_BY               =>  fnd_global.user_id
91           ,X_LAST_UPDATE_LOGIN             =>  fnd_global.login_id
92      );
93 
94 
95      IF l_debug_mode = 'Y' THEN
96           pa_debug.g_err_stage:= 'Exiting CREATE_GANTT_CONFIG';
97           pa_debug.write(g_module_name,pa_debug.g_err_stage,
98                                    l_debug_level3);
99           pa_debug.reset_curr_function;
100      END IF;
101 EXCEPTION
102 
103 WHEN Invalid_Arg_Exc_GC THEN
104 
105      x_return_status := FND_API.G_RET_STS_ERROR;
106      l_msg_count := FND_MSG_PUB.count_msg;
107 
108      IF l_msg_count = 1 and x_msg_data IS NULL THEN
109           PA_INTERFACE_UTILS_PUB.get_messages
110               (p_encoded        => FND_API.G_TRUE
111               ,p_msg_index      => 1
112               ,p_msg_count      => l_msg_count
113               ,p_msg_data       => l_msg_data
114               ,p_data           => l_data
115               ,p_msg_index_out  => l_msg_index_out);
116           x_msg_data := l_data;
117           x_msg_count := l_msg_count;
118      ELSE
119           x_msg_count := l_msg_count;
120      END IF;
121      IF l_debug_mode = 'Y' THEN
122           pa_debug.reset_curr_function;
123      END IF;
124 
125      IF p_commit = 'Y' THEN
126           rollback to create_gantt_config;
127      END IF;
128 
129      RETURN;
130 
131 WHEN others THEN
132 
133      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
134      x_msg_count     := 1;
135      x_msg_data      := SQLERRM;
136 
137      FND_MSG_PUB.add_exc_msg
138                    ( p_pkg_name        => 'PA_GANTT_CONFIG_PVT'
139                     ,p_procedure_name  => 'CREATE_GANTT_CONFIG'
140                     ,p_error_text      => x_msg_data);
141 
142      IF l_debug_mode = 'Y' THEN
143           pa_debug.g_err_stage:= 'Unexpected Error'||x_msg_data;
144           pa_debug.write(g_module_name,pa_debug.g_err_stage,
145                               l_debug_level5);
146           pa_debug.reset_curr_function;
147      END IF;
148 
149      IF p_commit = 'Y' THEN
150           rollback to create_gantt_config;
151      END IF;
152 
153      RAISE;
154 END CREATE_GANTT_CONFIG;
155 
156 
157 procedure UPDATE_GANTT_CONFIG (
158   P_COMMIT                    in VARCHAR2 ,
159   P_CALLING_MODULE            in VARCHAR2 ,
160   P_GANTT_CONFIG_ID           in PA_GANTT_CONFIG_B.gantt_config_id%TYPE,
161   P_GANTT_VIEW_ID             in PA_GANTT_CONFIG_B.gantt_view_id%TYPE,
162   P_GANTT_CONFIG_USAGE        in PA_GANTT_CONFIG_B.gantt_config_usage%TYPE,
163   P_FILTER_CODE               in PA_GANTT_CONFIG_B.filter_code%TYPE,
164   P_TIME_SCALE_CODE           in PA_GANTT_CONFIG_B.time_scale_code%TYPE,
165   P_EXPAND_COLLAPSE_FLAG      in PA_GANTT_CONFIG_B.expand_collapse_flag%TYPE,
166   P_NUMBER_OF_DISPLAYED_ROWS  in PA_GANTT_CONFIG_B.number_of_displayed_rows%TYPE,
167   P_SHOW_ADDITIONAL_COL_FLAG  in PA_GANTT_CONFIG_B.show_additional_col_flag%TYPE,
168   P_FOCUS_ENABLED_FLAG        in PA_GANTT_CONFIG_B.focus_enabled_flag%TYPE,
169   P_SHOW_HEADER_UI_FLAG       in PA_GANTT_CONFIG_B.show_header_ui_flag%TYPE,
170   P_RECORD_VERSION_NUMBER     in PA_GANTT_CONFIG_B.RECORD_VERSION_NUMBER%TYPE,
171   P_NAME                      in PA_GANTT_CONFIG_TL.name%TYPE,
172   P_DESCRIPTION               in PA_GANTT_CONFIG_TL.description%TYPE,
173   X_RETURN_STATUS             OUT NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
174   X_MSG_COUNT                 OUT NOCOPY NUMBER, --File.Sql.39 bug 4440895
175   X_MSG_DATA                  OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
176 )
177 AS
178 
179 l_msg_count                     NUMBER := 0;
180 l_data                          VARCHAR2(2000);
181 l_msg_data                      VARCHAR2(2000);
182 l_msg_index_out                 NUMBER;
183 l_debug_mode                    VARCHAR2(1);
184 
185 l_debug_level2                   CONSTANT NUMBER := 2;
186 l_debug_level3                   CONSTANT NUMBER := 3;
187 l_debug_level4                   CONSTANT NUMBER := 4;
188 l_debug_level5                   CONSTANT NUMBER := 5;
189 
190 CURSOR cur_gantt_config_rvn(c_gantt_config_id pa_gantt_config_b.gantt_config_id%TYPE)
191 is
192    select record_version_number
193    from pa_gantt_config_b
194    where gantt_config_id = c_gantt_config_id;
195 
196 l_gantt_config_rvn  pa_gantt_config_b.record_version_number%TYPE;
197 
198 BEGIN
199      IF p_commit = 'Y' THEN
200           savepoint update_gantt_config;
201      END IF;
202 
203      x_msg_count := 0;
204      x_return_status := FND_API.G_RET_STS_SUCCESS;
205      l_debug_mode  := NVL(FND_PROFILE.value('PA_DEBUG_MODE'),'N');
206 
207      IF l_debug_mode = 'Y' THEN
208           pa_debug.set_curr_function( p_function   => 'UPDATE_GANTT_CONFIG',
209                                       p_debug_mode => l_debug_mode );
210      END IF;
211 
212      open  cur_gantt_config_rvn(p_gantt_config_id);
213      fetch cur_gantt_config_rvn into l_gantt_config_rvn;
214 
215      IF cur_gantt_config_rvn%NOTFOUND OR p_record_version_number <> l_gantt_config_rvn THEN
216           PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
217                                p_msg_name       => 'PA_XC_RECORD_CHANGED');
218           close cur_gantt_config_rvn;
219           RAISE Invalid_Arg_Exc_GC;
220      END IF;
221 
222      close cur_gantt_config_rvn;
223 
224      PA_GANTT_CONFIG_PKG.UPDATE_ROW (
225            X_GANTT_CONFIG_ID                 => P_GANTT_CONFIG_ID
226           ,X_GANTT_VIEW_ID                   => P_GANTT_VIEW_ID
227           ,X_GANTT_CONFIG_USAGE              => P_GANTT_CONFIG_USAGE
228           ,X_FILTER_CODE                     => P_FILTER_CODE
229           ,X_TIME_SCALE_CODE                 => P_TIME_SCALE_CODE
230           ,X_EXPAND_COLLAPSE_FLAG            => P_EXPAND_COLLAPSE_FLAG
231           ,X_NUMBER_OF_DISPLAYED_ROWS        => P_NUMBER_OF_DISPLAYED_ROWS
232           ,X_SHOW_ADDITIONAL_COL_FLAG        => P_SHOW_ADDITIONAL_COL_FLAG
233           ,X_FOCUS_ENABLED_FLAG              => P_FOCUS_ENABLED_FLAG
234           ,X_SHOW_HEADER_UI_FLAG             => P_SHOW_HEADER_UI_FLAG
235           ,X_RECORD_VERSION_NUMBER           => P_RECORD_VERSION_NUMBER
236           ,X_ATTRIBUTE_CATEGORY              => NULL
237           ,X_ATTRIBUTE1                      => NULL
238           ,X_ATTRIBUTE2                      => NULL
239           ,X_ATTRIBUTE3                      => NULL
240           ,X_ATTRIBUTE4                      => NULL
241           ,X_ATTRIBUTE5                      => NULL
242           ,X_ATTRIBUTE6                      => NULL
243           ,X_ATTRIBUTE7                      => NULL
244           ,X_ATTRIBUTE8                      => NULL
245           ,X_ATTRIBUTE9                      => NULL
246           ,X_ATTRIBUTE10                     => NULL
247           ,X_ATTRIBUTE11                     => NULL
248           ,X_ATTRIBUTE12                     => NULL
249           ,X_ATTRIBUTE13                     => NULL
250           ,X_ATTRIBUTE14                     => NULL
251           ,X_ATTRIBUTE15                     => NULL
252           ,X_NAME                            => P_NAME
253           ,X_DESCRIPTION                     => P_DESCRIPTION
254           ,X_LAST_UPDATE_DATE                => sysdate
255           ,X_LAST_UPDATED_BY                 => fnd_global.user_id
256           ,X_LAST_UPDATE_LOGIN               => fnd_global.login_id
257      );
258 
259 
260      IF l_debug_mode = 'Y' THEN
261           pa_debug.g_err_stage:= 'Exiting UPDATE_GANTT_CONFIG';
262           pa_debug.write(g_module_name,pa_debug.g_err_stage,
263                                    l_debug_level3);
264           pa_debug.reset_curr_function;
265      END IF;
266 EXCEPTION
267 
268 WHEN Invalid_Arg_Exc_GC THEN
269 
270      x_return_status := FND_API.G_RET_STS_ERROR;
271      l_msg_count := FND_MSG_PUB.count_msg;
272 
273      IF l_msg_count = 1 and x_msg_data IS NULL THEN
274           PA_INTERFACE_UTILS_PUB.get_messages
275               (p_encoded        => FND_API.G_TRUE
276               ,p_msg_index      => 1
277               ,p_msg_count      => l_msg_count
278               ,p_msg_data       => l_msg_data
279               ,p_data           => l_data
280               ,p_msg_index_out  => l_msg_index_out);
281           x_msg_data := l_data;
282           x_msg_count := l_msg_count;
283      ELSE
284           x_msg_count := l_msg_count;
285      END IF;
286      IF l_debug_mode = 'Y' THEN
287           pa_debug.reset_curr_function;
288      END IF;
289 
290      IF p_commit = 'Y' THEN
291           rollback to update_gantt_config;
292      END IF;
293 
294      RETURN;
295 
296 WHEN others THEN
297 
298      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
299      x_msg_count     := 1;
300      x_msg_data      := SQLERRM;
301 
302      FND_MSG_PUB.add_exc_msg
303                    ( p_pkg_name        => 'PA_GANTT_CONFIG_PVT'
304                     ,p_procedure_name  => 'UPDATE_GANTT_CONFIG'
305                     ,p_error_text      => x_msg_data);
306 
307      IF l_debug_mode = 'Y' THEN
308           pa_debug.g_err_stage:= 'Unexpected Error'||x_msg_data;
309           pa_debug.write(g_module_name,pa_debug.g_err_stage,
310                               l_debug_level5);
311           pa_debug.reset_curr_function;
312      END IF;
313 
314      IF p_commit = 'Y' THEN
315           rollback to update_gantt_config;
316      END IF;
317 
318      RAISE;
319 END UPDATE_GANTT_CONFIG;
320 
321 
322 procedure DELETE_GANTT_CONFIG (
323   P_COMMIT                    in VARCHAR2 ,
324   P_CALLING_MODULE            in VARCHAR2 ,
325   P_GANTT_CONFIG_ID           in PA_GANTT_CONFIG_B.gantt_config_id%TYPE,
326   P_RECORD_VERSION_NUMBER     in PA_GANTT_CONFIG_B.RECORD_VERSION_NUMBER%TYPE,
327   X_RETURN_STATUS             OUT NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
328   X_MSG_COUNT                 OUT NOCOPY NUMBER, --File.Sql.39 bug 4440895
329   X_MSG_DATA                  OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
330 )
331 AS
332 
333 l_msg_count                     NUMBER := 0;
334 l_data                          VARCHAR2(2000);
335 l_msg_data                      VARCHAR2(2000);
336 l_msg_index_out                 NUMBER;
337 l_debug_mode                    VARCHAR2(1);
338 
339 l_debug_level2                   CONSTANT NUMBER := 2;
340 l_debug_level3                   CONSTANT NUMBER := 3;
341 l_debug_level4                   CONSTANT NUMBER := 4;
342 l_debug_level5                   CONSTANT NUMBER := 5;
343 
344 CURSOR cur_gantt_config_rvn(c_gantt_config_id pa_gantt_config_b.gantt_config_id%TYPE)
345 is
346    select record_version_number
347    from pa_gantt_config_b
348    where gantt_config_id = c_gantt_config_id;
349 
350 l_gantt_config_rvn  pa_gantt_config_b.record_version_number%TYPE;
351 
352 BEGIN
353      IF p_commit = 'Y' THEN
354           savepoint delete_gantt_config;
355      END IF;
356 
357      x_msg_count := 0;
358      x_return_status := FND_API.G_RET_STS_SUCCESS;
359      l_debug_mode  := NVL(FND_PROFILE.value('PA_DEBUG_MODE'),'N');
360 
361      IF l_debug_mode = 'Y' THEN
362           pa_debug.set_curr_function( p_function   => 'DELETE_GANTT_CONFIG',
363                                       p_debug_mode => l_debug_mode );
364      END IF;
365 
366      open  cur_gantt_config_rvn(p_gantt_config_id);
367      fetch cur_gantt_config_rvn into l_gantt_config_rvn;
368 
369      IF cur_gantt_config_rvn%NOTFOUND OR p_record_version_number <> l_gantt_config_rvn THEN
370           PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
371                                p_msg_name       => 'PA_XC_RECORD_CHANGED');
372           close cur_gantt_config_rvn;
373           RAISE Invalid_Arg_Exc_GC;
374      END IF;
375 
376      close cur_gantt_config_rvn;
377 
378      PA_GANTT_CONFIG_PKG.DELETE_ROW(
379           X_GANTT_CONFIG_ID   =>   p_gantt_config_id
380      );
381 
382      IF l_debug_mode = 'Y' THEN
383           pa_debug.g_err_stage:= 'Exiting DELETE_GANTT_CONFIG';
384           pa_debug.write(g_module_name,pa_debug.g_err_stage,
385                                    l_debug_level3);
386           pa_debug.reset_curr_function;
387      END IF;
388 EXCEPTION
389 
390 WHEN Invalid_Arg_Exc_GC THEN
391 
392      x_return_status := FND_API.G_RET_STS_ERROR;
393      l_msg_count := FND_MSG_PUB.count_msg;
394 
395      IF l_msg_count = 1 and x_msg_data IS NULL THEN
396           PA_INTERFACE_UTILS_PUB.get_messages
397               (p_encoded        => FND_API.G_TRUE
398               ,p_msg_index      => 1
399               ,p_msg_count      => l_msg_count
400               ,p_msg_data       => l_msg_data
401               ,p_data           => l_data
402               ,p_msg_index_out  => l_msg_index_out);
403           x_msg_data := l_data;
404           x_msg_count := l_msg_count;
405      ELSE
406           x_msg_count := l_msg_count;
407      END IF;
408      IF l_debug_mode = 'Y' THEN
409           pa_debug.reset_curr_function;
410      END IF;
411 
412      IF p_commit = 'Y' THEN
413           rollback to delete_gantt_config;
414      END IF;
415 
416      RETURN;
417 
418 WHEN others THEN
419 
420      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
421      x_msg_count     := 1;
422      x_msg_data      := SQLERRM;
423 
424      FND_MSG_PUB.add_exc_msg
425                    ( p_pkg_name        => 'PA_GANTT_CONFIG_PVT'
426                     ,p_procedure_name  => 'DELETE_GANTT_CONFIG'
427                     ,p_error_text      => x_msg_data);
428 
429      IF l_debug_mode = 'Y' THEN
430           pa_debug.g_err_stage:= 'Unexpected Error'||x_msg_data;
431           pa_debug.write(g_module_name,pa_debug.g_err_stage,
432                               l_debug_level5);
433           pa_debug.reset_curr_function;
434      END IF;
435 
436      IF p_commit = 'Y' THEN
437           rollback to delete_gantt_config;
438      END IF;
439 
440      RAISE;
441 END DELETE_GANTT_CONFIG;
442 
443 END PA_GANTT_CONFIG_PVT;