1 PACKAGE BODY EAM_OP_DEFAULT_PVT AS
2 /* $Header: EAMVOPDB.pls 120.1.12020000.2 2012/10/22 10:06:17 vboddapa ship $ */
3 /***************************************************************************
4 --
5 -- Copyright (c) 2002 Oracle Corporation, Redwood Shores, CA, USA
6 -- All rights reserved.
7 --
8 -- FILENAME
9 --
10 -- EAMVOPDB.pls
11 --
12 -- DESCRIPTION
13 --
14 -- Spec of package EAM_OP_DEFAULT_PVT
15 --
16 -- NOTES
17 --
18 -- HISTORY
19 --
20 -- 30-JUN-2002 Kenichi Nagumo Initial Creation
21 ***************************************************************************/
22 G_PKG_NAME CONSTANT VARCHAR2(30) := 'EAM_OP_DEFAULT_PVT';
23
24
25 /********************************************************************
26 * Procedure : get_flex_eam_op
27 * Return : NUMBER
28 **********************************************************************/
29
30
31 PROCEDURE get_flex_eam_op
32 ( p_eam_op_rec IN EAM_PROCESS_WO_PUB.eam_op_rec_type
33 , x_eam_op_rec OUT NOCOPY EAM_PROCESS_WO_PUB.eam_op_rec_type
34 )
35 IS
36 BEGIN
37
38 -- In the future call Flex APIs for defaults
39 x_eam_op_rec := p_eam_op_rec;
40
41 IF p_eam_op_rec.attribute_category =FND_API.G_MISS_CHAR THEN
42 x_eam_op_rec.attribute_category := NULL;
43 END IF;
44
45 IF p_eam_op_rec.attribute1 = FND_API.G_MISS_CHAR THEN
46 x_eam_op_rec.attribute1 := NULL;
47 END IF;
48
49 IF p_eam_op_rec.attribute2 = FND_API.G_MISS_CHAR THEN
50 x_eam_op_rec.attribute2 := NULL;
51 END IF;
52
53 IF p_eam_op_rec.attribute3 = FND_API.G_MISS_CHAR THEN
54 x_eam_op_rec.attribute3 := NULL;
55 END IF;
56
57 IF p_eam_op_rec.attribute4 = FND_API.G_MISS_CHAR THEN
58 x_eam_op_rec.attribute4 := NULL;
59 END IF;
60
61 IF p_eam_op_rec.attribute5 = FND_API.G_MISS_CHAR THEN
62 x_eam_op_rec.attribute5 := NULL;
63 END IF;
64
65 IF p_eam_op_rec.attribute6 = FND_API.G_MISS_CHAR THEN
66 x_eam_op_rec.attribute6 := NULL;
67 END IF;
68
69 IF p_eam_op_rec.attribute7 = FND_API.G_MISS_CHAR THEN
70 x_eam_op_rec.attribute7 := NULL;
71 END IF;
72
73 IF p_eam_op_rec.attribute8 = FND_API.G_MISS_CHAR THEN
74 x_eam_op_rec.attribute8 := NULL;
75 END IF;
76
77 IF p_eam_op_rec.attribute9 = FND_API.G_MISS_CHAR THEN
78 x_eam_op_rec.attribute9 := NULL;
79 END IF;
80
81 IF p_eam_op_rec.attribute10 = FND_API.G_MISS_CHAR THEN
82 x_eam_op_rec.attribute10 := NULL;
83 END IF;
84
85 IF p_eam_op_rec.attribute11 = FND_API.G_MISS_CHAR THEN
86 x_eam_op_rec.attribute11 := NULL;
87 END IF;
88
89 IF p_eam_op_rec.attribute12 = FND_API.G_MISS_CHAR THEN
90 x_eam_op_rec.attribute12 := NULL;
91 END IF;
92
93 IF p_eam_op_rec.attribute13 = FND_API.G_MISS_CHAR THEN
94 x_eam_op_rec.attribute13 := NULL;
95 END IF;
96
97 IF p_eam_op_rec.attribute14 = FND_API.G_MISS_CHAR THEN
98 x_eam_op_rec.attribute14 := NULL;
99 END IF;
100
101 IF p_eam_op_rec.attribute15 = FND_API.G_MISS_CHAR THEN
102 x_eam_op_rec.attribute15 := NULL;
103 END IF;
104
105 END get_flex_eam_op;
106
107
108 /*********************************************************************
109 * Procedure : Attribute_Defaulting
110 * Parameters IN : Operation record
111 * Parameters OUT NOCOPY: Operation record after defaulting
112 * Mesg_Token_Table
113 * Return_Status
114 * Purpose : Attribute Defaulting will default the necessary null
115 * attribute with appropriate values.
116 **********************************************************************/
117
118 PROCEDURE Attribute_Defaulting
119 ( p_eam_op_rec IN EAM_PROCESS_WO_PUB.eam_op_rec_type
120 , x_eam_op_rec OUT NOCOPY EAM_PROCESS_WO_PUB.eam_op_rec_type
121 , x_mesg_token_tbl OUT NOCOPY EAM_ERROR_MESSAGE_PVT.Mesg_Token_Tbl_Type
122 , x_return_status OUT NOCOPY VARCHAR2
123 )
124 IS
125 l_eam_op_rec EAM_PROCESS_WO_PUB.eam_op_rec_type;
126 BEGIN
127
128 x_eam_op_rec := p_eam_op_rec;
129 -- x_eam_op_rec := p_eam_op_rec;
130 x_return_status := FND_API.G_RET_STS_SUCCESS;
131
132 IF p_eam_op_rec.count_point_type IS NULL OR
133 p_eam_op_rec.count_point_type = FND_API.G_MISS_NUM THEN
134 x_eam_op_rec.count_point_type := 1;
135 END IF;
136
137 IF p_eam_op_rec.backflush_flag IS NULL OR
138 p_eam_op_rec.backflush_flag = FND_API.G_MISS_NUM THEN
139 x_eam_op_rec.backflush_flag := 2;
140 END IF;
141
142 IF p_eam_op_rec.minimum_transfer_quantity IS NULL OR
143 p_eam_op_rec.minimum_transfer_quantity = FND_API.G_MISS_NUM THEN
144 x_eam_op_rec.minimum_transfer_quantity := 0;
145 END IF;
146
147 l_eam_op_rec := x_eam_op_rec;
148 get_flex_eam_op
149 ( p_eam_op_rec => x_eam_op_rec
150 , x_eam_op_rec => l_eam_op_rec
151 );
152 x_eam_op_rec := l_eam_op_rec;
153
154 EXCEPTION
155 WHEN OTHERS THEN
156 EAM_ERROR_MESSAGE_PVT.Add_Error_Token
157 ( p_message_name => NULL
158 , p_message_text => G_PKG_NAME || SQLERRM
159 , x_mesg_token_Tbl => x_mesg_token_tbl
160 );
161
162 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
163
164 END Attribute_Defaulting;
165
166
167 /******************************************************************
168 * Procedure : Populate_Null_Columns
169 * Parameters IN : Operation column record
170 * Old Operation Column Record
171 * Parameters OUT NOCOPY: Operation column record after populating
172 * Purpose : This procedure will look at the columns that the user
173 * has not filled in and will assign those columns a
174 * value from the old record.
175 * This procedure is not called for CREATE
176 ********************************************************************/
177 PROCEDURE Populate_Null_Columns
178 ( p_eam_op_rec IN EAM_PROCESS_WO_PUB.eam_op_rec_type
179 , p_old_eam_op_rec IN EAM_PROCESS_WO_PUB.eam_op_rec_type
180 , x_eam_op_rec OUT NOCOPY EAM_PROCESS_WO_PUB.eam_op_rec_type
181 )
182 IS
183 BEGIN
184 x_eam_op_rec := p_eam_op_rec;
185 x_eam_op_rec := p_eam_op_rec;
186
187 IF EAM_PROCESS_WO_PVT.Get_Debug = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Processing null columns prior update'); END IF;
188
189
190 IF p_eam_op_rec.operation_sequence_id IS NULL OR
191 p_eam_op_rec.operation_sequence_id = FND_API.G_MISS_NUM
192 THEN
193 x_eam_op_rec.operation_sequence_id := p_old_eam_op_rec.operation_sequence_id;
194 END IF;
195
196 IF p_eam_op_rec.standard_operation_id IS NULL OR
197 p_eam_op_rec.standard_operation_id = FND_API.G_MISS_NUM
198 THEN
199 x_eam_op_rec.standard_operation_id := p_old_eam_op_rec.standard_operation_id;
200 END IF;
201
202 IF p_eam_op_rec.department_id IS NULL OR
203 p_eam_op_rec.department_id = FND_API.G_MISS_NUM
204 THEN
205 x_eam_op_rec.department_id := p_old_eam_op_rec.department_id;
206 END IF;
207
208 -- commented for BUG#5997830 , Changed for bug 14706164
209 IF p_eam_op_rec.description IS NULL
210 THEN
211 x_eam_op_rec.description := p_old_eam_op_rec.description;
212 END IF;
213
214 IF p_eam_op_rec.description = FND_API.G_MISS_CHAR
215 THEN
216 x_eam_op_rec.description := NULL;
217 END IF;
218
219 IF p_eam_op_rec.start_date IS NULL OR
220 p_eam_op_rec.start_date = FND_API.G_MISS_DATE
221 THEN
222 x_eam_op_rec.start_date := p_old_eam_op_rec.start_date;
223 END IF;
224
225 IF p_eam_op_rec.completion_date IS NULL OR
226 p_eam_op_rec.completion_date = FND_API.G_MISS_DATE
227 THEN
228 x_eam_op_rec.completion_date := p_old_eam_op_rec.completion_date;
229 END IF;
230
231 IF p_eam_op_rec.count_point_type IS NULL OR
232 p_eam_op_rec.count_point_type = FND_API.G_MISS_NUM
233 THEN
234 x_eam_op_rec.count_point_type := p_old_eam_op_rec.count_point_type;
235 END IF;
236
237 IF p_eam_op_rec.backflush_flag IS NULL OR
238 p_eam_op_rec.backflush_flag = FND_API.G_MISS_NUM
239 THEN
240 x_eam_op_rec.backflush_flag := p_old_eam_op_rec.backflush_flag;
241 END IF;
242
243 IF p_eam_op_rec.minimum_transfer_quantity IS NULL OR
244 p_eam_op_rec.minimum_transfer_quantity = FND_API.G_MISS_NUM
245 THEN
246 x_eam_op_rec.minimum_transfer_quantity := p_old_eam_op_rec.minimum_transfer_quantity;
247 END IF;
248
249 -- commented for BUG#5997830 , Changed for bug 14706164
250 IF p_eam_op_rec.shutdown_type IS NULL
251 THEN
252 x_eam_op_rec.shutdown_type := p_old_eam_op_rec.shutdown_type;
253 END IF;
254
255 IF p_eam_op_rec.shutdown_type = FND_API.G_MISS_CHAR
256 THEN
257 x_eam_op_rec.shutdown_type := NULL;
258 END IF;
259
260 --
261 -- Populate Null or missng flex field columns
262 --
263 -- commented for BUG#5997830 --- start ---
264
265 IF p_eam_op_rec.attribute_category IS NULL
266 THEN
267 x_eam_op_rec.attribute_category := p_old_eam_op_rec.attribute_category;
268
269 END IF;
270
271 IF p_eam_op_rec.attribute_category = FND_API.G_MISS_CHAR
272 THEN
273 x_eam_op_rec.attribute_category := NULL;
274 END IF;
275
276 IF p_eam_op_rec.attribute1 IS NULL
277 THEN
278 x_eam_op_rec.attribute1 := p_old_eam_op_rec.attribute1;
279 END IF;
280
281 IF p_eam_op_rec.attribute1 = FND_API.G_MISS_CHAR
282 THEN
283 x_eam_op_rec.attribute1 := NULL;
284 END IF;
285
286 IF p_eam_op_rec.attribute2 IS NULL
287 THEN
288 x_eam_op_rec.attribute2 := p_old_eam_op_rec.attribute2;
289 END IF;
290
291 IF p_eam_op_rec.attribute2 = FND_API.G_MISS_CHAR
292 THEN
293 x_eam_op_rec.attribute2 := NULL;
294 END IF;
295
296 IF p_eam_op_rec.attribute3 IS NULL
297 THEN
298 x_eam_op_rec.attribute3 := p_old_eam_op_rec.attribute3;
299 END IF;
300
301 IF p_eam_op_rec.attribute3 = FND_API.G_MISS_CHAR
302 THEN
303 x_eam_op_rec.attribute3 := NULL;
304 END IF;
305
306 IF p_eam_op_rec.attribute4 IS NULL
307 THEN
308 x_eam_op_rec.attribute4 := p_old_eam_op_rec.attribute4;
309 END IF;
310
311 IF p_eam_op_rec.attribute4 = FND_API.G_MISS_CHAR
312 THEN
313 x_eam_op_rec.attribute4 := NULL;
314 END IF;
315
316 IF p_eam_op_rec.attribute5 IS NULL
317 THEN
318 x_eam_op_rec.attribute5 := p_old_eam_op_rec.attribute5;
319 END IF;
320
321 IF p_eam_op_rec.attribute5 = FND_API.G_MISS_CHAR
322 THEN
323 x_eam_op_rec.attribute5 := NULL;
324 END IF;
325
326 IF p_eam_op_rec.attribute6 IS NULL
327 THEN
328 x_eam_op_rec.attribute6 := p_old_eam_op_rec.attribute6;
329 END IF;
330
331 IF p_eam_op_rec.attribute6 = FND_API.G_MISS_CHAR
332 THEN
333 x_eam_op_rec.attribute6 := NULL;
334 END IF;
335
336 IF p_eam_op_rec.attribute7 IS NULL
337 THEN
338 x_eam_op_rec.attribute7 := p_old_eam_op_rec.attribute7;
339 END IF;
340
341 IF p_eam_op_rec.attribute7 = FND_API.G_MISS_CHAR
342 THEN
343 x_eam_op_rec.attribute7 := NULL;
344 END IF;
345
346 IF p_eam_op_rec.attribute8 IS NULL
347 THEN
348 x_eam_op_rec.attribute8 := p_old_eam_op_rec.attribute8;
349 END IF;
350
351 IF p_eam_op_rec.attribute8 = FND_API.G_MISS_CHAR
352 THEN
353 x_eam_op_rec.attribute8 := NULL;
354 END IF;
355
356 IF p_eam_op_rec.attribute9 IS NULL
357 THEN
358 x_eam_op_rec.attribute9 := p_old_eam_op_rec.attribute9;
359 END IF;
360
361 IF p_eam_op_rec.attribute9 = FND_API.G_MISS_CHAR
362 THEN
363 x_eam_op_rec.attribute9 := NULL;
364 END IF;
365
366 IF p_eam_op_rec.attribute10 IS NULL
367 THEN
368 x_eam_op_rec.attribute10 := p_old_eam_op_rec.attribute10;
369 END IF;
370
371 IF p_eam_op_rec.attribute10 = FND_API.G_MISS_CHAR
372 THEN
373 x_eam_op_rec.attribute10 := NULL;
374 END IF;
375
376 IF p_eam_op_rec.attribute11 IS NULL
377 THEN
378 x_eam_op_rec.attribute11 := p_old_eam_op_rec.attribute11;
379 END IF;
380
381 IF p_eam_op_rec.attribute11 = FND_API.G_MISS_CHAR
382 THEN
383 x_eam_op_rec.attribute11 := NULL;
384 END IF;
385
386 IF p_eam_op_rec.attribute12 IS NULL
387 THEN
388 x_eam_op_rec.attribute12 := p_old_eam_op_rec.attribute12;
389 END IF;
390
391 IF p_eam_op_rec.attribute12 = FND_API.G_MISS_CHAR
392 THEN
393 x_eam_op_rec.attribute12 := NULL;
394 END IF;
395
396 IF p_eam_op_rec.attribute13 IS NULL
397 THEN
398 x_eam_op_rec.attribute13 := p_old_eam_op_rec.attribute13;
399 END IF;
400
401 IF p_eam_op_rec.attribute13 = FND_API.G_MISS_CHAR
402 THEN
403 x_eam_op_rec.attribute13 := NULL;
404 END IF;
405
406 IF p_eam_op_rec.attribute14 IS NULL
407 THEN
408 x_eam_op_rec.attribute14 := p_old_eam_op_rec.attribute14;
409 END IF;
410
411 IF p_eam_op_rec.attribute14 = FND_API.G_MISS_CHAR
412 THEN
413 x_eam_op_rec.attribute14 := NULL;
414 END IF;
415
416 IF p_eam_op_rec.attribute15 IS NULL
417 THEN
418 x_eam_op_rec.attribute15 := p_old_eam_op_rec.attribute15;
419 END IF;
420
421 IF p_eam_op_rec.attribute15 = FND_API.G_MISS_CHAR
422 THEN
423 x_eam_op_rec.attribute15 := NULL;
424 END IF;
425
426 IF p_eam_op_rec.long_description IS NULL
427 THEN
428 x_eam_op_rec.long_description := p_old_eam_op_rec.long_description;
429 END IF;
430
431 IF p_eam_op_rec.long_description = FND_API.G_MISS_CHAR
432 THEN
433 x_eam_op_rec.long_description := NULL;
434 END IF;
435 --------- end ----------
436
437
438 IF EAM_PROCESS_WO_PVT.Get_Debug = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Done processing null columns prior update'); END IF;
439
440
441 END Populate_Null_Columns;
442
443 END EAM_OP_DEFAULT_PVT;