[Home] [Help]
PACKAGE BODY: APPS.GMD_STATUS_MLS
Source
1 package body GMD_STATUS_MLS as
2 /* $Header: GMDSMLSB.pls 115.8 2003/10/24 06:30:11 gmangari noship $ */
3 procedure INSERT_ROW (
4 X_ROWID in OUT NOCOPY VARCHAR2,
5 X_STATUS_CODE in VARCHAR2,
6 X_VERSION_ENABLED in VARCHAR2,
7 X_UPDATEABLE in VARCHAR2,
8 X_ATTRIBUTE_CATEGORY in VARCHAR2,
9 X_ATTRIBUTE1 in VARCHAR2,
10 X_ATTRIBUTE2 in VARCHAR2,
11 X_ATTRIBUTE3 in VARCHAR2,
12 X_ATTRIBUTE4 in VARCHAR2,
13 X_ATTRIBUTE5 in VARCHAR2,
14 X_ATTRIBUTE6 in VARCHAR2,
15 X_ATTRIBUTE7 in VARCHAR2,
16 X_ATTRIBUTE8 in VARCHAR2,
17 X_ATTRIBUTE9 in VARCHAR2,
18 X_ATTRIBUTE10 in VARCHAR2,
19 X_ATTRIBUTE11 in VARCHAR2,
20 X_ATTRIBUTE12 in VARCHAR2,
21 X_ATTRIBUTE13 in VARCHAR2,
22 X_ATTRIBUTE14 in VARCHAR2,
23 X_ATTRIBUTE15 in VARCHAR2,
24 X_ATTRIBUTE16 in VARCHAR2,
25 X_ATTRIBUTE17 in VARCHAR2,
26 X_ATTRIBUTE18 in VARCHAR2,
27 X_ATTRIBUTE19 in VARCHAR2,
28 X_ATTRIBUTE20 in VARCHAR2,
29 X_ATTRIBUTE21 in VARCHAR2,
30 X_ATTRIBUTE22 in VARCHAR2,
31 X_ATTRIBUTE23 in VARCHAR2,
32 X_ATTRIBUTE24 in VARCHAR2,
33 X_ATTRIBUTE25 in VARCHAR2,
34 X_ATTRIBUTE26 in VARCHAR2,
35 X_ATTRIBUTE27 in VARCHAR2,
36 X_ATTRIBUTE28 in VARCHAR2,
37 X_ATTRIBUTE29 in VARCHAR2,
38 X_ATTRIBUTE30 in VARCHAR2,
39 X_DESCRIPTION in VARCHAR2,
40 X_MEANING in VARCHAR2,
41 X_CREATION_DATE in DATE,
42 X_CREATED_BY in NUMBER,
43 X_LAST_UPDATE_DATE in DATE,
44 X_LAST_UPDATED_BY in NUMBER,
45 X_LAST_UPDATE_LOGIN in NUMBER,
46 X_DELETE_MARK in NUMBER,
47 X_STATUS_TYPE in VARCHAR2
48 ) is
49 cursor C is select ROWID from GMD_STATUS_B
50 where STATUS_CODE = X_STATUS_CODE
51 ;
52 begin
53 -- BEGIN BUG#3131047 Sastry
54 -- Insert into the table only if no rows are present.
55 OPEN c;
56 FETCH c into X_ROWID;
57 IF (c%notfound) THEN
58 -- END BUG#3131047
59 insert into GMD_STATUS_B (
60 VERSION_ENABLED,
61 STATUS_CODE,
62 UPDATEABLE,
63 ATTRIBUTE_CATEGORY,
64 ATTRIBUTE1,
65 ATTRIBUTE2,
66 ATTRIBUTE3,
67 ATTRIBUTE4,
68 ATTRIBUTE5,
69 ATTRIBUTE6,
70 ATTRIBUTE7,
71 ATTRIBUTE8,
72 ATTRIBUTE9,
73 ATTRIBUTE10,
74 ATTRIBUTE11,
75 ATTRIBUTE12,
76 ATTRIBUTE13,
77 ATTRIBUTE14,
78 ATTRIBUTE15,
79 ATTRIBUTE16,
80 ATTRIBUTE17,
81 ATTRIBUTE18,
82 ATTRIBUTE19,
83 ATTRIBUTE20,
84 ATTRIBUTE21,
85 ATTRIBUTE22,
86 ATTRIBUTE23,
87 ATTRIBUTE24,
88 ATTRIBUTE25,
89 ATTRIBUTE26,
90 ATTRIBUTE27,
91 ATTRIBUTE28,
92 ATTRIBUTE29,
93 ATTRIBUTE30,
94 CREATION_DATE,
95 CREATED_BY,
96 LAST_UPDATE_DATE,
97 LAST_UPDATED_BY,
98 LAST_UPDATE_LOGIN,
99 DELETE_MARK,
100 STATUS_TYPE
101 ) values (
102 X_VERSION_ENABLED,
103 X_STATUS_CODE,
104 X_UPDATEABLE,
105 X_ATTRIBUTE_CATEGORY,
106 X_ATTRIBUTE1,
107 X_ATTRIBUTE2,
108 X_ATTRIBUTE3,
109 X_ATTRIBUTE4,
110 X_ATTRIBUTE5,
111 X_ATTRIBUTE6,
112 X_ATTRIBUTE7,
113 X_ATTRIBUTE8,
114 X_ATTRIBUTE9,
115 X_ATTRIBUTE10,
116 X_ATTRIBUTE11,
117 X_ATTRIBUTE12,
118 X_ATTRIBUTE13,
119 X_ATTRIBUTE14,
120 X_ATTRIBUTE15,
121 X_ATTRIBUTE16,
122 X_ATTRIBUTE17,
123 X_ATTRIBUTE18,
124 X_ATTRIBUTE19,
125 X_ATTRIBUTE20,
126 X_ATTRIBUTE21,
127 X_ATTRIBUTE22,
128 X_ATTRIBUTE23,
129 X_ATTRIBUTE24,
130 X_ATTRIBUTE25,
131 X_ATTRIBUTE26,
132 X_ATTRIBUTE27,
133 X_ATTRIBUTE28,
134 X_ATTRIBUTE29,
135 X_ATTRIBUTE30,
136 X_CREATION_DATE,
137 X_CREATED_BY,
138 X_LAST_UPDATE_DATE,
139 X_LAST_UPDATED_BY,
140 X_LAST_UPDATE_LOGIN,
141 X_DELETE_MARK,
142 X_STATUS_TYPE
143 );
144 -- BEGIN BUG#3131047 Sastry
145 END IF;
146 Close c;
147 -- END BUG#3131047
148
149 insert into GMD_STATUS_TL (
150 MEANING,
151 STATUS_CODE,
152 DESCRIPTION,
153 LAST_UPDATE_DATE,
154 LAST_UPDATE_LOGIN,
155 LAST_UPDATED_BY,
156 CREATION_DATE,
157 CREATED_BY,
158 LANGUAGE,
159 SOURCE_LANG
160 ) select
161 X_MEANING,
162 X_STATUS_CODE,
163 X_DESCRIPTION,
164 X_LAST_UPDATE_DATE,
165 X_LAST_UPDATE_LOGIN,
166 X_LAST_UPDATED_BY,
167 X_CREATION_DATE,
168 X_CREATED_BY,
169 L.LANGUAGE_CODE,
170 userenv('LANG')
171 from FND_LANGUAGES L
172 where L.INSTALLED_FLAG in ('I', 'B')
173 and not exists
174 (select NULL
175 from GMD_STATUS_TL T
176 where T.STATUS_CODE = X_STATUS_CODE
177 and T.LANGUAGE = L.LANGUAGE_CODE);
178
179 open c;
180 fetch c into X_ROWID;
181 if (c%notfound) then
182 close c;
183 raise no_data_found;
184 end if;
185 close c;
186
187 end INSERT_ROW;
188
189 procedure LOCK_ROW (
190 X_STATUS_CODE in VARCHAR2,
191 X_VERSION_ENABLED in VARCHAR2,
192 X_UPDATEABLE in VARCHAR2,
193 X_ATTRIBUTE_CATEGORY in VARCHAR2,
194 X_ATTRIBUTE1 in VARCHAR2,
195 X_ATTRIBUTE2 in VARCHAR2,
196 X_ATTRIBUTE3 in VARCHAR2,
197 X_ATTRIBUTE4 in VARCHAR2,
198 X_ATTRIBUTE5 in VARCHAR2,
199 X_ATTRIBUTE6 in VARCHAR2,
200 X_ATTRIBUTE7 in VARCHAR2,
201 X_ATTRIBUTE8 in VARCHAR2,
202 X_ATTRIBUTE9 in VARCHAR2,
203 X_ATTRIBUTE10 in VARCHAR2,
204 X_ATTRIBUTE11 in VARCHAR2,
205 X_ATTRIBUTE12 in VARCHAR2,
206 X_ATTRIBUTE13 in VARCHAR2,
207 X_ATTRIBUTE14 in VARCHAR2,
208 X_ATTRIBUTE15 in VARCHAR2,
209 X_ATTRIBUTE16 in VARCHAR2,
210 X_ATTRIBUTE17 in VARCHAR2,
211 X_ATTRIBUTE18 in VARCHAR2,
212 X_ATTRIBUTE19 in VARCHAR2,
213 X_ATTRIBUTE20 in VARCHAR2,
214 X_ATTRIBUTE21 in VARCHAR2,
215 X_ATTRIBUTE22 in VARCHAR2,
216 X_ATTRIBUTE23 in VARCHAR2,
217 X_ATTRIBUTE24 in VARCHAR2,
218 X_ATTRIBUTE25 in VARCHAR2,
219 X_ATTRIBUTE26 in VARCHAR2,
220 X_ATTRIBUTE27 in VARCHAR2,
221 X_ATTRIBUTE28 in VARCHAR2,
222 X_ATTRIBUTE29 in VARCHAR2,
223 X_ATTRIBUTE30 in VARCHAR2,
224 X_DESCRIPTION in VARCHAR2,
225 X_MEANING in VARCHAR2,
226 X_DELETE_MARK in NUMBER,
227 X_STATUS_TYPE in VARCHAR2
228 ) is
229 cursor c is select
230 VERSION_ENABLED,
231 UPDATEABLE,
232 ATTRIBUTE_CATEGORY,
233 ATTRIBUTE1,
234 ATTRIBUTE2,
235 ATTRIBUTE3,
236 ATTRIBUTE4,
237 ATTRIBUTE5,
238 ATTRIBUTE6,
239 ATTRIBUTE7,
240 ATTRIBUTE8,
241 ATTRIBUTE9,
242 ATTRIBUTE10,
243 ATTRIBUTE11,
244 ATTRIBUTE12,
245 ATTRIBUTE13,
246 ATTRIBUTE14,
247 ATTRIBUTE15,
248 ATTRIBUTE16,
249 ATTRIBUTE17,
250 ATTRIBUTE18,
251 ATTRIBUTE19,
252 ATTRIBUTE20,
253 ATTRIBUTE21,
254 ATTRIBUTE22,
255 ATTRIBUTE23,
256 ATTRIBUTE24,
257 ATTRIBUTE25,
258 ATTRIBUTE26,
259 ATTRIBUTE27,
260 ATTRIBUTE28,
261 ATTRIBUTE29,
262 ATTRIBUTE30,
263 DELETE_MARK,
264 STATUS_TYPE
265 from GMD_STATUS_B
266 where STATUS_CODE = X_STATUS_CODE
267 for update of STATUS_CODE nowait;
268 recinfo c%rowtype;
269
270 cursor c1 is select
271 DESCRIPTION,
272 MEANING,
273 decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
274 from GMD_STATUS_TL
275 where STATUS_CODE = X_STATUS_CODE
276 and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
277 for update of STATUS_CODE nowait;
278 begin
279 open c;
280 fetch c into recinfo;
281 if (c%notfound) then
282 close c;
283 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
284 app_exception.raise_exception;
285 end if;
286 close c;
287 if ( (recinfo.VERSION_ENABLED = X_VERSION_ENABLED)
288 AND (recinfo.UPDATEABLE = X_UPDATEABLE)
289 AND ((recinfo.ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY)
290 OR ((recinfo.ATTRIBUTE_CATEGORY is null) AND (X_ATTRIBUTE_CATEGORY is null)))
291 AND ((recinfo.ATTRIBUTE1 = X_ATTRIBUTE1)
292 OR ((recinfo.ATTRIBUTE1 is null) AND (X_ATTRIBUTE1 is null)))
293 AND ((recinfo.ATTRIBUTE2 = X_ATTRIBUTE2)
294 OR ((recinfo.ATTRIBUTE2 is null) AND (X_ATTRIBUTE2 is null)))
295 AND ((recinfo.ATTRIBUTE3 = X_ATTRIBUTE3)
296 OR ((recinfo.ATTRIBUTE3 is null) AND (X_ATTRIBUTE3 is null)))
297 AND ((recinfo.ATTRIBUTE4 = X_ATTRIBUTE4)
298 OR ((recinfo.ATTRIBUTE4 is null) AND (X_ATTRIBUTE4 is null)))
299 AND ((recinfo.ATTRIBUTE5 = X_ATTRIBUTE5)
300 OR ((recinfo.ATTRIBUTE5 is null) AND (X_ATTRIBUTE5 is null)))
301 AND ((recinfo.ATTRIBUTE6 = X_ATTRIBUTE6)
302 OR ((recinfo.ATTRIBUTE6 is null) AND (X_ATTRIBUTE6 is null)))
303 AND ((recinfo.ATTRIBUTE7 = X_ATTRIBUTE7)
304 OR ((recinfo.ATTRIBUTE7 is null) AND (X_ATTRIBUTE7 is null)))
305 AND ((recinfo.ATTRIBUTE8 = X_ATTRIBUTE8)
306 OR ((recinfo.ATTRIBUTE8 is null) AND (X_ATTRIBUTE8 is null)))
307 AND ((recinfo.ATTRIBUTE9 = X_ATTRIBUTE9)
308 OR ((recinfo.ATTRIBUTE9 is null) AND (X_ATTRIBUTE9 is null)))
309 AND ((recinfo.ATTRIBUTE10 = X_ATTRIBUTE10)
310 OR ((recinfo.ATTRIBUTE10 is null) AND (X_ATTRIBUTE10 is null)))
311 AND ((recinfo.ATTRIBUTE11 = X_ATTRIBUTE11)
312 OR ((recinfo.ATTRIBUTE11 is null) AND (X_ATTRIBUTE11 is null)))
313 AND ((recinfo.ATTRIBUTE12 = X_ATTRIBUTE12)
314 OR ((recinfo.ATTRIBUTE12 is null) AND (X_ATTRIBUTE12 is null)))
315 AND ((recinfo.ATTRIBUTE13 = X_ATTRIBUTE13)
316 OR ((recinfo.ATTRIBUTE13 is null) AND (X_ATTRIBUTE13 is null)))
317 AND ((recinfo.ATTRIBUTE14 = X_ATTRIBUTE14)
318 OR ((recinfo.ATTRIBUTE14 is null) AND (X_ATTRIBUTE14 is null)))
319 AND ((recinfo.ATTRIBUTE15 = X_ATTRIBUTE15)
320 OR ((recinfo.ATTRIBUTE15 is null) AND (X_ATTRIBUTE15 is null)))
321 AND ((recinfo.ATTRIBUTE16 = X_ATTRIBUTE16)
322 OR ((recinfo.ATTRIBUTE16 is null) AND (X_ATTRIBUTE16 is null)))
323 AND ((recinfo.ATTRIBUTE17 = X_ATTRIBUTE17)
324 OR ((recinfo.ATTRIBUTE17 is null) AND (X_ATTRIBUTE17 is null)))
325 AND ((recinfo.ATTRIBUTE18 = X_ATTRIBUTE18)
326 OR ((recinfo.ATTRIBUTE18 is null) AND (X_ATTRIBUTE18 is null)))
327 AND ((recinfo.ATTRIBUTE19 = X_ATTRIBUTE19)
328 OR ((recinfo.ATTRIBUTE19 is null) AND (X_ATTRIBUTE19 is null)))
329 AND ((recinfo.ATTRIBUTE20 = X_ATTRIBUTE20)
330 OR ((recinfo.ATTRIBUTE20 is null) AND (X_ATTRIBUTE20 is null)))
331 AND ((recinfo.ATTRIBUTE21 = X_ATTRIBUTE21)
332 OR ((recinfo.ATTRIBUTE21 is null) AND (X_ATTRIBUTE21 is null)))
333 AND ((recinfo.ATTRIBUTE22 = X_ATTRIBUTE22)
334 OR ((recinfo.ATTRIBUTE22 is null) AND (X_ATTRIBUTE22 is null)))
335 AND ((recinfo.ATTRIBUTE23 = X_ATTRIBUTE23)
336 OR ((recinfo.ATTRIBUTE23 is null) AND (X_ATTRIBUTE23 is null)))
337 AND ((recinfo.ATTRIBUTE24 = X_ATTRIBUTE24)
338 OR ((recinfo.ATTRIBUTE24 is null) AND (X_ATTRIBUTE24 is null)))
339 AND ((recinfo.ATTRIBUTE25 = X_ATTRIBUTE25)
340 OR ((recinfo.ATTRIBUTE25 is null) AND (X_ATTRIBUTE25 is null)))
341 AND ((recinfo.ATTRIBUTE26 = X_ATTRIBUTE26)
342 OR ((recinfo.ATTRIBUTE26 is null) AND (X_ATTRIBUTE26 is null)))
343 AND ((recinfo.ATTRIBUTE27 = X_ATTRIBUTE27)
344 OR ((recinfo.ATTRIBUTE27 is null) AND (X_ATTRIBUTE27 is null)))
345 AND ((recinfo.ATTRIBUTE28 = X_ATTRIBUTE28)
346 OR ((recinfo.ATTRIBUTE28 is null) AND (X_ATTRIBUTE28 is null)))
347 AND ((recinfo.ATTRIBUTE29 = X_ATTRIBUTE29)
348 OR ((recinfo.ATTRIBUTE29 is null) AND (X_ATTRIBUTE29 is null)))
349 AND ((recinfo.ATTRIBUTE30 = X_ATTRIBUTE30)
350 OR ((recinfo.ATTRIBUTE30 is null) AND (X_ATTRIBUTE30 is null)))
351 AND ((recinfo.DELETE_MARK = X_DELETE_MARK)
352 OR ((recinfo.DELETE_MARK is null) AND (X_DELETE_MARK is null)))
353 AND ((recinfo.STATUS_TYPE = X_STATUS_TYPE)
354 OR ((recinfo.STATUS_TYPE is null) AND (X_STATUS_TYPE is null)))
355 ) then
356 null;
357 else
358 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
359 app_exception.raise_exception;
360 end if;
361
362 for tlinfo in c1 loop
363 if (tlinfo.BASELANG = 'Y') then
364 if ( (tlinfo.DESCRIPTION = X_DESCRIPTION)
365 AND (tlinfo.MEANING = X_MEANING)
366 ) then
367 null;
368 else
369 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
370 app_exception.raise_exception;
371 end if;
372 end if;
373 end loop;
374 return;
375 end LOCK_ROW;
376
377 procedure UPDATE_ROW (
378 X_STATUS_CODE in VARCHAR2,
379 X_VERSION_ENABLED in VARCHAR2,
380 X_UPDATEABLE in VARCHAR2,
381 X_ATTRIBUTE_CATEGORY in VARCHAR2,
382 X_ATTRIBUTE1 in VARCHAR2,
383 X_ATTRIBUTE2 in VARCHAR2,
384 X_ATTRIBUTE3 in VARCHAR2,
385 X_ATTRIBUTE4 in VARCHAR2,
386 X_ATTRIBUTE5 in VARCHAR2,
387 X_ATTRIBUTE6 in VARCHAR2,
388 X_ATTRIBUTE7 in VARCHAR2,
389 X_ATTRIBUTE8 in VARCHAR2,
390 X_ATTRIBUTE9 in VARCHAR2,
391 X_ATTRIBUTE10 in VARCHAR2,
392 X_ATTRIBUTE11 in VARCHAR2,
393 X_ATTRIBUTE12 in VARCHAR2,
394 X_ATTRIBUTE13 in VARCHAR2,
395 X_ATTRIBUTE14 in VARCHAR2,
396 X_ATTRIBUTE15 in VARCHAR2,
397 X_ATTRIBUTE16 in VARCHAR2,
398 X_ATTRIBUTE17 in VARCHAR2,
399 X_ATTRIBUTE18 in VARCHAR2,
400 X_ATTRIBUTE19 in VARCHAR2,
401 X_ATTRIBUTE20 in VARCHAR2,
402 X_ATTRIBUTE21 in VARCHAR2,
403 X_ATTRIBUTE22 in VARCHAR2,
404 X_ATTRIBUTE23 in VARCHAR2,
405 X_ATTRIBUTE24 in VARCHAR2,
406 X_ATTRIBUTE25 in VARCHAR2,
407 X_ATTRIBUTE26 in VARCHAR2,
408 X_ATTRIBUTE27 in VARCHAR2,
409 X_ATTRIBUTE28 in VARCHAR2,
410 X_ATTRIBUTE29 in VARCHAR2,
411 X_ATTRIBUTE30 in VARCHAR2,
412 X_DESCRIPTION in VARCHAR2,
413 X_MEANING in VARCHAR2,
414 X_LAST_UPDATE_DATE in DATE,
415 X_LAST_UPDATED_BY in NUMBER,
416 X_LAST_UPDATE_LOGIN in NUMBER,
417 X_DELETE_MARK in NUMBER,
418 X_STATUS_TYPE in VARCHAR2
419 ) is
420 begin
421 update GMD_STATUS_B set
422 VERSION_ENABLED = X_VERSION_ENABLED,
423 UPDATEABLE = X_UPDATEABLE,
424 ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY,
425 ATTRIBUTE1 = X_ATTRIBUTE1,
426 ATTRIBUTE2 = X_ATTRIBUTE2,
427 ATTRIBUTE3 = X_ATTRIBUTE3,
428 ATTRIBUTE4 = X_ATTRIBUTE4,
429 ATTRIBUTE5 = X_ATTRIBUTE5,
430 ATTRIBUTE6 = X_ATTRIBUTE6,
431 ATTRIBUTE7 = X_ATTRIBUTE7,
432 ATTRIBUTE8 = X_ATTRIBUTE8,
433 ATTRIBUTE9 = X_ATTRIBUTE9,
434 ATTRIBUTE10 = X_ATTRIBUTE10,
435 ATTRIBUTE11 = X_ATTRIBUTE11,
436 ATTRIBUTE12 = X_ATTRIBUTE12,
437 ATTRIBUTE13 = X_ATTRIBUTE13,
438 ATTRIBUTE14 = X_ATTRIBUTE14,
439 ATTRIBUTE15 = X_ATTRIBUTE15,
440 ATTRIBUTE16 = X_ATTRIBUTE16,
441 ATTRIBUTE17 = X_ATTRIBUTE17,
442 ATTRIBUTE18 = X_ATTRIBUTE18,
443 ATTRIBUTE19 = X_ATTRIBUTE19,
444 ATTRIBUTE20 = X_ATTRIBUTE20,
445 ATTRIBUTE21 = X_ATTRIBUTE21,
446 ATTRIBUTE22 = X_ATTRIBUTE22,
447 ATTRIBUTE23 = X_ATTRIBUTE23,
448 ATTRIBUTE24 = X_ATTRIBUTE24,
452 ATTRIBUTE28 = X_ATTRIBUTE28,
449 ATTRIBUTE25 = X_ATTRIBUTE25,
450 ATTRIBUTE26 = X_ATTRIBUTE26,
451 ATTRIBUTE27 = X_ATTRIBUTE27,
453 ATTRIBUTE29 = X_ATTRIBUTE29,
454 ATTRIBUTE30 = X_ATTRIBUTE30,
455 DELETE_MARK = X_DELETE_MARK,
456 STATUS_TYPE = X_STATUS_TYPE,
457 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
458 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
459 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
460 where STATUS_CODE = X_STATUS_CODE;
461
462 if (sql%notfound) then
463 raise no_data_found;
464 end if;
465
466 update GMD_STATUS_TL set
467 DESCRIPTION = X_DESCRIPTION,
468 MEANING = X_MEANING,
469 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
470 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
471 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
472 SOURCE_LANG = userenv('LANG')
473 where STATUS_CODE = X_STATUS_CODE
474 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
475
476 if (sql%notfound) then
477 raise no_data_found;
478 end if;
479 end UPDATE_ROW;
480
481 procedure DELETE_ROW (
482 X_STATUS_CODE in VARCHAR2
483 ) is
484 begin
485 delete from GMD_STATUS_TL
486 where STATUS_CODE = X_STATUS_CODE;
487
488 if (sql%notfound) then
489 raise no_data_found;
490 end if;
491
492 delete from GMD_STATUS_B
493 where STATUS_CODE = X_STATUS_CODE;
494
495 if (sql%notfound) then
496 raise no_data_found;
497 end if;
498 end DELETE_ROW;
499
500 procedure ADD_LANGUAGE
501 is
502 begin
503 delete from GMD_STATUS_TL T
504 where not exists
505 (select NULL
506 from GMD_STATUS_B B
507 where B.STATUS_CODE = T.STATUS_CODE
508 );
509
510 update GMD_STATUS_TL T set (
511 DESCRIPTION,
512 MEANING
513 ) = (select
514 B.DESCRIPTION,
515 B.MEANING
516 from GMD_STATUS_TL B
517 where B.STATUS_CODE = T.STATUS_CODE
518 and B.LANGUAGE = T.SOURCE_LANG)
519 where (
520 T.STATUS_CODE,
521 T.LANGUAGE
522 ) in (select
523 SUBT.STATUS_CODE,
524 SUBT.LANGUAGE
525 from GMD_STATUS_TL SUBB, GMD_STATUS_TL SUBT
526 where SUBB.STATUS_CODE = SUBT.STATUS_CODE
527 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
528 and (SUBB.DESCRIPTION <> SUBT.DESCRIPTION
529 or SUBB.MEANING <> SUBT.MEANING
530 ));
531
532 insert into GMD_STATUS_TL (
533 MEANING,
534 STATUS_CODE,
535 DESCRIPTION,
536 LAST_UPDATE_DATE,
537 LAST_UPDATE_LOGIN,
538 LAST_UPDATED_BY,
539 CREATION_DATE,
540 CREATED_BY,
541 LANGUAGE,
542 SOURCE_LANG
543 ) select
544 B.MEANING,
545 B.STATUS_CODE,
546 B.DESCRIPTION,
547 B.LAST_UPDATE_DATE,
548 B.LAST_UPDATE_LOGIN,
549 B.LAST_UPDATED_BY,
550 B.CREATION_DATE,
551 B.CREATED_BY,
552 L.LANGUAGE_CODE,
553 B.SOURCE_LANG
554 from GMD_STATUS_TL B, FND_LANGUAGES L
555 where L.INSTALLED_FLAG in ('I', 'B')
556 and B.LANGUAGE = userenv('LANG')
557 and not exists
558 (select NULL
559 from GMD_STATUS_TL T
560 where T.STATUS_CODE = B.STATUS_CODE
561 and T.LANGUAGE = L.LANGUAGE_CODE);
562 end ADD_LANGUAGE;
563
564 /* Two more procedures for NLS translation */
565 PROCEDURE TRANSLATE_ROW (
566 X_UPDATEABLE IN VARCHAR2
567 ,X_STATUS_TYPE IN VARCHAR2
568 ,X_VERSION_ENABLED IN VARCHAR2
569 ,X_DELETE_MARK IN NUMBER
570 ,X_STATUS_CODE IN VARCHAR2
571 ,X_DESCRIPTION IN VARCHAR2
572 ,X_MEANING IN VARCHAR2
573 ,X_OWNER IN NUMBER
574 ) IS
575 BEGIN
576 UPDATE GMD_STATUS_TL SET
577 /* Bug 2478592 - Thomas Daniel */
578 /* Added the update to the meaning column */
579 MEANING = X_MEANING,
580 DESCRIPTION = X_DESCRIPTION,
581 SOURCE_LANG = USERENV('LANG'),
582 LAST_UPDATE_DATE = sysdate,
583 LAST_UPDATED_BY = X_owner,
584 LAST_UPDATE_LOGIN = 0
585 WHERE (STATUS_CODE = X_STATUS_CODE)
586 AND (USERENV('LANG') IN (LANGUAGE, SOURCE_LANG));
587
588 END TRANSLATE_ROW;
589
590 PROCEDURE LOAD_ROW (
591 X_UPDATEABLE IN VARCHAR2
592 ,X_STATUS_TYPE IN VARCHAR2
593 ,X_VERSION_ENABLED IN VARCHAR2
594 ,X_DELETE_MARK IN NUMBER
595 ,X_STATUS_CODE IN VARCHAR2
596 ,X_DESCRIPTION IN VARCHAR2
597 ,X_MEANING IN VARCHAR2
598 ,X_OWNER IN NUMBER
599 ) IS
600
601 CURSOR Cur_rowid IS
602 SELECT rowid
603 FROM GMD_STATUS_TL
604 WHERE (STATUS_CODE = X_STATUS_CODE);
605
606 l_row_id VARCHAR2(64) ;
607 l_return_status VARCHAR2(1) ;
608
609 BEGIN
610 OPEN Cur_rowid;
611 FETCH Cur_rowid INTO l_row_id;
612
613 IF Cur_rowid%FOUND THEN
614 GMD_STATUS_MLS.UPDATE_ROW (
615 X_STATUS_CODE => X_STATUS_CODE ,
616 X_VERSION_ENABLED => X_VERSION_ENABLED ,
617 X_UPDATEABLE => X_UPDATEABLE ,
618 X_ATTRIBUTE_CATEGORY => NULL ,
619 X_ATTRIBUTE1 => NULL ,
620 X_ATTRIBUTE2 => NULL ,
621 X_ATTRIBUTE3 => NULL ,
622 X_ATTRIBUTE4 => NULL ,
623 X_ATTRIBUTE5 => NULL ,
624 X_ATTRIBUTE6 => NULL ,
625 X_ATTRIBUTE7 => NULL ,
626 X_ATTRIBUTE8 => NULL ,
627 X_ATTRIBUTE9 => NULL ,
628 X_ATTRIBUTE10 => NULL ,
629 X_ATTRIBUTE11 => NULL ,
630 X_ATTRIBUTE12 => NULL ,
631 X_ATTRIBUTE13 => NULL ,
632 X_ATTRIBUTE14 => NULL ,
633 X_ATTRIBUTE15 => NULL ,
634 X_ATTRIBUTE16 => NULL ,
635 X_ATTRIBUTE17 => NULL ,
636 X_ATTRIBUTE18 => NULL ,
637 X_ATTRIBUTE19 => NULL ,
638 X_ATTRIBUTE20 => NULL ,
639 X_ATTRIBUTE21 => NULL ,
640 X_ATTRIBUTE22 => NULL ,
641 X_ATTRIBUTE23 => NULL ,
642 X_ATTRIBUTE24 => NULL ,
643 X_ATTRIBUTE25 => NULL ,
644 X_ATTRIBUTE26 => NULL ,
648 X_ATTRIBUTE30 => NULL ,
645 X_ATTRIBUTE27 => NULL ,
646 X_ATTRIBUTE28 => NULL ,
647 X_ATTRIBUTE29 => NULL ,
649 X_DESCRIPTION => X_DESCRIPTION ,
650 X_MEANING => X_MEANING ,
651 X_LAST_UPDATE_DATE => sysdate ,
652 X_LAST_UPDATED_BY => X_owner ,
653 X_LAST_UPDATE_LOGIN => 0 ,
654 X_DELETE_MARK => X_DELETE_MARK ,
655 X_STATUS_TYPE => X_STATUS_TYPE
656 );
657 ELSE
658 GMD_STATUS_MLS.INSERT_ROW (
659 X_ROWID => l_row_id ,
660 X_STATUS_CODE => X_STATUS_CODE ,
661 X_VERSION_ENABLED => X_VERSION_ENABLED ,
662 X_UPDATEABLE => X_UPDATEABLE ,
663 X_ATTRIBUTE_CATEGORY => NULL ,
664 X_ATTRIBUTE1 => NULL ,
665 X_ATTRIBUTE2 => NULL ,
666 X_ATTRIBUTE3 => NULL ,
667 X_ATTRIBUTE4 => NULL ,
668 X_ATTRIBUTE5 => NULL ,
669 X_ATTRIBUTE6 => NULL ,
670 X_ATTRIBUTE7 => NULL ,
671 X_ATTRIBUTE8 => NULL ,
672 X_ATTRIBUTE9 => NULL ,
673 X_ATTRIBUTE10 => NULL ,
674 X_ATTRIBUTE11 => NULL ,
675 X_ATTRIBUTE12 => NULL ,
676 X_ATTRIBUTE13 => NULL ,
677 X_ATTRIBUTE14 => NULL ,
678 X_ATTRIBUTE15 => NULL ,
679 X_ATTRIBUTE16 => NULL ,
680 X_ATTRIBUTE17 => NULL ,
681 X_ATTRIBUTE18 => NULL ,
682 X_ATTRIBUTE19 => NULL ,
683 X_ATTRIBUTE20 => NULL ,
684 X_ATTRIBUTE21 => NULL ,
685 X_ATTRIBUTE22 => NULL ,
686 X_ATTRIBUTE23 => NULL ,
687 X_ATTRIBUTE24 => NULL ,
688 X_ATTRIBUTE25 => NULL ,
689 X_ATTRIBUTE26 => NULL ,
690 X_ATTRIBUTE27 => NULL ,
691 X_ATTRIBUTE28 => NULL ,
692 X_ATTRIBUTE29 => NULL ,
693 X_ATTRIBUTE30 => NULL ,
694 X_DESCRIPTION => X_DESCRIPTION ,
695 X_MEANING => X_MEANING ,
696 X_CREATION_DATE => sysdate ,
697 X_CREATED_BY => X_owner ,
698 X_LAST_UPDATE_DATE => sysdate ,
699 X_LAST_UPDATED_BY => X_owner ,
700 X_LAST_UPDATE_LOGIN => 0 ,
701 X_DELETE_MARK => X_DELETE_MARK ,
702 X_STATUS_TYPE => X_STATUS_TYPE
703 );
704 END IF;
705
706 CLOSE Cur_rowid;
707
708 END LOAD_ROW;
709
710
711 end GMD_STATUS_MLS;