1 package body GMD_OPERATIONS_PKG as
2 /* $Header: GMDOPRMB.pls 120.0 2005/05/25 18:53:52 appldev noship $ */
3 procedure INSERT_ROW (
4 X_ROWID in OUT NOCOPY VARCHAR2,
5 X_OPRN_ID in NUMBER,
6 X_ATTRIBUTE30 in VARCHAR2,
7 X_ATTRIBUTE_CATEGORY in VARCHAR2,
8 X_ATTRIBUTE25 in VARCHAR2,
9 X_ATTRIBUTE26 in VARCHAR2,
10 X_ATTRIBUTE27 in VARCHAR2,
11 X_ATTRIBUTE28 in VARCHAR2,
12 X_ATTRIBUTE29 in VARCHAR2,
13 X_ATTRIBUTE22 in VARCHAR2,
14 X_ATTRIBUTE23 in VARCHAR2,
15 X_ATTRIBUTE24 in VARCHAR2,
16 X_OPRN_NO in VARCHAR2,
17 X_OPRN_VERS in NUMBER,
18 X_PROCESS_QTY_UOM in VARCHAR2,
19 X_MINIMUM_TRANSFER_QTY in NUMBER DEFAULT NULL,
20 X_OPRN_CLASS in VARCHAR2,
21 X_INACTIVE_IND in NUMBER,
22 X_EFFECTIVE_START_DATE in DATE,
23 X_EFFECTIVE_END_DATE in DATE,
24 X_DELETE_MARK in NUMBER,
25 X_TEXT_CODE in NUMBER,
26 X_ATTRIBUTE1 in VARCHAR2,
27 X_ATTRIBUTE2 in VARCHAR2,
28 X_ATTRIBUTE3 in VARCHAR2,
29 X_ATTRIBUTE4 in VARCHAR2,
30 X_ATTRIBUTE5 in VARCHAR2,
31 X_ATTRIBUTE6 in VARCHAR2,
32 X_ATTRIBUTE7 in VARCHAR2,
33 X_ATTRIBUTE8 in VARCHAR2,
34 X_ATTRIBUTE9 in VARCHAR2,
35 X_ATTRIBUTE10 in VARCHAR2,
36 X_ATTRIBUTE11 in VARCHAR2,
37 X_ATTRIBUTE12 in VARCHAR2,
38 X_ATTRIBUTE13 in VARCHAR2,
39 X_ATTRIBUTE14 in VARCHAR2,
40 X_ATTRIBUTE15 in VARCHAR2,
41 X_ATTRIBUTE16 in VARCHAR2,
42 X_ATTRIBUTE17 in VARCHAR2,
43 X_ATTRIBUTE18 in VARCHAR2,
44 X_ATTRIBUTE19 in VARCHAR2,
45 X_ATTRIBUTE20 in VARCHAR2,
46 X_ATTRIBUTE21 in VARCHAR2,
47 X_OPERATION_STATUS in VARCHAR2,
48 X_OWNER_ORGANIZATION_ID IN NUMBER,
49 X_OPRN_DESC in VARCHAR2,
50 X_CREATION_DATE in DATE,
51 X_CREATED_BY in NUMBER,
52 X_LAST_UPDATE_DATE in DATE,
53 X_LAST_UPDATED_BY in NUMBER,
54 X_LAST_UPDATE_LOGIN in NUMBER
55 ) is
56 cursor C is select ROWID from GMD_OPERATIONS_B
57 where OPRN_ID = X_OPRN_ID
58 ;
59 begin
60 insert into GMD_OPERATIONS_B (
61 ATTRIBUTE30,
62 ATTRIBUTE_CATEGORY,
63 ATTRIBUTE25,
64 ATTRIBUTE26,
65 ATTRIBUTE27,
66 ATTRIBUTE28,
67 ATTRIBUTE29,
68 ATTRIBUTE22,
69 ATTRIBUTE23,
70 ATTRIBUTE24,
71 OPRN_ID,
72 OPRN_NO,
73 OPRN_VERS,
74 PROCESS_QTY_UOM,
75 MINIMUM_TRANSFER_QTY,
76 OPRN_CLASS,
77 INACTIVE_IND,
78 EFFECTIVE_START_DATE,
79 EFFECTIVE_END_DATE,
80 DELETE_MARK,
81 TEXT_CODE,
82 ATTRIBUTE1,
83 ATTRIBUTE2,
84 ATTRIBUTE3,
85 ATTRIBUTE4,
86 ATTRIBUTE5,
87 ATTRIBUTE6,
88 ATTRIBUTE7,
89 ATTRIBUTE8,
90 ATTRIBUTE9,
91 ATTRIBUTE10,
92 ATTRIBUTE11,
93 ATTRIBUTE12,
94 ATTRIBUTE13,
95 ATTRIBUTE14,
96 ATTRIBUTE15,
97 ATTRIBUTE16,
98 ATTRIBUTE17,
99 ATTRIBUTE18,
100 ATTRIBUTE19,
101 ATTRIBUTE20,
102 ATTRIBUTE21,
103 OPERATION_STATUS,
104 OWNER_ORGANIZATION_ID,
105 CREATION_DATE,
106 CREATED_BY,
107 LAST_UPDATE_DATE,
108 LAST_UPDATED_BY,
109 LAST_UPDATE_LOGIN
110 ) values (
111 X_ATTRIBUTE30,
112 X_ATTRIBUTE_CATEGORY,
113 X_ATTRIBUTE25,
114 X_ATTRIBUTE26,
115 X_ATTRIBUTE27,
116 X_ATTRIBUTE28,
117 X_ATTRIBUTE29,
118 X_ATTRIBUTE22,
119 X_ATTRIBUTE23,
120 X_ATTRIBUTE24,
121 X_OPRN_ID,
122 X_OPRN_NO,
123 X_OPRN_VERS,
124 X_PROCESS_QTY_UOM,
125 X_MINIMUM_TRANSFER_QTY,
126 X_OPRN_CLASS,
127 X_INACTIVE_IND,
128 X_EFFECTIVE_START_DATE,
129 X_EFFECTIVE_END_DATE,
130 X_DELETE_MARK,
131 X_TEXT_CODE,
132 X_ATTRIBUTE1,
133 X_ATTRIBUTE2,
134 X_ATTRIBUTE3,
135 X_ATTRIBUTE4,
136 X_ATTRIBUTE5,
137 X_ATTRIBUTE6,
138 X_ATTRIBUTE7,
139 X_ATTRIBUTE8,
140 X_ATTRIBUTE9,
141 X_ATTRIBUTE10,
142 X_ATTRIBUTE11,
143 X_ATTRIBUTE12,
144 X_ATTRIBUTE13,
145 X_ATTRIBUTE14,
146 X_ATTRIBUTE15,
147 X_ATTRIBUTE16,
148 X_ATTRIBUTE17,
149 X_ATTRIBUTE18,
150 X_ATTRIBUTE19,
151 X_ATTRIBUTE20,
152 X_ATTRIBUTE21,
153 X_OPERATION_STATUS,
154 X_OWNER_ORGANIZATION_ID,
155 X_CREATION_DATE,
156 X_CREATED_BY,
157 X_LAST_UPDATE_DATE,
158 X_LAST_UPDATED_BY,
159 X_LAST_UPDATE_LOGIN
160 );
161
162 insert into GMD_OPERATIONS_TL (
163 LAST_UPDATE_LOGIN,
164 LAST_UPDATE_DATE,
165 LAST_UPDATED_BY,
166 OPRN_ID,
167 OPRN_DESC,
168 CREATION_DATE,
169 CREATED_BY,
170 LANGUAGE,
171 SOURCE_LANG
172 ) select
173 X_LAST_UPDATE_LOGIN,
174 X_LAST_UPDATE_DATE,
175 X_LAST_UPDATED_BY,
176 X_OPRN_ID,
177 X_OPRN_DESC,
178 X_CREATION_DATE,
179 X_CREATED_BY,
180 L.LANGUAGE_CODE,
181 userenv('LANG')
182 from FND_LANGUAGES L
183 where L.INSTALLED_FLAG in ('I', 'B')
184 and not exists
185 (select NULL
186 from GMD_OPERATIONS_TL T
187 where T.OPRN_ID = X_OPRN_ID
188 and T.LANGUAGE = L.LANGUAGE_CODE);
189
190 open c;
191 fetch c into X_ROWID;
192 if (c%notfound) then
193 close c;
194 raise no_data_found;
195 end if;
196 close c;
197
198
199 end INSERT_ROW;
200
201 procedure LOCK_ROW (
202 X_OPRN_ID in NUMBER,
203 X_ATTRIBUTE30 in VARCHAR2,
204 X_ATTRIBUTE_CATEGORY in VARCHAR2,
205 X_ATTRIBUTE25 in VARCHAR2,
206 X_ATTRIBUTE26 in VARCHAR2,
207 X_ATTRIBUTE27 in VARCHAR2,
208 X_ATTRIBUTE28 in VARCHAR2,
209 X_ATTRIBUTE29 in VARCHAR2,
210 X_ATTRIBUTE22 in VARCHAR2,
211 X_ATTRIBUTE23 in VARCHAR2,
212 X_ATTRIBUTE24 in VARCHAR2,
213 X_OPRN_NO in VARCHAR2,
214 X_OPRN_VERS in NUMBER,
215 X_PROCESS_QTY_UOM in VARCHAR2,
216 X_MINIMUM_TRANSFER_QTY in NUMBER,
217 X_OPRN_CLASS in VARCHAR2,
218 X_INACTIVE_IND in NUMBER,
219 X_EFFECTIVE_START_DATE in DATE,
220 X_EFFECTIVE_END_DATE in DATE,
221 X_DELETE_MARK in NUMBER,
222 X_TEXT_CODE in NUMBER,
223 X_ATTRIBUTE1 in VARCHAR2,
224 X_ATTRIBUTE2 in VARCHAR2,
225 X_ATTRIBUTE3 in VARCHAR2,
226 X_ATTRIBUTE4 in VARCHAR2,
227 X_ATTRIBUTE5 in VARCHAR2,
228 X_ATTRIBUTE6 in VARCHAR2,
229 X_ATTRIBUTE7 in VARCHAR2,
230 X_ATTRIBUTE8 in VARCHAR2,
231 X_ATTRIBUTE9 in VARCHAR2,
232 X_ATTRIBUTE10 in VARCHAR2,
233 X_ATTRIBUTE11 in VARCHAR2,
234 X_ATTRIBUTE12 in VARCHAR2,
235 X_ATTRIBUTE13 in VARCHAR2,
236 X_ATTRIBUTE14 in VARCHAR2,
237 X_ATTRIBUTE15 in VARCHAR2,
238 X_ATTRIBUTE16 in VARCHAR2,
239 X_ATTRIBUTE17 in VARCHAR2,
240 X_ATTRIBUTE18 in VARCHAR2,
241 X_ATTRIBUTE19 in VARCHAR2,
242 X_ATTRIBUTE20 in VARCHAR2,
243 X_ATTRIBUTE21 in VARCHAR2,
244 X_OPERATION_STATUS in VARCHAR2,
245 X_OWNER_ORGANIZATION_ID in NUMBER,
246 X_OPRN_DESC in VARCHAR2
247 ) is
248 cursor c is select
249 ATTRIBUTE30,
250 ATTRIBUTE_CATEGORY,
251 ATTRIBUTE25,
252 ATTRIBUTE26,
253 ATTRIBUTE27,
254 ATTRIBUTE28,
255 ATTRIBUTE29,
256 ATTRIBUTE22,
257 ATTRIBUTE23,
258 ATTRIBUTE24,
259 OPRN_NO,
260 OPRN_VERS,
261 PROCESS_QTY_UOM,
262 MINIMUM_TRANSFER_QTY,
263 OPRN_CLASS,
264 INACTIVE_IND,
265 EFFECTIVE_START_DATE,
266 EFFECTIVE_END_DATE,
267 DELETE_MARK,
268 TEXT_CODE,
269 ATTRIBUTE1,
270 ATTRIBUTE2,
271 ATTRIBUTE3,
272 ATTRIBUTE4,
273 ATTRIBUTE5,
274 ATTRIBUTE6,
275 ATTRIBUTE7,
276 ATTRIBUTE8,
277 ATTRIBUTE9,
278 ATTRIBUTE10,
279 ATTRIBUTE11,
280 ATTRIBUTE12,
281 ATTRIBUTE13,
282 ATTRIBUTE14,
283 ATTRIBUTE15,
284 ATTRIBUTE16,
285 ATTRIBUTE17,
286 ATTRIBUTE18,
287 ATTRIBUTE19,
288 ATTRIBUTE20,
289 ATTRIBUTE21,
290 OPERATION_STATUS,
291 OWNER_ORGANIZATION_ID
292 from GMD_OPERATIONS_B
293 where OPRN_ID = X_OPRN_ID
294 for update of OPRN_ID nowait;
295 recinfo c%rowtype;
296
297 cursor c1 is select
298 OPRN_DESC,
299 decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
300 from GMD_OPERATIONS_TL
301 where OPRN_ID = X_OPRN_ID
302 and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
303 for update of OPRN_ID nowait;
304 begin
305 open c;
306 fetch c into recinfo;
307 if (c%notfound) then
308 close c;
309 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
310 app_exception.raise_exception;
311 end if;
312 close c;
313 if ( ((recinfo.ATTRIBUTE30 = X_ATTRIBUTE30)
314 OR ((recinfo.ATTRIBUTE30 is null) AND (X_ATTRIBUTE30 is null)))
315 AND ((recinfo.ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY)
316 OR ((recinfo.ATTRIBUTE_CATEGORY is null) AND (X_ATTRIBUTE_CATEGORY is null)))
317 AND ((recinfo.ATTRIBUTE25 = X_ATTRIBUTE25)
318 OR ((recinfo.ATTRIBUTE25 is null) AND (X_ATTRIBUTE25 is null)))
319 AND ((recinfo.ATTRIBUTE26 = X_ATTRIBUTE26)
320 OR ((recinfo.ATTRIBUTE26 is null) AND (X_ATTRIBUTE26 is null)))
321 AND ((recinfo.ATTRIBUTE27 = X_ATTRIBUTE27)
322 OR ((recinfo.ATTRIBUTE27 is null) AND (X_ATTRIBUTE27 is null)))
323 AND ((recinfo.ATTRIBUTE28 = X_ATTRIBUTE28)
324 OR ((recinfo.ATTRIBUTE28 is null) AND (X_ATTRIBUTE28 is null)))
325 AND ((recinfo.ATTRIBUTE29 = X_ATTRIBUTE29)
326 OR ((recinfo.ATTRIBUTE29 is null) AND (X_ATTRIBUTE29 is null)))
327 AND ((recinfo.ATTRIBUTE22 = X_ATTRIBUTE22)
328 OR ((recinfo.ATTRIBUTE22 is null) AND (X_ATTRIBUTE22 is null)))
329 AND ((recinfo.ATTRIBUTE23 = X_ATTRIBUTE23)
330 OR ((recinfo.ATTRIBUTE23 is null) AND (X_ATTRIBUTE23 is null)))
331 AND ((recinfo.ATTRIBUTE24 = X_ATTRIBUTE24)
332 OR ((recinfo.ATTRIBUTE24 is null) AND (X_ATTRIBUTE24 is null)))
333 AND (recinfo.OPRN_NO = X_OPRN_NO)
334 AND (recinfo.OPRN_VERS = X_OPRN_VERS)
335 AND (recinfo.PROCESS_QTY_UOM = X_PROCESS_QTY_UOM)
336 AND ((recinfo.MINIMUM_TRANSFER_QTY = X_MINIMUM_TRANSFER_QTY)
337 OR ((recinfo.MINIMUM_TRANSFER_QTY is null) AND (X_MINIMUM_TRANSFER_QTY is null)))
338 AND ((recinfo.OPRN_CLASS = X_OPRN_CLASS)
339 OR ((recinfo.OPRN_CLASS is null) AND (X_OPRN_CLASS is null)))
340 AND ((recinfo.INACTIVE_IND = X_INACTIVE_IND)
341 OR ((recinfo.INACTIVE_IND is null) AND (X_INACTIVE_IND is null)))
342 AND (recinfo.EFFECTIVE_START_DATE = X_EFFECTIVE_START_DATE)
343 AND ((recinfo.EFFECTIVE_END_DATE = X_EFFECTIVE_END_DATE)
344 OR ((recinfo.EFFECTIVE_END_DATE is null) AND (X_EFFECTIVE_END_DATE is null)))
345 AND (recinfo.DELETE_MARK = X_DELETE_MARK)
346 AND ((recinfo.TEXT_CODE = X_TEXT_CODE)
347 OR ((recinfo.TEXT_CODE is null) AND (X_TEXT_CODE is null)))
348 AND ((recinfo.ATTRIBUTE1 = X_ATTRIBUTE1)
349 OR ((recinfo.ATTRIBUTE1 is null) AND (X_ATTRIBUTE1 is null)))
350 AND ((recinfo.ATTRIBUTE2 = X_ATTRIBUTE2)
351 OR ((recinfo.ATTRIBUTE2 is null) AND (X_ATTRIBUTE2 is null)))
352 AND ((recinfo.ATTRIBUTE3 = X_ATTRIBUTE3)
353 OR ((recinfo.ATTRIBUTE3 is null) AND (X_ATTRIBUTE3 is null)))
354 AND ((recinfo.ATTRIBUTE4 = X_ATTRIBUTE4)
355 OR ((recinfo.ATTRIBUTE4 is null) AND (X_ATTRIBUTE4 is null)))
356 AND ((recinfo.ATTRIBUTE5 = X_ATTRIBUTE5)
357 OR ((recinfo.ATTRIBUTE5 is null) AND (X_ATTRIBUTE5 is null)))
358 AND ((recinfo.ATTRIBUTE6 = X_ATTRIBUTE6)
359 OR ((recinfo.ATTRIBUTE6 is null) AND (X_ATTRIBUTE6 is null)))
360 AND ((recinfo.ATTRIBUTE7 = X_ATTRIBUTE7)
361 OR ((recinfo.ATTRIBUTE7 is null) AND (X_ATTRIBUTE7 is null)))
362 AND ((recinfo.ATTRIBUTE8 = X_ATTRIBUTE8)
363 OR ((recinfo.ATTRIBUTE8 is null) AND (X_ATTRIBUTE8 is null)))
364 AND ((recinfo.ATTRIBUTE9 = X_ATTRIBUTE9)
365 OR ((recinfo.ATTRIBUTE9 is null) AND (X_ATTRIBUTE9 is null)))
366 AND ((recinfo.ATTRIBUTE10 = X_ATTRIBUTE10)
367 OR ((recinfo.ATTRIBUTE10 is null) AND (X_ATTRIBUTE10 is null)))
368 AND ((recinfo.ATTRIBUTE11 = X_ATTRIBUTE11)
369 OR ((recinfo.ATTRIBUTE11 is null) AND (X_ATTRIBUTE11 is null)))
370 AND ((recinfo.ATTRIBUTE12 = X_ATTRIBUTE12)
371 OR ((recinfo.ATTRIBUTE12 is null) AND (X_ATTRIBUTE12 is null)))
372 AND ((recinfo.ATTRIBUTE13 = X_ATTRIBUTE13)
373 OR ((recinfo.ATTRIBUTE13 is null) AND (X_ATTRIBUTE13 is null)))
374 AND ((recinfo.ATTRIBUTE14 = X_ATTRIBUTE14)
375 OR ((recinfo.ATTRIBUTE14 is null) AND (X_ATTRIBUTE14 is null)))
376 AND ((recinfo.ATTRIBUTE15 = X_ATTRIBUTE15)
377 OR ((recinfo.ATTRIBUTE15 is null) AND (X_ATTRIBUTE15 is null)))
378 AND ((recinfo.ATTRIBUTE16 = X_ATTRIBUTE16)
379 OR ((recinfo.ATTRIBUTE16 is null) AND (X_ATTRIBUTE16 is null)))
380 AND ((recinfo.ATTRIBUTE17 = X_ATTRIBUTE17)
381 OR ((recinfo.ATTRIBUTE17 is null) AND (X_ATTRIBUTE17 is null)))
382 AND ((recinfo.ATTRIBUTE18 = X_ATTRIBUTE18)
383 OR ((recinfo.ATTRIBUTE18 is null) AND (X_ATTRIBUTE18 is null)))
384 AND ((recinfo.ATTRIBUTE19 = X_ATTRIBUTE19)
385 OR ((recinfo.ATTRIBUTE19 is null) AND (X_ATTRIBUTE19 is null)))
386 AND ((recinfo.ATTRIBUTE20 = X_ATTRIBUTE20)
387 OR ((recinfo.ATTRIBUTE20 is null) AND (X_ATTRIBUTE20 is null)))
388 AND ((recinfo.ATTRIBUTE21 = X_ATTRIBUTE21)
389 OR ((recinfo.ATTRIBUTE21 is null) AND (X_ATTRIBUTE21 is null)))
390 AND (recinfo.OPERATION_STATUS = X_OPERATION_STATUS)
391 AND (recinfo.OWNER_ORGANIZATION_ID = X_OWNER_ORGANIZATION_ID)
392 ) then
393 null;
394 else
395 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
396 app_exception.raise_exception;
397 end if;
398
399 for tlinfo in c1 loop
400 if (tlinfo.BASELANG = 'Y') then
401 if ( (tlinfo.OPRN_DESC = X_OPRN_DESC)
402 ) then
403 null;
404 else
405 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
406 app_exception.raise_exception;
407 end if;
408 end if;
409 end loop;
410 return;
411
412 end LOCK_ROW;
413
414 procedure UPDATE_ROW (
415 X_OPRN_ID in NUMBER,
416 X_ATTRIBUTE30 in VARCHAR2,
417 X_ATTRIBUTE_CATEGORY in VARCHAR2,
418 X_ATTRIBUTE25 in VARCHAR2,
419 X_ATTRIBUTE26 in VARCHAR2,
420 X_ATTRIBUTE27 in VARCHAR2,
421 X_ATTRIBUTE28 in VARCHAR2,
422 X_ATTRIBUTE29 in VARCHAR2,
423 X_ATTRIBUTE22 in VARCHAR2,
424 X_ATTRIBUTE23 in VARCHAR2,
425 X_ATTRIBUTE24 in VARCHAR2,
426 X_OPRN_NO in VARCHAR2,
427 X_OPRN_VERS in NUMBER,
428 X_PROCESS_QTY_UOM in VARCHAR2,
429 X_MINIMUM_TRANSFER_QTY in NUMBER DEFAULT NULL,
430 X_OPRN_CLASS in VARCHAR2,
431 X_INACTIVE_IND in NUMBER,
432 X_EFFECTIVE_START_DATE in DATE,
433 X_EFFECTIVE_END_DATE in DATE,
434 X_DELETE_MARK in NUMBER,
435 X_TEXT_CODE in NUMBER,
436 X_ATTRIBUTE1 in VARCHAR2,
437 X_ATTRIBUTE2 in VARCHAR2,
438 X_ATTRIBUTE3 in VARCHAR2,
439 X_ATTRIBUTE4 in VARCHAR2,
440 X_ATTRIBUTE5 in VARCHAR2,
441 X_ATTRIBUTE6 in VARCHAR2,
442 X_ATTRIBUTE7 in VARCHAR2,
443 X_ATTRIBUTE8 in VARCHAR2,
444 X_ATTRIBUTE9 in VARCHAR2,
445 X_ATTRIBUTE10 in VARCHAR2,
446 X_ATTRIBUTE11 in VARCHAR2,
447 X_ATTRIBUTE12 in VARCHAR2,
448 X_ATTRIBUTE13 in VARCHAR2,
449 X_ATTRIBUTE14 in VARCHAR2,
450 X_ATTRIBUTE15 in VARCHAR2,
451 X_ATTRIBUTE16 in VARCHAR2,
452 X_ATTRIBUTE17 in VARCHAR2,
453 X_ATTRIBUTE18 in VARCHAR2,
454 X_ATTRIBUTE19 in VARCHAR2,
455 X_ATTRIBUTE20 in VARCHAR2,
456 X_ATTRIBUTE21 in VARCHAR2,
457 X_OPERATION_STATUS in VARCHAR2,
458 X_OWNER_ORGANIZATION_ID IN NUMBER,
459 X_OPRN_DESC in VARCHAR2,
460 X_LAST_UPDATE_DATE in DATE,
461 X_LAST_UPDATED_BY in NUMBER,
462 X_LAST_UPDATE_LOGIN in NUMBER
463 ) is
464 begin
465 update GMD_OPERATIONS_B set
466 ATTRIBUTE30 = X_ATTRIBUTE30,
467 ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY,
468 ATTRIBUTE25 = X_ATTRIBUTE25,
469 ATTRIBUTE26 = X_ATTRIBUTE26,
470 ATTRIBUTE27 = X_ATTRIBUTE27,
471 ATTRIBUTE28 = X_ATTRIBUTE28,
472 ATTRIBUTE29 = X_ATTRIBUTE29,
473 ATTRIBUTE22 = X_ATTRIBUTE22,
474 ATTRIBUTE23 = X_ATTRIBUTE23,
475 ATTRIBUTE24 = X_ATTRIBUTE24,
476 OPRN_NO = X_OPRN_NO,
477 OPRN_VERS = X_OPRN_VERS,
478 PROCESS_QTY_UOM = X_PROCESS_QTY_UOM,
479 MINIMUM_TRANSFER_QTY = X_MINIMUM_TRANSFER_QTY,
480 OPRN_CLASS = X_OPRN_CLASS,
481 INACTIVE_IND = X_INACTIVE_IND,
482 EFFECTIVE_START_DATE = X_EFFECTIVE_START_DATE,
483 EFFECTIVE_END_DATE = X_EFFECTIVE_END_DATE,
484 DELETE_MARK = X_DELETE_MARK,
485 TEXT_CODE = X_TEXT_CODE,
486 ATTRIBUTE1 = X_ATTRIBUTE1,
487 ATTRIBUTE2 = X_ATTRIBUTE2,
488 ATTRIBUTE3 = X_ATTRIBUTE3,
489 ATTRIBUTE4 = X_ATTRIBUTE4,
490 ATTRIBUTE5 = X_ATTRIBUTE5,
491 ATTRIBUTE6 = X_ATTRIBUTE6,
492 ATTRIBUTE7 = X_ATTRIBUTE7,
493 ATTRIBUTE8 = X_ATTRIBUTE8,
494 ATTRIBUTE9 = X_ATTRIBUTE9,
495 ATTRIBUTE10 = X_ATTRIBUTE10,
496 ATTRIBUTE11 = X_ATTRIBUTE11,
497 ATTRIBUTE12 = X_ATTRIBUTE12,
498 ATTRIBUTE13 = X_ATTRIBUTE13,
499 ATTRIBUTE14 = X_ATTRIBUTE14,
500 ATTRIBUTE15 = X_ATTRIBUTE15,
501 ATTRIBUTE16 = X_ATTRIBUTE16,
502 ATTRIBUTE17 = X_ATTRIBUTE17,
503 ATTRIBUTE18 = X_ATTRIBUTE18,
504 ATTRIBUTE19 = X_ATTRIBUTE19,
505 ATTRIBUTE20 = X_ATTRIBUTE20,
506 ATTRIBUTE21 = X_ATTRIBUTE21,
507 OPERATION_STATUS = X_OPERATION_STATUS,
508 OWNER_ORGANIZATION_ID = X_OWNER_ORGANIZATION_ID,
509 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
510 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
511 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
512 where OPRN_ID = X_OPRN_ID;
513
514 if (sql%notfound) then
515 raise no_data_found;
516 end if;
517
518 update GMD_OPERATIONS_TL set
519 OPRN_DESC = X_OPRN_DESC,
520 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
521 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
522 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
523 SOURCE_LANG = userenv('LANG')
524 where OPRN_ID = X_OPRN_ID
525 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
526
527 if (sql%notfound) then
528 raise no_data_found;
529 end if;
530
531 end UPDATE_ROW;
532
533 procedure DELETE_ROW (
534 X_OPRN_ID in NUMBER
535 ) is
536 begin
537 /* delete from GMD_OPERATIONS_TL
538 where OPRN_ID = X_OPRN_ID;
539
540 if (sql%notfound) then
541 raise no_data_found;
542 end if;*/
543
544
545 update GMD_OPERATIONS_B
546 set delete_mark = 1
547 where OPRN_ID = X_OPRN_ID;
548
549 if (sql%notfound) then
550 raise no_data_found;
551 end if;
552
553 end DELETE_ROW;
554
555 procedure ADD_LANGUAGE
556 is
557 begin
558 delete from GMD_OPERATIONS_TL T
559 where not exists
560 (select NULL
561 from GMD_OPERATIONS_B B
562 where B.OPRN_ID = T.OPRN_ID
563 );
564
565 update GMD_OPERATIONS_TL T set (
566 OPRN_DESC
567 ) = (select
568 B.OPRN_DESC
569 from GMD_OPERATIONS_TL B
570 where B.OPRN_ID = T.OPRN_ID
571 and B.LANGUAGE = T.SOURCE_LANG)
572 where (
573 T.OPRN_ID,
574 T.LANGUAGE
575 ) in (select
576 SUBT.OPRN_ID,
577 SUBT.LANGUAGE
578 from GMD_OPERATIONS_TL SUBB, GMD_OPERATIONS_TL SUBT
579 where SUBB.OPRN_ID = SUBT.OPRN_ID
580 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
581 and (SUBB.OPRN_DESC <> SUBT.OPRN_DESC
582 ));
583
584 insert into GMD_OPERATIONS_TL (
585 LAST_UPDATE_LOGIN,
586 LAST_UPDATE_DATE,
587 LAST_UPDATED_BY,
588 OPRN_ID,
589 OPRN_DESC,
590 CREATION_DATE,
591 CREATED_BY,
592 LANGUAGE,
593 SOURCE_LANG
594 ) select
595 B.LAST_UPDATE_LOGIN,
596 B.LAST_UPDATE_DATE,
597 B.LAST_UPDATED_BY,
598 B.OPRN_ID,
599 B.OPRN_DESC,
600 B.CREATION_DATE,
601 B.CREATED_BY,
602 L.LANGUAGE_CODE,
603 B.SOURCE_LANG
604 from GMD_OPERATIONS_TL B, FND_LANGUAGES L
605 where L.INSTALLED_FLAG in ('I', 'B')
606 and B.LANGUAGE = userenv('LANG')
607 and not exists
608 (select NULL
609 from GMD_OPERATIONS_TL T
610 where T.OPRN_ID = B.OPRN_ID
611 and T.LANGUAGE = L.LANGUAGE_CODE);
612 end ADD_LANGUAGE;
613
614 end GMD_OPERATIONS_PKG;