[Home] [Help]
PACKAGE BODY: APPS.GMD_OPERATION_ACTIVITIES_PVT
Source
1 PACKAGE BODY GMD_OPERATION_ACTIVITIES_PVT AS
2 /* $Header: GMDVOPAB.pls 120.0 2005/05/25 19:18:18 appldev noship $
3 +=========================================================================+
4 | FILENAME |
5 | GMDVOPAB.pls |
6 | |
7 | DESCRIPTION |
8 | This package contains private definitions for |
9 | creating and modifying operation activities |
10 | |
11 | HISTORY |
12 | 22-SEPT-2002 Sandra Dulyk Created |
13 | 27-DEC-2002 S.Dulyk Bug 2669986 Added break_ind and max_break cols |
14 | 20-FEB-2004 NSRIVAST Bug# 3222090,Removed call to |
15 | FND_PROFILE.VALUE('AFLOG_ENABLED') |
16 +=========================================================================+
17 API Name : GMD_OPERATION_ACTIVITIES_PVT
18 Type : Private
19 Function : This package contains private procedures used to create, modify, and delete operation activties
20 Pre-reqs : N/A
21 Parameters: Per function
22
23 Current Vers : 1.0
24
25 Previous Vers : 1.0
26
27 Initial Vers : 1.0
28 Notes
29 */
30
31 --Bug 3222090, NSRIVAST 20-FEB-2004, BEGIN
32 --Forward declaration.
33 FUNCTION set_debug_flag RETURN VARCHAR2;
34 l_debug VARCHAR2(1) := set_debug_flag;
35
36 FUNCTION set_debug_flag RETURN VARCHAR2 IS
37 l_debug VARCHAR2(1):= 'N';
38 BEGIN
39 IF( FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN
40 l_debug := 'Y';
41 END IF;
42 RETURN l_debug;
43 END set_debug_flag;
44 --Bug 3222090, NSRIVAST 20-FEB-2004, END
45
46
47 /*===========================================================================================
48 Procedure
49 insert_operation_activity
50 Description
51 This particular procedure is used to insert an operation activity
52 Parameters
53 ================================================ */
54 PROCEDURE insert_operation_activity
55 ( p_oprn_id IN gmd_operations.oprn_id%TYPE
56 , p_oprn_activity IN gmd_operation_activities%ROWTYPE
57 , x_message_count OUT NOCOPY NUMBER
58 , x_message_list OUT NOCOPY VARCHAR2
59 , x_return_status OUT NOCOPY VARCHAR2) IS
60
61 v_activity gmd_operation_activities.activity%TYPE;
62 v_oprn_line_id gmd_operation_activities.oprn_line_id%TYPE;
63 l_errmsg VARCHAR2(240);
64 setup_failure EXCEPTION;
65 l_mesg_count NUMBER;
66 l_mesg_list NUMBER;
67 l_retn_status VARCHAR2(30);
68
69 BEGIN
70 IF (l_debug = 'Y') THEN
71 gmd_debug.put_line('In insert_operation_activity private.');
72 END IF;
73
74 /* Initially let us assign the return status to success */
75 x_return_status := FND_API.g_ret_sts_success;
76
77 /* get values for row who cols */
78 IF NOT gmd_api_grp.setup_done THEN
79 gmd_api_grp.setup_done := gmd_api_grp.setup;
80 END IF;
81 IF NOT gmd_api_grp.setup_done THEN
82 RAISE setup_failure;
83 END IF;
84
85 /* insert operation activities */
86 IF (l_debug = 'Y') THEN
87 gmd_debug.put_line('Begin Loop - in insert_operation_activity loop (private). '||
88 ' Curr Activity is ' || p_oprn_activity.activity);
89 END IF;
90
91 insert into GMD_OPERATION_ACTIVITIES (
92 OPRN_LINE_ID,
93 OPRN_ID,
94 ACTIVITY ,
95 OFFSET_INTERVAL,
96 ACTIVITY_FACTOR,
97 DELETE_MARK ,
98 SEQUENCE_DEPENDENT_IND,
99 BREAK_IND,
100 MAX_BREAK,
101 MATERIAL_IND,
102 ATTRIBUTE1,
103 ATTRIBUTE2,
104 ATTRIBUTE3,
105 ATTRIBUTE4,
106 ATTRIBUTE5,
107 ATTRIBUTE6,
108 ATTRIBUTE7,
109 ATTRIBUTE8,
110 ATTRIBUTE9,
111 ATTRIBUTE10,
112 ATTRIBUTE11,
113 ATTRIBUTE12,
114 ATTRIBUTE13,
115 ATTRIBUTE14,
116 ATTRIBUTE15,
117 ATTRIBUTE16,
118 ATTRIBUTE17,
119 ATTRIBUTE18,
120 ATTRIBUTE19,
121 ATTRIBUTE20,
122 ATTRIBUTE21,
123 ATTRIBUTE30,
124 ATTRIBUTE_CATEGORY,
125 ATTRIBUTE25,
126 ATTRIBUTE26,
127 ATTRIBUTE27,
128 ATTRIBUTE28,
129 ATTRIBUTE29,
130 ATTRIBUTE22,
131 ATTRIBUTE23,
132 ATTRIBUTE24,
133 CREATION_DATE,
134 CREATED_BY,
135 LAST_UPDATE_DATE,
136 LAST_UPDATED_BY,
137 LAST_UPDATE_LOGIN )
138 values (
139 p_oprn_activity.OPRN_LINE_ID,
140 NVL(p_oprn_id, p_oprn_activity.OPRN_ID),
141 p_oprn_activity.ACTIVITY ,
142 p_oprn_activity.OFFSET_INTERVAL,
143 p_oprn_activity.ACTIVITY_FACTOR,
144 0 ,
145 p_oprn_activity.SEQUENCE_DEPENDENT_IND,
146 p_oprn_activity.break_ind,
147 p_oprn_activity.max_break,
148 p_oprn_activity.material_ind,
149 p_oprn_activity.ATTRIBUTE1,
150 p_oprn_activity.ATTRIBUTE2,
151 p_oprn_activity.ATTRIBUTE3,
152 p_oprn_activity.ATTRIBUTE4,
153 p_oprn_activity.ATTRIBUTE5,
154 p_oprn_activity.ATTRIBUTE6,
155 p_oprn_activity.ATTRIBUTE7,
156 p_oprn_activity.ATTRIBUTE8,
157 p_oprn_activity.ATTRIBUTE9,
158 p_oprn_activity.ATTRIBUTE10,
159 p_oprn_activity.ATTRIBUTE11,
160 p_oprn_activity.ATTRIBUTE12,
161 p_oprn_activity.ATTRIBUTE13,
162 p_oprn_activity.ATTRIBUTE14,
163 p_oprn_activity.ATTRIBUTE15,
164 p_oprn_activity.ATTRIBUTE16,
165 p_oprn_activity.ATTRIBUTE17,
166 p_oprn_activity.ATTRIBUTE18,
167 p_oprn_activity.ATTRIBUTE19,
168 p_oprn_activity.ATTRIBUTE20,
169 p_oprn_activity.ATTRIBUTE21,
170 p_oprn_activity.ATTRIBUTE30,
171 p_oprn_activity.ATTRIBUTE_CATEGORY,
172 p_oprn_activity.ATTRIBUTE25,
173 p_oprn_activity.ATTRIBUTE26,
174 p_oprn_activity.ATTRIBUTE27,
175 p_oprn_activity.ATTRIBUTE28,
176 p_oprn_activity.ATTRIBUTE29,
177 p_oprn_activity.ATTRIBUTE22,
178 p_oprn_activity.ATTRIBUTE23,
179 p_oprn_activity.ATTRIBUTE24,
180 sysdate,
181 gmd_api_grp.user_id,
182 sysdate,
183 gmd_api_grp.user_id,
184 gmd_api_grp.user_id);
185
186 IF (l_debug = 'Y') THEN
187 gmd_debug.put_line('End insert_operation_activity private');
188 END IF;
189
190 EXCEPTION
191 WHEN setup_failure THEN
192 x_return_status := FND_API.G_RET_STS_ERROR;
193
194 WHEN OTHERS THEN
195 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
196 FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
197 FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
198 FND_MSG_PUB.ADD;
199 FND_MSG_PUB.COUNT_AND_GET (P_count => x_message_count,
200 P_data => x_message_list);
201 END insert_operation_activity;
202
203 /*===============================================
204 Procedure
205 update_operation_activity
206 Description
207 This particular procedure is used to update an
208 operation activity Parameters
209 ================================================ */
210 PROCEDURE update_operation_activity
211 ( p_oprn_line_id IN gmd_operation_activities.oprn_line_id%TYPE
212 , p_update_table IN gmd_operation_activities_pub.update_tbl_type
213 , x_message_count OUT NOCOPY NUMBER
214 , x_message_list OUT NOCOPY VARCHAR2
215 , x_return_status OUT NOCOPY VARCHAR2) IS
216
217 CURSOR retrieve_oprn_actv( p_oprn_line_id gmd_operation_activities.oprn_line_id%TYPE ) IS
218 SELECT *
219 FROM gmd_operation_activities
220 WHERE oprn_line_Id = p_oprn_line_id;
221
222 v_oprn_actv_update_rec gmd_operation_activities%ROWTYPE;
223 l_errmsg VARCHAR2(240);
224 setup_failure EXCEPTION;
225 BEGIN
226 IF (l_debug = 'Y') THEN
227 gmd_debug.put_line(' In update_operation_activity private');
228 END IF;
229
230 /* Initially let us assign the return status to success */
231 x_return_status := FND_API.g_ret_sts_success;
232
233 OPEN retrieve_oprn_actv(p_oprn_line_id);
234 FETCH retrieve_oprn_actv INTO v_oprn_actv_update_rec;
235 CLOSE retrieve_oprn_actv;
236
237 FOR i IN 1 .. p_update_table.count LOOP
238 IF (l_debug = 'Y') THEN
239 gmd_debug.put_line('Begin Loop - in update_operation_activity loop (private). '||
240 'Col to update is ' || p_update_table(i).p_col_to_update);
241 END IF;
242
243 IF UPPER(p_update_table(i).p_col_to_update) = 'OFFSET_INTERVAL' THEN
244 v_oprn_actv_update_rec.offset_interval := p_update_table(i).p_value;
245 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ACTIVITY_FACTOR' THEN
246 v_oprn_actv_update_rec.activity_factor := p_update_table(i).p_value;
247 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ACTIVITY' THEN
248 v_oprn_actv_update_rec.activity := p_update_table(i).p_value;
249 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'SEQUENCE_DEPENDENT_IND' THEN
250 v_oprn_actv_update_rec.sequence_dependent_ind := p_update_table(i).p_value;
251 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'BREAK_IND' THEN
252 v_oprn_actv_update_rec.break_ind := p_update_table(i).p_value;
253 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'MAX_BREAK' THEN
254 v_oprn_actv_update_rec.max_break := p_update_table(i).p_value;
255 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'MATERIAL_IND' THEN
256 v_oprn_actv_update_rec.material_ind := p_update_table(i).p_value;
257 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'DELETE_MARK' THEN
258 v_oprn_actv_update_rec.delete_mark := p_update_table(i).p_value;
259 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE1' THEN
260 v_oprn_actv_update_rec.attribute1 := p_update_table(i).p_value;
261 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE2' THEN
262 v_oprn_actv_update_rec.attribute2 := p_update_table(i).p_value;
263 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE3' THEN
264 v_oprn_actv_update_rec.attribute3 := p_update_table(i).p_value;
265 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE4' THEN
266 v_oprn_actv_update_rec.attribute4 := p_update_table(i).p_value;
267 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE5' THEN
268 v_oprn_actv_update_rec.attribute5 := p_update_table(i).p_value;
269 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE6' THEN
270 v_oprn_actv_update_rec.attribute6 := p_update_table(i).p_value;
271 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE7' THEN
272 v_oprn_actv_update_rec.attribute7 := p_update_table(i).p_value;
273 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE8' THEN
274 v_oprn_actv_update_rec.attribute8 := p_update_table(i).p_value;
275 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE9' THEN
276 v_oprn_actv_update_rec.attribute9 := p_update_table(i).p_value;
277 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE10' THEN
278 v_oprn_actv_update_rec.attribute10 := p_update_table(i).p_value;
279 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE11' THEN
280 v_oprn_actv_update_rec.attribute11 := p_update_table(i).p_value;
281 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE12' THEN
282 v_oprn_actv_update_rec.attribute12 := p_update_table(i).p_value;
283 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE13' THEN
284 v_oprn_actv_update_rec.attribute13 := p_update_table(i).p_value;
285 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE14' THEN
286 v_oprn_actv_update_rec.attribute14 := p_update_table(i).p_value;
287 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE15' THEN
288 v_oprn_actv_update_rec.attribute15 := p_update_table(i).p_value;
289 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE16' THEN
290 v_oprn_actv_update_rec.attribute16 := p_update_table(i).p_value;
291 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE17' THEN
292 v_oprn_actv_update_rec.attribute17 := p_update_table(i).p_value;
293 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE18' THEN
294 v_oprn_actv_update_rec.attribute18 := p_update_table(i).p_value;
295 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE19' THEN
296 v_oprn_actv_update_rec.attribute19 := p_update_table(i).p_value;
297 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE20' THEN
298 v_oprn_actv_update_rec.attribute20 := p_update_table(i).p_value;
299 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE21' THEN
300 v_oprn_actv_update_rec.attribute21 := p_update_table(i).p_value;
301 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE22' THEN
302 v_oprn_actv_update_rec.attribute22 := p_update_table(i).p_value;
303 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE23' THEN
304 v_oprn_actv_update_rec.attribute23 := p_update_table(i).p_value;
305 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE24' THEN
306 v_oprn_actv_update_rec.attribute24 := p_update_table(i).p_value;
307 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE25' THEN
308 v_oprn_actv_update_rec.attribute25 := p_update_table(i).p_value;
309 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE26' THEN
310 v_oprn_actv_update_rec.attribute26 := p_update_table(i).p_value;
311 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE27' THEN
312 v_oprn_actv_update_rec.attribute27 := p_update_table(i).p_value;
313 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE28' THEN
314 v_oprn_actv_update_rec.attribute28 := p_update_table(i).p_value;
315 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE29' THEN
316 v_oprn_actv_update_rec.attribute29 := p_update_table(i).p_value;
317 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE30' THEN
318 v_oprn_actv_update_rec.attribute30 := p_update_table(i).p_value;
319 ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE_CATEGORY' THEN
320 v_oprn_actv_update_rec.attribute_category := p_update_table(i).p_value;
321 END IF;
322
323
324 IF (l_debug = 'Y') THEN
325 gmd_debug.put_line('Update_operation_activity private - after set cols for activities tbl. Col to update is ' || p_update_table(i).p_col_to_update);
326 END IF;
327
328 END LOOP;
329
330 IF x_return_status = 'S' THEN
331 /* Set row who columns */
332 IF NOT gmd_api_grp.setup_done THEN
333 gmd_api_grp.setup_done := gmd_api_grp.setup;
334 END IF;
335 IF NOT gmd_api_grp.setup_done THEN
336 RAISE setup_failure;
337 END IF;
338
339 IF (l_debug = 'Y') THEN
340 gmd_debug.put_line('before update table - update_operation_activity private');
341 END IF;
342
343 update GMD_OPERATION_ACTIVITIES
344 set ACTIVITY = v_oprn_actv_update_rec.activity,
345 OFFSET_INTERVAL = v_oprn_actv_update_rec.offset_interval,
346 ACTIVITY_FACTOR = v_oprn_actv_update_rec.activity_factor,
347 DELETE_MARK = v_oprn_actv_update_rec.delete_mark,
348 SEQUENCE_DEPENDENT_IND = v_oprn_actv_update_rec.sequence_dependent_ind,
349 BREAK_IND = v_oprn_actv_update_rec.break_ind,
350 MAX_BREAK = v_oprn_actv_update_rec.max_break,
351 MATERIAL_IND = v_oprn_actv_update_rec.material_ind,
352 ATTRIBUTE1 = v_oprn_actv_update_rec.attribute1,
353 ATTRIBUTE2 = v_oprn_actv_update_rec.attribute2,
354 ATTRIBUTE3 = v_oprn_actv_update_rec.attribute3,
355 ATTRIBUTE4 = v_oprn_actv_update_rec.attribute4,
356 ATTRIBUTE5 = v_oprn_actv_update_rec.attribute5,
357 ATTRIBUTE6 = v_oprn_actv_update_rec.attribute6,
358 ATTRIBUTE7 = v_oprn_actv_update_rec.attribute7,
359 ATTRIBUTE8 = v_oprn_actv_update_rec.attribute8,
360 ATTRIBUTE9 = v_oprn_actv_update_rec.attribute9,
361 ATTRIBUTE10 = v_oprn_actv_update_rec.attribute10,
362 ATTRIBUTE11 = v_oprn_actv_update_rec.attribute11,
363 ATTRIBUTE12 = v_oprn_actv_update_rec.attribute12,
364 ATTRIBUTE13 = v_oprn_actv_update_rec.attribute13,
365 ATTRIBUTE14 = v_oprn_actv_update_rec.attribute14,
366 ATTRIBUTE15 = v_oprn_actv_update_rec.attribute15,
367 ATTRIBUTE16 = v_oprn_actv_update_rec.attribute16,
368 ATTRIBUTE17 = v_oprn_actv_update_rec.attribute17,
369 ATTRIBUTE18 = v_oprn_actv_update_rec.attribute18,
370 ATTRIBUTE19 = v_oprn_actv_update_rec.attribute19,
371 ATTRIBUTE20 = v_oprn_actv_update_rec.attribute20,
372 ATTRIBUTE21 = v_oprn_actv_update_rec.attribute21,
373 ATTRIBUTE30 = v_oprn_actv_update_rec.attribute30,
374 ATTRIBUTE_CATEGORY = v_oprn_actv_update_rec.attribute_category,
375 ATTRIBUTE25 = v_oprn_actv_update_rec.attribute25,
376 ATTRIBUTE26 = v_oprn_actv_update_rec.attribute26,
377 ATTRIBUTE27 = v_oprn_actv_update_rec.attribute27,
378 ATTRIBUTE28 = v_oprn_actv_update_rec.attribute28,
379 ATTRIBUTE29 = v_oprn_actv_update_rec.attribute29,
380 ATTRIBUTE22 = v_oprn_actv_update_rec.attribute22,
381 ATTRIBUTE23 = v_oprn_actv_update_rec.attribute23,
382 ATTRIBUTE24 = v_oprn_actv_update_rec.attribute24,
383 LAST_UPDATE_DATE = sysdate,
384 LAST_UPDATED_BY = gmd_api_grp.user_id,
385 LAST_UPDATE_LOGIN = gmd_api_grp.user_id
386 where oprn_line_id = p_oprn_line_id;
387 END IF;
388
389 IF (l_debug = 'Y') THEN
390 gmd_debug.put_line('END of update_operation_activity private');
391 END IF;
392
393 EXCEPTION
394 WHEN setup_failure THEN
395 x_return_status := FND_API.G_RET_STS_ERROR;
396
397 WHEN OTHERS THEN
398 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
399 FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
400 FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
401 FND_MSG_PUB.ADD;
402 FND_MSG_PUB.COUNT_AND_GET (P_count => x_message_count,
403 P_data => x_message_list);
404
405 END update_operation_activity;
406
407 /*===========================================================================================
408 Procedure
409 delete_operation_activity
410 Description
411 This particular procedure is used to delete an operation activity
412 Parameters
413 ================================================ */
414 PROCEDURE delete_operation_activity
415 ( p_oprn_line_id IN gmd_operation_activities.oprn_line_id%TYPE
416 , x_message_count OUT NOCOPY NUMBER
417 , x_message_list OUT NOCOPY VARCHAR2
418 , x_return_status OUT NOCOPY VARCHAR2) IS
419
420 setup_failure EXCEPTION;
421 l_errmsg VARCHAR2(240);
422
423 BEGIN
424 /* begin delete operation activity PVT*/
425 DELETE from GMD_OPERATION_ACTIVITIES
426 WHERE oprn_line_id = p_oprn_line_id;
427
428 /* delete associated operation resources */
429 DELETE from GMD_OPERATION_RESOURCES
430 WHERE oprn_line_id = p_oprn_line_id;
431
432 IF (l_debug = 'Y') THEN
433 gmd_debug.put_line('END of delete_operation_activity PVT');
434 END IF;
435
436
437 EXCEPTION
438 WHEN setup_failure THEN
439 x_return_status := FND_API.G_RET_STS_ERROR;
440
441 WHEN OTHERS THEN
442 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
443 FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
444 FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
445 FND_MSG_PUB.ADD;
446 FND_MSG_PUB.COUNT_AND_GET (P_count => x_message_count,
447 P_data => x_message_list);
448
449 l_errmsg := sqlerrm;
450
451
452 END delete_operation_activity;
453
454 END GMD_OPERATION_ACTIVITIES_PVT;