[Home] [Help]
PACKAGE BODY: APPS.AR_BPA_TEMPLATES_PKG
Source
1 package body AR_BPA_TEMPLATES_PKG as
2 /* $Header: ARBPTMPB.pls 120.4 2006/01/10 01:33:23 lishao noship $ */
3 procedure INSERT_ROW (
4 X_ROWID in out nocopy VARCHAR2,
5 X_TEMPLATE_ID in NUMBER,
6 X_REF_TEMPLATE_ID in NUMBER,
7 X_PRIMARY_APP_ID in NUMBER,
8 X_SECONDARY_APP_ID in NUMBER,
9 X_CONTRACT_LINE_TYPE in VARCHAR2,
10 X_SHOW_LINE_DETAILS_FLAG in VARCHAR2,
11 X_SHOW_LINE_GROUPING_FLAG in VARCHAR2,
12 X_SHOW_SEQUENCE_FLAG in VARCHAR2,
13 X_SHOW_ITEMIZED_TAX_FLAG in VARCHAR2,
14 X_USE_AR_TAXOPTION_FLAG in VARCHAR2,
15 X_TAX_SUMMARY_GRPBY in VARCHAR2,
16 X_COMPLETED_FLAG in VARCHAR2,
17 X_SEEDED_FLAG in VARCHAR2,
18 X_HEADER_HEIGHT in NUMBER,
19 X_FOOTER_HEIGHT in NUMBER,
20 X_HEADER_SHOW_TYPE in VARCHAR2,
21 X_FOOTER_SHOW_TYPE in VARCHAR2,
22 X_PAGE_WIDTH in NUMBER,
23 X_PAGE_HEIGHT in NUMBER,
24 X_TOP_MARGIN in NUMBER,
25 X_BOTTOM_MARGIN in NUMBER,
26 X_LEFT_MARGIN in NUMBER,
27 X_RIGHT_MARGIN in NUMBER,
28 X_PAGE_NUMBER_LOC in VARCHAR2,
29 X_PAGE_SETUP_ID in NUMBER,
30 X_SECONDARY_HEADER_HEIGHT in NUMBER,
31 X_EXTERNAL_TEMPLATE_FLAG IN VARCHAR2,
32 X_PRINT_LINES_FLAG IN VARCHAR2,
33 X_TEMPLATE_TYPE IN VARCHAR2,
34 X_TEMPLATE_NAME in VARCHAR2,
35 X_TEMPLATE_DESCRIPTION in VARCHAR2,
36 X_PRINT_FONT_FAMILY in VARCHAR2,
37 X_PRINT_FONT_SIZE in VARCHAR2,
38 X_TRX_CLASS in VARCHAR2,
39 X_TEMPLATE_FORMAT in VARCHAR2,
40 X_CREATION_DATE in DATE,
41 X_CREATED_BY in NUMBER,
42 X_LAST_UPDATE_DATE in DATE,
43 X_LAST_UPDATED_BY in NUMBER,
44 X_LAST_UPDATE_LOGIN in NUMBER
45 ) is
46 cursor C is select ROWID from AR_BPA_TEMPLATES_B
47 where TEMPLATE_ID = X_TEMPLATE_ID
48 ;
49 begin
50 insert into AR_BPA_TEMPLATES_B (
51 TEMPLATE_ID,
52 REF_TEMPLATE_ID,
53 PRIMARY_APP_ID,
54 SECONDARY_APP_ID,
55 CONTRACT_LINE_TYPE,
56 SHOW_LINE_DETAILS_FLAG,
57 SHOW_LINE_GROUPING_FLAG,
58 SHOW_SEQUENCE_FLAG,
59 SHOW_ITEMIZED_TAX_FLAG,
60 USE_AR_TAXOPTION_FLAG,
61 TAX_SUMMARY_GRPBY,
62 COMPLETED_FLAG,
63 SEEDED_FLAG,
64 HEADER_HEIGHT,
65 FOOTER_HEIGHT,
66 HEADER_SHOW_TYPE,
67 FOOTER_SHOW_TYPE,
68 PAGE_WIDTH,
69 PAGE_HEIGHT,
70 TOP_MARGIN,
71 BOTTOM_MARGIN,
72 LEFT_MARGIN,
73 RIGHT_MARGIN,
74 PAGE_NUMBER_LOC,
75 PAGE_SETUP_ID,
76 SECONDARY_HEADER_HEIGHT,
77 EXTERNAL_TEMPLATE_FLAG,
78 PRINT_LINES_FLAG,
79 TEMPLATE_TYPE,
80 PRINT_FONT_FAMILY,
81 PRINT_FONT_SIZE,
82 TRX_CLASS,
83 TEMPLATE_FORMAT,
84 CREATION_DATE,
85 CREATED_BY,
86 LAST_UPDATE_DATE,
87 LAST_UPDATED_BY,
88 LAST_UPDATE_LOGIN
89 ) values (
90 X_TEMPLATE_ID,
91 X_REF_TEMPLATE_ID,
92 X_PRIMARY_APP_ID,
93 X_SECONDARY_APP_ID,
94 X_CONTRACT_LINE_TYPE,
95 X_SHOW_LINE_DETAILS_FLAG,
96 X_SHOW_LINE_GROUPING_FLAG,
97 X_SHOW_SEQUENCE_FLAG,
98 X_SHOW_ITEMIZED_TAX_FLAG,
99 X_USE_AR_TAXOPTION_FLAG,
100 X_TAX_SUMMARY_GRPBY,
101 X_COMPLETED_FLAG,
102 X_SEEDED_FLAG,
103 X_HEADER_HEIGHT,
104 X_FOOTER_HEIGHT,
105 X_HEADER_SHOW_TYPE,
106 X_FOOTER_SHOW_TYPE,
107 X_PAGE_WIDTH,
108 X_PAGE_HEIGHT,
109 X_TOP_MARGIN,
110 X_BOTTOM_MARGIN,
111 X_LEFT_MARGIN,
112 X_RIGHT_MARGIN,
113 X_PAGE_NUMBER_LOC,
114 X_PAGE_SETUP_ID,
115 X_SECONDARY_HEADER_HEIGHT,
116 X_EXTERNAL_TEMPLATE_FLAG,
117 X_PRINT_LINES_FLAG,
118 X_TEMPLATE_TYPE,
119 X_PRINT_FONT_FAMILY,
120 X_PRINT_FONT_SIZE,
121 X_TRX_CLASS,
122 X_TEMPLATE_FORMAT,
123 X_CREATION_DATE,
124 X_CREATED_BY,
125 X_LAST_UPDATE_DATE,
126 X_LAST_UPDATED_BY,
127 X_LAST_UPDATE_LOGIN
128 );
129
130 insert into AR_BPA_TEMPLATES_TL (
131 TEMPLATE_ID,
132 TEMPLATE_NAME,
133 TEMPLATE_DESCRIPTION,
134 CREATED_BY,
135 CREATION_DATE,
136 LAST_UPDATED_BY,
137 LAST_UPDATE_DATE,
138 LAST_UPDATE_LOGIN,
139 LANGUAGE,
140 SOURCE_LANG
141 ) select
142 X_TEMPLATE_ID,
143 X_TEMPLATE_NAME,
144 X_TEMPLATE_DESCRIPTION,
145 X_CREATED_BY,
146 X_CREATION_DATE,
147 X_LAST_UPDATED_BY,
148 X_LAST_UPDATE_DATE,
149 X_LAST_UPDATE_LOGIN,
150 L.LANGUAGE_CODE,
151 userenv('LANG')
152 from FND_LANGUAGES L
153 where L.INSTALLED_FLAG in ('I', 'B')
154 and not exists
155 (select NULL
156 from AR_BPA_TEMPLATES_TL T
157 where T.TEMPLATE_ID = X_TEMPLATE_ID
158 and T.LANGUAGE = L.LANGUAGE_CODE);
159
160 open c;
161 fetch c into X_ROWID;
162 if (c%notfound) then
163 close c;
164 raise no_data_found;
165 end if;
166 close c;
167
168 end INSERT_ROW;
169
170 procedure LOCK_ROW (
171 X_TEMPLATE_ID in NUMBER,
172 X_REF_TEMPLATE_ID in NUMBER,
173 X_PRIMARY_APP_ID in NUMBER,
174 X_SECONDARY_APP_ID in NUMBER,
175 X_CONTRACT_LINE_TYPE in VARCHAR2,
176 X_SHOW_LINE_DETAILS_FLAG in VARCHAR2,
177 X_SHOW_LINE_GROUPING_FLAG in VARCHAR2,
178 X_SHOW_SEQUENCE_FLAG in VARCHAR2,
179 X_SHOW_ITEMIZED_TAX_FLAG in VARCHAR2,
180 X_USE_AR_TAXOPTION_FLAG in VARCHAR2,
181 X_TAX_SUMMARY_GRPBY in VARCHAR2,
182 X_COMPLETED_FLAG in VARCHAR2,
183 X_SEEDED_FLAG in VARCHAR2,
184 X_HEADER_HEIGHT in NUMBER,
185 X_FOOTER_HEIGHT in NUMBER,
186 X_HEADER_SHOW_TYPE in VARCHAR2,
187 X_FOOTER_SHOW_TYPE in VARCHAR2,
188 X_PAGE_WIDTH in NUMBER,
189 X_PAGE_HEIGHT in NUMBER,
190 X_TOP_MARGIN in NUMBER,
191 X_BOTTOM_MARGIN in NUMBER,
192 X_LEFT_MARGIN in NUMBER,
193 X_RIGHT_MARGIN in NUMBER,
194 X_PAGE_NUMBER_LOC in VARCHAR2,
195 X_PAGE_SETUP_ID in NUMBER,
196 X_SECONDARY_HEADER_HEIGHT in NUMBER,
197 X_EXTERNAL_TEMPLATE_FLAG IN VARCHAR2,
198 X_PRINT_LINES_FLAG IN VARCHAR2,
199 X_TEMPLATE_TYPE IN VARCHAR2,
200 X_TEMPLATE_NAME in VARCHAR2,
201 X_TEMPLATE_DESCRIPTION in VARCHAR2,
202 X_PRINT_FONT_FAMILY in VARCHAR2,
203 X_PRINT_FONT_SIZE in VARCHAR2,
204 X_TRX_CLASS in VARCHAR2,
205 X_TEMPLATE_FORMAT in VARCHAR2
206 ) is
207 cursor c is select
208 REF_TEMPLATE_ID,
209 PRIMARY_APP_ID,
210 SECONDARY_APP_ID,
211 CONTRACT_LINE_TYPE,
212 SHOW_LINE_DETAILS_FLAG,
213 SHOW_LINE_GROUPING_FLAG,
214 SHOW_SEQUENCE_FLAG,
215 SHOW_ITEMIZED_TAX_FLAG,
216 USE_AR_TAXOPTION_FLAG,
217 TAX_SUMMARY_GRPBY,
218 COMPLETED_FLAG,
219 SEEDED_FLAG,
220 HEADER_HEIGHT,
221 FOOTER_HEIGHT,
222 HEADER_SHOW_TYPE,
223 FOOTER_SHOW_TYPE,
224 PAGE_WIDTH,
225 PAGE_HEIGHT,
226 TOP_MARGIN,
227 BOTTOM_MARGIN,
228 LEFT_MARGIN,
229 RIGHT_MARGIN,
230 PAGE_NUMBER_LOC,
231 PAGE_SETUP_ID,
232 SECONDARY_HEADER_HEIGHT,
233 EXTERNAL_TEMPLATE_FLAG,
234 PRINT_LINES_FLAG,
235 TEMPLATE_TYPE,
236 PRINT_FONT_FAMILY,
237 PRINT_FONT_SIZE,
238 TRX_CLASS,
239 TEMPLATE_FORMAT
240 from AR_BPA_TEMPLATES_B
241 where TEMPLATE_ID = X_TEMPLATE_ID
242 for update of TEMPLATE_ID nowait;
243 recinfo c%rowtype;
244
245 cursor c1 is select
246 TEMPLATE_NAME,
247 TEMPLATE_DESCRIPTION,
248 decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
249 from AR_BPA_TEMPLATES_TL
250 where TEMPLATE_ID = X_TEMPLATE_ID
251 and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
252 for update of TEMPLATE_ID nowait;
253 begin
254 open c;
255 fetch c into recinfo;
256 if (c%notfound) then
257 close c;
258 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
259 app_exception.raise_exception;
260 end if;
261 close c;
262 if ( ((recinfo.REF_TEMPLATE_ID = X_REF_TEMPLATE_ID)
263 OR ((recinfo.REF_TEMPLATE_ID is null) AND (X_REF_TEMPLATE_ID is null)))
264 AND (recinfo.PRIMARY_APP_ID = X_PRIMARY_APP_ID)
265 AND ((recinfo.SECONDARY_APP_ID = X_SECONDARY_APP_ID)
266 OR ((recinfo.SECONDARY_APP_ID is null) AND (X_SECONDARY_APP_ID is null)))
267 AND ((recinfo.CONTRACT_LINE_TYPE = X_CONTRACT_LINE_TYPE)
268 OR ((recinfo.CONTRACT_LINE_TYPE is null) AND (X_CONTRACT_LINE_TYPE is null)))
269 AND ((recinfo.SHOW_LINE_DETAILS_FLAG = X_SHOW_LINE_DETAILS_FLAG)
270 OR ((recinfo.SHOW_LINE_DETAILS_FLAG is null) AND (X_SHOW_LINE_DETAILS_FLAG is null)))
271 AND ((recinfo.SHOW_LINE_GROUPING_FLAG = X_SHOW_LINE_GROUPING_FLAG)
272 OR ((recinfo.SHOW_LINE_GROUPING_FLAG is null) AND (X_SHOW_LINE_GROUPING_FLAG is null)))
273 AND ((recinfo.SHOW_SEQUENCE_FLAG = X_SHOW_SEQUENCE_FLAG)
274 OR ((recinfo.SHOW_SEQUENCE_FLAG is null) AND (X_SHOW_SEQUENCE_FLAG is null)))
275 AND ((recinfo.SHOW_ITEMIZED_TAX_FLAG = X_SHOW_ITEMIZED_TAX_FLAG)
276 OR ((recinfo.SHOW_ITEMIZED_TAX_FLAG is null) AND (X_SHOW_ITEMIZED_TAX_FLAG is null)))
277 AND ((recinfo.USE_AR_TAXOPTION_FLAG = X_USE_AR_TAXOPTION_FLAG)
278 OR ((recinfo.USE_AR_TAXOPTION_FLAG is null) AND (X_USE_AR_TAXOPTION_FLAG is null)))
279 AND ((recinfo.TAX_SUMMARY_GRPBY = X_TAX_SUMMARY_GRPBY)
280 OR ((recinfo.TAX_SUMMARY_GRPBY is null) AND (X_TAX_SUMMARY_GRPBY is null)))
281 AND ((recinfo.COMPLETED_FLAG = X_COMPLETED_FLAG)
282 OR ((recinfo.COMPLETED_FLAG is null) AND (X_COMPLETED_FLAG is null)))
283 AND ((recinfo.SEEDED_FLAG = X_SEEDED_FLAG)
284 OR ((recinfo.SEEDED_FLAG is null) AND (X_SEEDED_FLAG is null)))
285 AND ((recinfo.HEADER_HEIGHT = X_HEADER_HEIGHT)
286 OR ((recinfo.HEADER_HEIGHT is null) AND (X_HEADER_HEIGHT is null)))
287 AND ((recinfo.FOOTER_HEIGHT = X_FOOTER_HEIGHT)
288 OR ((recinfo.FOOTER_HEIGHT is null) AND (X_FOOTER_HEIGHT is null)))
289 AND ((recinfo.HEADER_SHOW_TYPE = X_HEADER_SHOW_TYPE)
290 OR ((recinfo.HEADER_SHOW_TYPE is null) AND (X_HEADER_SHOW_TYPE is null)))
291 AND ((recinfo.FOOTER_SHOW_TYPE = X_FOOTER_SHOW_TYPE)
292 OR ((recinfo.FOOTER_SHOW_TYPE is null) AND (X_FOOTER_SHOW_TYPE is null)))
293 AND ((recinfo.PAGE_WIDTH = X_PAGE_WIDTH)
294 OR ((recinfo.PAGE_WIDTH is null) AND (X_PAGE_WIDTH is null)))
295 AND ((recinfo.PAGE_HEIGHT = X_PAGE_HEIGHT)
296 OR ((recinfo.PAGE_HEIGHT is null) AND (X_PAGE_HEIGHT is null)))
297 AND ((recinfo.TOP_MARGIN = X_TOP_MARGIN)
298 OR ((recinfo.TOP_MARGIN is null) AND (X_TOP_MARGIN is null)))
299 AND ((recinfo.BOTTOM_MARGIN = X_BOTTOM_MARGIN)
300 OR ((recinfo.BOTTOM_MARGIN is null) AND (X_BOTTOM_MARGIN is null)))
301 AND ((recinfo.LEFT_MARGIN = X_LEFT_MARGIN)
302 OR ((recinfo.LEFT_MARGIN is null) AND (X_LEFT_MARGIN is null)))
303 AND ((recinfo.RIGHT_MARGIN = X_RIGHT_MARGIN)
304 OR ((recinfo.RIGHT_MARGIN is null) AND (X_RIGHT_MARGIN is null)))
305 AND ((recinfo.PAGE_NUMBER_LOC = X_PAGE_NUMBER_LOC)
306 OR ((recinfo.PAGE_NUMBER_LOC is null) AND (X_PAGE_NUMBER_LOC is null)))
307 AND ((recinfo.PAGE_SETUP_ID = X_PAGE_SETUP_ID)
308 OR ((recinfo.PAGE_SETUP_ID is null) AND (X_PAGE_SETUP_ID is null)))
309 AND ((recinfo.SECONDARY_HEADER_HEIGHT = X_SECONDARY_HEADER_HEIGHT)
310 OR ((recinfo.SECONDARY_HEADER_HEIGHT is null) AND (X_SECONDARY_HEADER_HEIGHT is null)))
311 AND ((recinfo.EXTERNAL_TEMPLATE_FLAG = X_EXTERNAL_TEMPLATE_FLAG )
312 OR ((recinfo.EXTERNAL_TEMPLATE_FLAG is null) AND (X_EXTERNAL_TEMPLATE_FLAG is null)))
313 AND ((recinfo.TEMPLATE_TYPE = X_TEMPLATE_TYPE)
314 OR ((recinfo.TEMPLATE_TYPE is null) AND (X_TEMPLATE_TYPE is null)))
315 AND ((recinfo.PRINT_LINES_FLAG = X_PRINT_LINES_FLAG )
316 OR ((recinfo.PRINT_LINES_FLAG is null) AND (X_PRINT_LINES_FLAG is null)))
317 AND ((recinfo.PRINT_FONT_FAMILY = X_PRINT_FONT_FAMILY )
318 OR ((recinfo.PRINT_FONT_FAMILY is null) AND (X_PRINT_FONT_FAMILY is null)))
319 AND ((recinfo.PRINT_FONT_SIZE = X_PRINT_FONT_SIZE )
320 OR ((recinfo.PRINT_FONT_SIZE is null) AND (X_PRINT_FONT_SIZE is null)))
321 AND ((recinfo.TRX_CLASS = X_TRX_CLASS )
322 OR ((recinfo.TRX_CLASS is null) AND (X_TRX_CLASS is null)))
323 AND ((recinfo.TEMPLATE_FORMAT = X_TEMPLATE_FORMAT )
324 OR ((recinfo.TEMPLATE_FORMAT is null) AND (X_TEMPLATE_FORMAT is null)))
325 ) then
326 null;
327 else
328 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
329 app_exception.raise_exception;
330 end if;
331
332 for tlinfo in c1 loop
333 if (tlinfo.BASELANG = 'Y') then
334 if ( (tlinfo.TEMPLATE_NAME = X_TEMPLATE_NAME)
335 AND ((tlinfo.TEMPLATE_DESCRIPTION = X_TEMPLATE_DESCRIPTION)
336 OR ((tlinfo.TEMPLATE_DESCRIPTION is null) AND (X_TEMPLATE_DESCRIPTION is null)))
337 ) then
338 null;
339 else
340 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
341 app_exception.raise_exception;
342 end if;
343 end if;
344 end loop;
345 return;
346 end LOCK_ROW;
347
348 procedure UPDATE_ROW (
349 X_TEMPLATE_ID in NUMBER,
350 X_REF_TEMPLATE_ID in NUMBER,
351 X_PRIMARY_APP_ID in NUMBER,
352 X_SECONDARY_APP_ID in NUMBER,
353 X_CONTRACT_LINE_TYPE in VARCHAR2,
354 X_SHOW_LINE_DETAILS_FLAG in VARCHAR2,
355 X_SHOW_LINE_GROUPING_FLAG in VARCHAR2,
356 X_SHOW_SEQUENCE_FLAG in VARCHAR2,
357 X_SHOW_ITEMIZED_TAX_FLAG in VARCHAR2,
358 X_USE_AR_TAXOPTION_FLAG in VARCHAR2,
359 X_TAX_SUMMARY_GRPBY in VARCHAR2,
360 X_COMPLETED_FLAG in VARCHAR2,
361 X_SEEDED_FLAG in VARCHAR2,
362 X_HEADER_HEIGHT in NUMBER,
363 X_FOOTER_HEIGHT in NUMBER,
364 X_HEADER_SHOW_TYPE in VARCHAR2,
365 X_FOOTER_SHOW_TYPE in VARCHAR2,
366 X_PAGE_WIDTH in NUMBER,
367 X_PAGE_HEIGHT in NUMBER,
368 X_TOP_MARGIN in NUMBER,
369 X_BOTTOM_MARGIN in NUMBER,
370 X_LEFT_MARGIN in NUMBER,
371 X_RIGHT_MARGIN in NUMBER,
372 X_PAGE_NUMBER_LOC in VARCHAR2,
373 X_PAGE_SETUP_ID in NUMBER,
374 X_SECONDARY_HEADER_HEIGHT in NUMBER,
375 X_EXTERNAL_TEMPLATE_FLAG IN VARCHAR2,
376 X_PRINT_LINES_FLAG IN VARCHAR2,
377 X_TEMPLATE_TYPE IN VARCHAR2,
378 X_TEMPLATE_NAME in VARCHAR2,
379 X_TEMPLATE_DESCRIPTION in VARCHAR2,
380 X_PRINT_FONT_FAMILY in VARCHAR2,
381 X_PRINT_FONT_SIZE in VARCHAR2,
382 X_TRX_CLASS in VARCHAR2,
383 X_TEMPLATE_FORMAT in VARCHAR2,
384 X_LAST_UPDATE_DATE in DATE,
385 X_LAST_UPDATED_BY in NUMBER,
386 X_LAST_UPDATE_LOGIN in NUMBER
387 ) is
388 begin
389 update AR_BPA_TEMPLATES_B set
390 REF_TEMPLATE_ID = X_REF_TEMPLATE_ID,
391 PRIMARY_APP_ID = X_PRIMARY_APP_ID,
392 SECONDARY_APP_ID = X_SECONDARY_APP_ID,
393 CONTRACT_LINE_TYPE = X_CONTRACT_LINE_TYPE,
394 SHOW_LINE_DETAILS_FLAG = X_SHOW_LINE_DETAILS_FLAG,
395 SHOW_LINE_GROUPING_FLAG = X_SHOW_LINE_GROUPING_FLAG,
396 SHOW_SEQUENCE_FLAG = X_SHOW_SEQUENCE_FLAG,
397 SHOW_ITEMIZED_TAX_FLAG = X_SHOW_ITEMIZED_TAX_FLAG,
398 USE_AR_TAXOPTION_FLAG = X_USE_AR_TAXOPTION_FLAG,
399 TAX_SUMMARY_GRPBY = X_TAX_SUMMARY_GRPBY,
400 COMPLETED_FLAG = X_COMPLETED_FLAG,
401 SEEDED_FLAG = X_SEEDED_FLAG,
402 HEADER_HEIGHT = X_HEADER_HEIGHT,
403 FOOTER_HEIGHT = X_FOOTER_HEIGHT,
404 HEADER_SHOW_TYPE = X_HEADER_SHOW_TYPE,
405 FOOTER_SHOW_TYPE = X_FOOTER_SHOW_TYPE,
406 PAGE_WIDTH = X_PAGE_WIDTH,
407 PAGE_HEIGHT = X_PAGE_HEIGHT,
408 TOP_MARGIN = X_TOP_MARGIN,
409 BOTTOM_MARGIN = X_BOTTOM_MARGIN,
410 LEFT_MARGIN = X_LEFT_MARGIN,
411 RIGHT_MARGIN = X_RIGHT_MARGIN,
412 PAGE_NUMBER_LOC = X_PAGE_NUMBER_LOC,
413 PAGE_SETUP_ID = X_PAGE_SETUP_ID,
414 SECONDARY_HEADER_HEIGHT = X_SECONDARY_HEADER_HEIGHT,
415 EXTERNAL_TEMPLATE_FLAG = X_EXTERNAL_TEMPLATE_FLAG,
416 PRINT_LINES_FLAG = X_PRINT_LINES_FLAG ,
417 TEMPLATE_TYPE = X_TEMPLATE_TYPE,
418 PRINT_FONT_FAMILY = X_PRINT_FONT_FAMILY,
419 PRINT_FONT_SIZE = X_PRINT_FONT_SIZE,
420 TRX_CLASS = X_TRX_CLASS,
421 TEMPLATE_FORMAT = X_TEMPLATE_FORMAT,
422 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
423 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
424 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
425 where TEMPLATE_ID = X_TEMPLATE_ID;
426
427 if (sql%notfound) then
428 raise no_data_found;
429 end if;
430
434 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
431 update AR_BPA_TEMPLATES_TL set
432 TEMPLATE_NAME = X_TEMPLATE_NAME,
433 TEMPLATE_DESCRIPTION = X_TEMPLATE_DESCRIPTION,
435 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
436 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
437 SOURCE_LANG = userenv('LANG')
438 where TEMPLATE_ID = X_TEMPLATE_ID
439 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
440
441 if (sql%notfound) then
442 raise no_data_found;
443 end if;
444 end UPDATE_ROW;
445
446 procedure DELETE_ROW (
447 X_TEMPLATE_ID in NUMBER
448 ) is
449 begin
450
451 /* First delete from content areas. Used by UI while deleting template to speed
452 up content area deletion. In any case without a template, it's content areas (detail)
453 mustn't exist
454 */
455 delete from AR_BPA_CONTENT_AREAS_TL
456 where content_area_id in (select content_area_id from ar_bpa_content_areas_b
457 where template_id = X_TEMPLATE_ID);
458
459 delete from AR_BPA_CONTENT_AREAS_B
460 where TEMPLATE_ID = X_TEMPLATE_ID;
461
462 delete from AR_BPA_AREA_ITEMS
463 where TEMPLATE_ID = X_TEMPLATE_ID;
464
465 delete from AR_BPA_TEMPLATE_FILES
466 where TEMPLATE_ID = X_TEMPLATE_ID;
467
468 delete from AR_BPA_TEMPLATE_FIELDS
469 where TEMPLATE_ID = X_TEMPLATE_ID;
470
471 delete from AR_BPA_TEMPLATES_TL
472 where TEMPLATE_ID = X_TEMPLATE_ID;
473
474 if (sql%notfound) then
475 raise no_data_found;
476 end if;
477
478 delete from AR_BPA_TEMPLATES_B
479 where TEMPLATE_ID = X_TEMPLATE_ID;
480
481 if (sql%notfound) then
482 raise no_data_found;
483 end if;
484 end DELETE_ROW;
485
486 procedure ADD_LANGUAGE
487 is
488 begin
489 delete from AR_BPA_TEMPLATES_TL T
490 where not exists
491 (select NULL
492 from AR_BPA_TEMPLATES_B B
493 where B.TEMPLATE_ID = T.TEMPLATE_ID
494 );
495
496 update AR_BPA_TEMPLATES_TL T set (
497 TEMPLATE_NAME,
498 TEMPLATE_DESCRIPTION
499 ) = (select
500 B.TEMPLATE_NAME,
501 B.TEMPLATE_DESCRIPTION
502 from AR_BPA_TEMPLATES_TL B
503 where B.TEMPLATE_ID = T.TEMPLATE_ID
504 and B.LANGUAGE = T.SOURCE_LANG)
505 where (
506 T.TEMPLATE_ID,
507 T.LANGUAGE
508 ) in (select
509 SUBT.TEMPLATE_ID,
510 SUBT.LANGUAGE
511 from AR_BPA_TEMPLATES_TL SUBB, AR_BPA_TEMPLATES_TL SUBT
512 where SUBB.TEMPLATE_ID = SUBT.TEMPLATE_ID
513 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
514 and (SUBB.TEMPLATE_NAME <> SUBT.TEMPLATE_NAME
515 or SUBB.TEMPLATE_DESCRIPTION <> SUBT.TEMPLATE_DESCRIPTION
516 or (SUBB.TEMPLATE_DESCRIPTION is null and SUBT.TEMPLATE_DESCRIPTION is not null)
517 or (SUBB.TEMPLATE_DESCRIPTION is not null and SUBT.TEMPLATE_DESCRIPTION is null)
518 ));
519
520 insert into AR_BPA_TEMPLATES_TL (
521 TEMPLATE_ID,
522 TEMPLATE_NAME,
523 TEMPLATE_DESCRIPTION,
524 CREATED_BY,
525 CREATION_DATE,
526 LAST_UPDATED_BY,
527 LAST_UPDATE_DATE,
528 LAST_UPDATE_LOGIN,
529 LANGUAGE,
530 SOURCE_LANG
531 ) select /*+ ORDERED */
532 B.TEMPLATE_ID,
533 B.TEMPLATE_NAME,
534 B.TEMPLATE_DESCRIPTION,
535 B.CREATED_BY,
536 B.CREATION_DATE,
537 B.LAST_UPDATED_BY,
538 B.LAST_UPDATE_DATE,
539 B.LAST_UPDATE_LOGIN,
540 L.LANGUAGE_CODE,
541 B.SOURCE_LANG
542 from AR_BPA_TEMPLATES_TL B, FND_LANGUAGES L
543 where L.INSTALLED_FLAG in ('I', 'B')
544 and B.LANGUAGE = userenv('LANG')
545 and not exists
546 (select NULL
547 from AR_BPA_TEMPLATES_TL T
548 where T.TEMPLATE_ID = B.TEMPLATE_ID
549 and T.LANGUAGE = L.LANGUAGE_CODE);
550 end ADD_LANGUAGE;
551
552 procedure LOAD_ROW (
553 X_COMPLETED_FLAG IN VARCHAR2,
554 X_CONTRACT_LINE_TYPE IN VARCHAR2,
555 X_PRIMARY_APP_ID IN NUMBER,
556 X_REF_TEMPLATE_ID IN NUMBER,
557 X_SECONDARY_APP_ID IN NUMBER,
558 X_SEEDED_FLAG IN VARCHAR2,
559 X_SHOW_ITEMIZED_TAX_FLAG IN VARCHAR2,
560 X_SHOW_LINE_DETAILS_FLAG IN VARCHAR2,
561 X_SHOW_LINE_GROUPING_FLAG IN VARCHAR2,
562 X_SHOW_SEQUENCE_FLAG IN VARCHAR2,
563 X_TAX_SUMMARY_GRPBY IN VARCHAR2,
564 X_TEMPLATE_DESCRIPTION IN VARCHAR2,
565 X_TEMPLATE_ID IN NUMBER,
566 X_TEMPLATE_NAME IN VARCHAR2,
567 X_USE_AR_TAXOPTION_FLAG IN VARCHAR2,
568 X_HEADER_HEIGHT IN NUMBER,
569 X_FOOTER_HEIGHT IN NUMBER,
570 X_HEADER_SHOW_TYPE IN VARCHAR2,
571 X_FOOTER_SHOW_TYPE IN VARCHAR2,
572 X_PAGE_WIDTH IN NUMBER,
573 X_PAGE_HEIGHT IN NUMBER,
574 X_TOP_MARGIN IN NUMBER,
575 X_BOTTOM_MARGIN IN NUMBER,
576 X_LEFT_MARGIN IN NUMBER,
577 X_RIGHT_MARGIN IN NUMBER,
578 X_PAGE_NUMBER_LOC IN VARCHAR2,
579 X_PAGE_SETUP_ID IN NUMBER,
580 X_SECONDARY_HEADER_HEIGHT in NUMBER,
581 X_EXTERNAL_TEMPLATE_FLAG IN VARCHAR2,
582 X_PRINT_LINES_FLAG IN VARCHAR2,
583 X_TEMPLATE_TYPE IN VARCHAR2,
584 X_PRINT_FONT_FAMILY in VARCHAR2,
585 X_PRINT_FONT_SIZE in VARCHAR2,
586 X_TRX_CLASS in VARCHAR2,
587 X_TEMPLATE_FORMAT in VARCHAR2,
591 declare
588 X_OWNER IN VARCHAR2
589 ) IS
590 begin
592 user_id number := 0;
593 row_id varchar2(64);
594 begin
595 if (X_OWNER = 'SEED') then
596 user_id := 1;
597 end if;
598
599 AR_BPA_TEMPLATES_PKG.UPDATE_ROW (
600 X_TEMPLATE_ID => X_TEMPLATE_ID,
601 X_REF_TEMPLATE_ID => X_REF_TEMPLATE_ID,
602 X_PRIMARY_APP_ID => X_PRIMARY_APP_ID,
603 X_SECONDARY_APP_ID => X_SECONDARY_APP_ID,
604 X_CONTRACT_LINE_TYPE => X_CONTRACT_LINE_TYPE,
605 X_SHOW_LINE_DETAILS_FLAG => X_SHOW_LINE_DETAILS_FLAG,
606 X_SHOW_LINE_GROUPING_FLAG => X_SHOW_LINE_GROUPING_FLAG,
607 X_SHOW_SEQUENCE_FLAG => X_SHOW_SEQUENCE_FLAG,
608 X_SHOW_ITEMIZED_TAX_FLAG => X_SHOW_ITEMIZED_TAX_FLAG,
609 X_USE_AR_TAXOPTION_FLAG => X_USE_AR_TAXOPTION_FLAG,
610 X_TAX_SUMMARY_GRPBY => X_TAX_SUMMARY_GRPBY,
611 X_COMPLETED_FLAG => X_COMPLETED_FLAG,
612 X_SEEDED_FLAG => X_SEEDED_FLAG,
613 X_TEMPLATE_NAME => X_TEMPLATE_NAME,
614 X_TEMPLATE_DESCRIPTION => X_TEMPLATE_DESCRIPTION,
615 X_HEADER_HEIGHT => X_HEADER_HEIGHT ,
616 X_FOOTER_HEIGHT => X_FOOTER_HEIGHT ,
617 X_HEADER_SHOW_TYPE => X_HEADER_SHOW_TYPE ,
618 X_FOOTER_SHOW_TYPE => X_FOOTER_SHOW_TYPE ,
619 X_PAGE_WIDTH => X_PAGE_WIDTH ,
620 X_PAGE_HEIGHT => X_PAGE_HEIGHT ,
621 X_TOP_MARGIN => X_TOP_MARGIN ,
622 X_BOTTOM_MARGIN => X_BOTTOM_MARGIN ,
623 X_LEFT_MARGIN => X_LEFT_MARGIN ,
624 X_RIGHT_MARGIN => X_RIGHT_MARGIN ,
625 X_PAGE_NUMBER_LOC => X_PAGE_NUMBER_LOC ,
626 X_PAGE_SETUP_ID => X_PAGE_SETUP_ID ,
627 X_SECONDARY_HEADER_HEIGHT => X_SECONDARY_HEADER_HEIGHT ,
628 X_EXTERNAL_TEMPLATE_FLAG => X_EXTERNAL_TEMPLATE_FLAG ,
629 X_PRINT_LINES_FLAG => X_PRINT_LINES_FLAG ,
630 X_TEMPLATE_TYPE => X_TEMPLATE_TYPE ,
631 X_PRINT_FONT_FAMILY => X_PRINT_FONT_FAMILY,
632 X_PRINT_FONT_SIZE => X_PRINT_FONT_SIZE,
633 X_TRX_CLASS => X_TRX_CLASS,
634 X_TEMPLATE_FORMAT => X_TEMPLATE_FORMAT,
635 X_LAST_UPDATE_DATE => sysdate,
636 X_LAST_UPDATED_BY => user_id,
637 X_LAST_UPDATE_LOGIN => 0);
638 exception
639 when NO_DATA_FOUND then
640 AR_BPA_TEMPLATES_PKG.INSERT_ROW (
641 X_ROWID => row_id,
642 X_TEMPLATE_ID => X_TEMPLATE_ID,
643 X_REF_TEMPLATE_ID => X_REF_TEMPLATE_ID,
644 X_PRIMARY_APP_ID => X_PRIMARY_APP_ID,
645 X_SECONDARY_APP_ID => X_SECONDARY_APP_ID,
646 X_CONTRACT_LINE_TYPE => X_CONTRACT_LINE_TYPE,
647 X_SHOW_LINE_DETAILS_FLAG => X_SHOW_LINE_DETAILS_FLAG,
648 X_SHOW_LINE_GROUPING_FLAG => X_SHOW_LINE_GROUPING_FLAG,
649 X_SHOW_SEQUENCE_FLAG => X_SHOW_SEQUENCE_FLAG,
650 X_SHOW_ITEMIZED_TAX_FLAG => X_SHOW_ITEMIZED_TAX_FLAG,
651 X_USE_AR_TAXOPTION_FLAG => X_USE_AR_TAXOPTION_FLAG,
652 X_TAX_SUMMARY_GRPBY => X_TAX_SUMMARY_GRPBY,
653 X_COMPLETED_FLAG => X_COMPLETED_FLAG,
654 X_SEEDED_FLAG => X_SEEDED_FLAG,
655 X_TEMPLATE_NAME => X_TEMPLATE_NAME,
656 X_TEMPLATE_DESCRIPTION => X_TEMPLATE_DESCRIPTION,
657 X_HEADER_HEIGHT => X_HEADER_HEIGHT ,
658 X_FOOTER_HEIGHT => X_FOOTER_HEIGHT ,
659 X_HEADER_SHOW_TYPE => X_HEADER_SHOW_TYPE ,
660 X_FOOTER_SHOW_TYPE => X_FOOTER_SHOW_TYPE ,
661 X_PAGE_WIDTH => X_PAGE_WIDTH ,
662 X_PAGE_HEIGHT => X_PAGE_HEIGHT ,
663 X_TOP_MARGIN => X_TOP_MARGIN ,
664 X_BOTTOM_MARGIN => X_BOTTOM_MARGIN ,
665 X_LEFT_MARGIN => X_LEFT_MARGIN ,
666 X_RIGHT_MARGIN => X_RIGHT_MARGIN ,
667 X_PAGE_NUMBER_LOC => X_PAGE_NUMBER_LOC ,
668 X_PAGE_SETUP_ID => X_PAGE_SETUP_ID ,
669 X_SECONDARY_HEADER_HEIGHT => X_SECONDARY_HEADER_HEIGHT ,
670 X_EXTERNAL_TEMPLATE_FLAG => X_EXTERNAL_TEMPLATE_FLAG ,
671 X_PRINT_LINES_FLAG => X_PRINT_LINES_FLAG ,
672 X_TEMPLATE_TYPE => X_TEMPLATE_TYPE ,
676 X_TEMPLATE_FORMAT => X_TEMPLATE_FORMAT,
673 X_PRINT_FONT_FAMILY => X_PRINT_FONT_FAMILY,
674 X_PRINT_FONT_SIZE => X_PRINT_FONT_SIZE,
675 X_TRX_CLASS => X_TRX_CLASS,
677 X_CREATION_DATE => sysdate,
678 X_CREATED_BY => user_id,
679 X_LAST_UPDATE_DATE => sysdate,
680 X_LAST_UPDATED_BY => user_id,
681 X_LAST_UPDATE_LOGIN => 0);
682 end;
683 end LOAD_ROW;
684
685 procedure TRANSLATE_ROW (
686 X_TEMPLATE_ID in NUMBER,
687 X_TEMPLATE_NAME in VARCHAR2,
688 X_TEMPLATE_DESCRIPTION in VARCHAR2,
689 X_OWNER in VARCHAR2) IS
690 begin
691
692 update AR_BPA_TEMPLATES_TL
693 set TEMPLATE_NAME = X_TEMPLATE_NAME,
694 TEMPLATE_DESCRIPTION = X_TEMPLATE_DESCRIPTION,
695 source_lang = userenv('LANG'),
696 last_update_date = sysdate,
697 last_updated_by = decode(X_OWNER, 'SEED', 1, 0),
698 last_update_login = 0
699 where template_id = X_TEMPLATE_ID
700 and userenv('LANG') in (language, source_lang);
701
702 end TRANSLATE_ROW;
703
704 end AR_BPA_TEMPLATES_PKG;