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