DBA Data[Home] [Help]

PACKAGE BODY: APPS.BNE_INTEGRATORS_PKG

Source


1 package body BNE_INTEGRATORS_PKG as
2 /* $Header: bneintegb.pls 120.3 2005/08/18 07:03:24 dagroves noship $ */
3 
4 procedure INSERT_ROW (
5   X_ROWID in out NOCOPY VARCHAR2,
6   X_APPLICATION_ID in NUMBER,
7   X_INTEGRATOR_CODE in VARCHAR2,
8   X_ENABLED_FLAG in VARCHAR2,
9   X_OBJECT_VERSION_NUMBER in NUMBER,
10   X_UPLOAD_PARAM_LIST_APP_ID in NUMBER,
11   X_UPLOAD_PARAM_LIST_CODE in VARCHAR2,
12   X_UPLOAD_SERV_PARAM_LIST_APP_I in NUMBER,
13   X_UPLOAD_SERV_PARAM_LIST_CODE in VARCHAR2,
14   X_IMPORT_PARAM_LIST_APP_ID in NUMBER,
15   X_IMPORT_PARAM_LIST_CODE in VARCHAR2,
16   X_UPLOADER_CLASS in VARCHAR2,
17   X_DATE_FORMAT in VARCHAR2,
18   X_IMPORT_TYPE in NUMBER,
19   X_USER_NAME in VARCHAR2,
20   X_UPLOAD_TITLE_BAR in VARCHAR2,
21   X_UPLOAD_HEADER in VARCHAR2,
22   X_CREATION_DATE in DATE,
23   X_CREATED_BY in NUMBER,
24   X_LAST_UPDATE_DATE in DATE,
25   X_LAST_UPDATED_BY in NUMBER,
26   X_LAST_UPDATE_LOGIN in NUMBER,
27   X_CREATE_DOC_LIST_APP_ID in NUMBER,
28   X_CREATE_DOC_LIST_CODE in VARCHAR2,
29   X_NEW_SESSION_FLAG in VARCHAR2,
30   X_LAYOUT_RESOLVER_CLASS in VARCHAR2,
31   X_LAYOUT_VERIFIER_CLASS in VARCHAR2,
32   X_SESSION_CONFIG_CLASS in VARCHAR2,
33   X_SESSION_PARAM_LIST_APP_ID in NUMBER,
34   X_SESSION_PARAM_LIST_CODE in VARCHAR2,
35   X_DISPLAY_FLAG in VARCHAR2
36 ) is
37   cursor C is select ROWID from BNE_INTEGRATORS_B
38     where APPLICATION_ID = X_APPLICATION_ID
39     and INTEGRATOR_CODE = X_INTEGRATOR_CODE
40     ;
41 begin
42   insert into BNE_INTEGRATORS_B (
43     ENABLED_FLAG,
44     OBJECT_VERSION_NUMBER,
45     UPLOAD_PARAM_LIST_APP_ID,
46     UPLOAD_PARAM_LIST_CODE,
47     UPLOAD_SERV_PARAM_LIST_APP_ID,
48     UPLOAD_SERV_PARAM_LIST_CODE,
49     IMPORT_PARAM_LIST_APP_ID,
50     IMPORT_PARAM_LIST_CODE,
51     UPLOADER_CLASS,
52     DATE_FORMAT,
53     IMPORT_TYPE,
54     APPLICATION_ID,
55     INTEGRATOR_CODE,
56     CREATION_DATE,
57     CREATED_BY,
58     LAST_UPDATE_DATE,
59     LAST_UPDATED_BY,
60     LAST_UPDATE_LOGIN,
61     CREATE_DOC_LIST_APP_ID,
62     CREATE_DOC_LIST_CODE,
63     NEW_SESSION_FLAG,
64     LAYOUT_RESOLVER_CLASS,
65     LAYOUT_VERIFIER_CLASS,
66     SESSION_CONFIG_CLASS,
67     SESSION_PARAM_LIST_APP_ID,
68     SESSION_PARAM_LIST_CODE,
69     DISPLAY_FLAG
70 
71   ) values (
72     X_ENABLED_FLAG,
73     X_OBJECT_VERSION_NUMBER,
74     X_UPLOAD_PARAM_LIST_APP_ID,
75     X_UPLOAD_PARAM_LIST_CODE,
76     X_UPLOAD_SERV_PARAM_LIST_APP_I,
77     X_UPLOAD_SERV_PARAM_LIST_CODE,
78     X_IMPORT_PARAM_LIST_APP_ID,
79     X_IMPORT_PARAM_LIST_CODE,
80     X_UPLOADER_CLASS,
81     X_DATE_FORMAT,
82     X_IMPORT_TYPE,
83     X_APPLICATION_ID,
84     X_INTEGRATOR_CODE,
85     X_CREATION_DATE,
86     X_CREATED_BY,
87     X_LAST_UPDATE_DATE,
88     X_LAST_UPDATED_BY,
89     X_LAST_UPDATE_LOGIN,
90     X_CREATE_DOC_LIST_APP_ID,
91     X_CREATE_DOC_LIST_CODE,
92     X_NEW_SESSION_FLAG,
93     X_LAYOUT_RESOLVER_CLASS,
94     X_LAYOUT_VERIFIER_CLASS,
95     X_SESSION_CONFIG_CLASS,
96     X_SESSION_PARAM_LIST_APP_ID,
97     X_SESSION_PARAM_LIST_CODE,
98     X_DISPLAY_FLAG
99   );
100 
101   insert into BNE_INTEGRATORS_TL (
102     APPLICATION_ID,
103     INTEGRATOR_CODE,
104     USER_NAME,
105     UPLOAD_HEADER,
106     UPLOAD_TITLE_BAR,
107     CREATED_BY,
108     CREATION_DATE,
109     LAST_UPDATED_BY,
110     LAST_UPDATE_LOGIN,
111     LAST_UPDATE_DATE,
112     LANGUAGE,
113     SOURCE_LANG
114   ) select
115     X_APPLICATION_ID,
116     X_INTEGRATOR_CODE,
117     X_USER_NAME,
118     X_UPLOAD_HEADER,
119     X_UPLOAD_TITLE_BAR,
120     X_CREATED_BY,
121     X_CREATION_DATE,
122     X_LAST_UPDATED_BY,
123     X_LAST_UPDATE_LOGIN,
124     X_LAST_UPDATE_DATE,
125     L.LANGUAGE_CODE,
126     userenv('LANG')
127   from FND_LANGUAGES L
128   where L.INSTALLED_FLAG in ('I', 'B')
129   and not exists
130     (select NULL
131     from BNE_INTEGRATORS_TL T
132     where T.APPLICATION_ID = X_APPLICATION_ID
133     and T.INTEGRATOR_CODE = X_INTEGRATOR_CODE
134     and T.LANGUAGE = L.LANGUAGE_CODE);
135 
136   open c;
137   fetch c into X_ROWID;
138   if (c%notfound) then
139     close c;
140     raise no_data_found;
141   end if;
142   close c;
143 
144 end INSERT_ROW;
145 
146 procedure LOCK_ROW (
147   X_APPLICATION_ID in NUMBER,
148   X_INTEGRATOR_CODE in VARCHAR2,
149   X_ENABLED_FLAG in VARCHAR2,
150   X_OBJECT_VERSION_NUMBER in NUMBER,
151   X_UPLOAD_PARAM_LIST_APP_ID in NUMBER,
152   X_UPLOAD_PARAM_LIST_CODE in VARCHAR2,
153   X_UPLOAD_SERV_PARAM_LIST_APP_I in NUMBER,
154   X_UPLOAD_SERV_PARAM_LIST_CODE in VARCHAR2,
155   X_IMPORT_PARAM_LIST_APP_ID in NUMBER,
156   X_IMPORT_PARAM_LIST_CODE in VARCHAR2,
157   X_UPLOADER_CLASS in VARCHAR2,
158   X_DATE_FORMAT in VARCHAR2,
159   X_IMPORT_TYPE in NUMBER,
160   X_USER_NAME in VARCHAR2,
161   X_UPLOAD_TITLE_BAR in VARCHAR2,
162   X_UPLOAD_HEADER in VARCHAR2,
163   X_CREATE_DOC_LIST_APP_ID in NUMBER,
164   X_CREATE_DOC_LIST_CODE in VARCHAR2,
165   X_NEW_SESSION_FLAG in VARCHAR2,
166   X_LAYOUT_RESOLVER_CLASS in VARCHAR2,
167   X_LAYOUT_VERIFIER_CLASS in VARCHAR2,
168   X_SESSION_CONFIG_CLASS in VARCHAR2,
169   X_SESSION_PARAM_LIST_APP_ID in NUMBER,
170   X_SESSION_PARAM_LIST_CODE in VARCHAR2,
171   X_DISPLAY_FLAG in VARCHAR2
172 ) is
173   cursor c is select
174       ENABLED_FLAG,
175       OBJECT_VERSION_NUMBER,
176       UPLOAD_PARAM_LIST_APP_ID,
177       UPLOAD_PARAM_LIST_CODE,
178       UPLOAD_SERV_PARAM_LIST_APP_ID,
179       UPLOAD_SERV_PARAM_LIST_CODE,
180       IMPORT_PARAM_LIST_APP_ID,
181       IMPORT_PARAM_LIST_CODE,
182       UPLOADER_CLASS,
183       DATE_FORMAT,
184       IMPORT_TYPE,
185       CREATE_DOC_LIST_APP_ID,
186       CREATE_DOC_LIST_CODE,
187       NEW_SESSION_FLAG,
188       LAYOUT_RESOLVER_CLASS,
189       LAYOUT_VERIFIER_CLASS,
190       SESSION_CONFIG_CLASS,
191       SESSION_PARAM_LIST_APP_ID,
192       SESSION_PARAM_LIST_CODE,
193       DISPLAY_FLAG
194     from BNE_INTEGRATORS_B
195     where APPLICATION_ID = X_APPLICATION_ID
196     and INTEGRATOR_CODE = X_INTEGRATOR_CODE
197     for update of APPLICATION_ID nowait;
198   recinfo c%rowtype;
199 
200   cursor c1 is select
201       USER_NAME,
202       UPLOAD_TITLE_BAR,
203       UPLOAD_HEADER,
204       decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
205     from BNE_INTEGRATORS_TL
206     where APPLICATION_ID = X_APPLICATION_ID
207     and INTEGRATOR_CODE = X_INTEGRATOR_CODE
208     and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
209     for update of APPLICATION_ID nowait;
210 begin
211   open c;
212   fetch c into recinfo;
213   if (c%notfound) then
214     close c;
215     fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
216     app_exception.raise_exception;
217   end if;
218   close c;
219   if (    (recinfo.ENABLED_FLAG = X_ENABLED_FLAG)
220       AND (recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
221       AND ((recinfo.UPLOAD_PARAM_LIST_APP_ID = X_UPLOAD_PARAM_LIST_APP_ID)
222            OR ((recinfo.UPLOAD_PARAM_LIST_APP_ID is null) AND (X_UPLOAD_PARAM_LIST_APP_ID is null)))
223       AND ((recinfo.UPLOAD_PARAM_LIST_CODE = X_UPLOAD_PARAM_LIST_CODE)
224            OR ((recinfo.UPLOAD_PARAM_LIST_CODE is null) AND (X_UPLOAD_PARAM_LIST_CODE is null)))
225       AND ((recinfo.UPLOAD_SERV_PARAM_LIST_APP_ID = X_UPLOAD_SERV_PARAM_LIST_APP_I)
226            OR ((recinfo.UPLOAD_SERV_PARAM_LIST_APP_ID is null) AND (X_UPLOAD_SERV_PARAM_LIST_APP_I is null)))
227       AND ((recinfo.UPLOAD_SERV_PARAM_LIST_CODE = X_UPLOAD_SERV_PARAM_LIST_CODE)
228            OR ((recinfo.UPLOAD_SERV_PARAM_LIST_CODE is null) AND (X_UPLOAD_SERV_PARAM_LIST_CODE is null)))
229       AND ((recinfo.IMPORT_PARAM_LIST_APP_ID = X_IMPORT_PARAM_LIST_APP_ID)
230            OR ((recinfo.IMPORT_PARAM_LIST_APP_ID is null) AND (X_IMPORT_PARAM_LIST_APP_ID is null)))
231       AND ((recinfo.IMPORT_PARAM_LIST_CODE = X_IMPORT_PARAM_LIST_CODE)
232            OR ((recinfo.IMPORT_PARAM_LIST_CODE is null) AND (X_IMPORT_PARAM_LIST_CODE is null)))
233       AND ((recinfo.UPLOADER_CLASS = X_UPLOADER_CLASS)
234            OR ((recinfo.UPLOADER_CLASS is null) AND (X_UPLOADER_CLASS is null)))
235       AND (recinfo.DATE_FORMAT = X_DATE_FORMAT)
236       AND ((recinfo.IMPORT_TYPE = X_IMPORT_TYPE)
237            OR ((recinfo.IMPORT_TYPE is null) AND (X_IMPORT_TYPE is null)))
238       AND ((recinfo.CREATE_DOC_LIST_APP_ID = X_CREATE_DOC_LIST_APP_ID)
239            OR ((recinfo.CREATE_DOC_LIST_APP_ID is null) AND (X_CREATE_DOC_LIST_APP_ID is null)))
240       AND ((recinfo.CREATE_DOC_LIST_CODE = X_CREATE_DOC_LIST_CODE)
241            OR ((recinfo.CREATE_DOC_LIST_CODE is null) AND (X_CREATE_DOC_LIST_CODE is null)))
242       AND ((recinfo.NEW_SESSION_FLAG = X_NEW_SESSION_FLAG)
243            OR ((recinfo.NEW_SESSION_FLAG is null) AND (X_NEW_SESSION_FLAG is null)))
244       AND ((recinfo.LAYOUT_RESOLVER_CLASS = X_LAYOUT_RESOLVER_CLASS)
245            OR ((recinfo.LAYOUT_RESOLVER_CLASS is null) AND (X_LAYOUT_RESOLVER_CLASS is null)))
246       AND ((recinfo.LAYOUT_VERIFIER_CLASS = X_LAYOUT_VERIFIER_CLASS)
247            OR ((recinfo.LAYOUT_VERIFIER_CLASS is null) AND (X_LAYOUT_VERIFIER_CLASS is null)))
248       AND ((recinfo.SESSION_CONFIG_CLASS = X_SESSION_CONFIG_CLASS)
249            OR ((recinfo.SESSION_CONFIG_CLASS is null) AND (X_SESSION_CONFIG_CLASS is null)))
250       AND ((recinfo.SESSION_PARAM_LIST_APP_ID = X_SESSION_PARAM_LIST_APP_ID)
251            OR ((recinfo.SESSION_PARAM_LIST_APP_ID is null) AND (X_SESSION_PARAM_LIST_APP_ID is null)))
252       AND ((recinfo.SESSION_PARAM_LIST_CODE = X_SESSION_PARAM_LIST_CODE)
253            OR ((recinfo.SESSION_PARAM_LIST_CODE is null) AND (X_SESSION_PARAM_LIST_CODE is null)))
254       AND ((recinfo.DISPLAY_FLAG = X_DISPLAY_FLAG)
255            OR ((recinfo.DISPLAY_FLAG is null) AND (X_DISPLAY_FLAG is null)))
256   ) then
257     null;
258   else
259     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
260     app_exception.raise_exception;
261   end if;
262 
263   for tlinfo in c1 loop
264     if (tlinfo.BASELANG = 'Y') then
265       if (    (tlinfo.USER_NAME = X_USER_NAME)
266           AND ((tlinfo.UPLOAD_TITLE_BAR = X_UPLOAD_TITLE_BAR)
267                OR ((tlinfo.UPLOAD_TITLE_BAR is null) AND (X_UPLOAD_TITLE_BAR is null)))
268           AND ((tlinfo.UPLOAD_HEADER = X_UPLOAD_HEADER)
269                OR ((tlinfo.UPLOAD_HEADER is null) AND (X_UPLOAD_HEADER is null)))
270       ) then
271         null;
272       else
273         fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
274         app_exception.raise_exception;
275       end if;
276     end if;
277   end loop;
278   return;
279 end LOCK_ROW;
280 
281 procedure UPDATE_ROW (
282   X_APPLICATION_ID in NUMBER,
283   X_INTEGRATOR_CODE in VARCHAR2,
284   X_ENABLED_FLAG in VARCHAR2,
285   X_OBJECT_VERSION_NUMBER in NUMBER,
286   X_UPLOAD_PARAM_LIST_APP_ID in NUMBER,
287   X_UPLOAD_PARAM_LIST_CODE in VARCHAR2,
288   X_UPLOAD_SERV_PARAM_LIST_APP_I in NUMBER,
289   X_UPLOAD_SERV_PARAM_LIST_CODE in VARCHAR2,
290   X_IMPORT_PARAM_LIST_APP_ID in NUMBER,
291   X_IMPORT_PARAM_LIST_CODE in VARCHAR2,
292   X_UPLOADER_CLASS in VARCHAR2,
293   X_DATE_FORMAT in VARCHAR2,
294   X_IMPORT_TYPE in NUMBER,
295   X_USER_NAME in VARCHAR2,
296   X_UPLOAD_TITLE_BAR in VARCHAR2,
297   X_UPLOAD_HEADER in VARCHAR2,
298   X_LAST_UPDATE_DATE in DATE,
299   X_LAST_UPDATED_BY in NUMBER,
300   X_LAST_UPDATE_LOGIN in NUMBER,
301   X_CREATE_DOC_LIST_APP_ID in NUMBER,
302   X_CREATE_DOC_LIST_CODE in VARCHAR2,
303   X_NEW_SESSION_FLAG in VARCHAR2,
304   X_LAYOUT_RESOLVER_CLASS in VARCHAR2,
305   X_LAYOUT_VERIFIER_CLASS in VARCHAR2,
306   X_SESSION_CONFIG_CLASS in VARCHAR2,
307   X_SESSION_PARAM_LIST_APP_ID in NUMBER,
308   X_SESSION_PARAM_LIST_CODE in VARCHAR2,
309   X_DISPLAY_FLAG in VARCHAR2
310 ) is
311 begin
312   update BNE_INTEGRATORS_B set
313     ENABLED_FLAG = X_ENABLED_FLAG,
314     OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
315     UPLOAD_PARAM_LIST_APP_ID = X_UPLOAD_PARAM_LIST_APP_ID,
316     UPLOAD_PARAM_LIST_CODE = X_UPLOAD_PARAM_LIST_CODE,
317     UPLOAD_SERV_PARAM_LIST_APP_ID = X_UPLOAD_SERV_PARAM_LIST_APP_I,
318     UPLOAD_SERV_PARAM_LIST_CODE = X_UPLOAD_SERV_PARAM_LIST_CODE,
319     IMPORT_PARAM_LIST_APP_ID = X_IMPORT_PARAM_LIST_APP_ID,
320     IMPORT_PARAM_LIST_CODE = X_IMPORT_PARAM_LIST_CODE,
321     UPLOADER_CLASS = X_UPLOADER_CLASS,
322     DATE_FORMAT = X_DATE_FORMAT,
323     IMPORT_TYPE = X_IMPORT_TYPE,
324     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
325     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
326     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
327     CREATE_DOC_LIST_APP_ID = X_CREATE_DOC_LIST_APP_ID,
328     CREATE_DOC_LIST_CODE = X_CREATE_DOC_LIST_CODE,
329     NEW_SESSION_FLAG = X_NEW_SESSION_FLAG,
330     LAYOUT_RESOLVER_CLASS = X_LAYOUT_RESOLVER_CLASS,
331     LAYOUT_VERIFIER_CLASS = X_LAYOUT_VERIFIER_CLASS,
332     SESSION_CONFIG_CLASS = X_SESSION_CONFIG_CLASS,
333     SESSION_PARAM_LIST_APP_ID = X_SESSION_PARAM_LIST_APP_ID,
334     SESSION_PARAM_LIST_CODE = X_SESSION_PARAM_LIST_CODE,
335     DISPLAY_FLAG = X_DISPLAY_FLAG
336   where APPLICATION_ID = X_APPLICATION_ID
337   and INTEGRATOR_CODE = X_INTEGRATOR_CODE;
338 
339   if (sql%notfound) then
340     raise no_data_found;
341   end if;
342 
343   update BNE_INTEGRATORS_TL set
344     USER_NAME = X_USER_NAME,
345     UPLOAD_TITLE_BAR = X_UPLOAD_TITLE_BAR,
346     UPLOAD_HEADER = X_UPLOAD_HEADER,
347     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
348     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
349     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
350     SOURCE_LANG = userenv('LANG')
351   where APPLICATION_ID = X_APPLICATION_ID
352   and INTEGRATOR_CODE = X_INTEGRATOR_CODE
353   and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
354 
355   if (sql%notfound) then
356     raise no_data_found;
357   end if;
358 end UPDATE_ROW;
359 
360 procedure DELETE_ROW (
361   X_APPLICATION_ID in NUMBER,
362   X_INTEGRATOR_CODE in VARCHAR2
363 ) is
364 begin
365   delete from BNE_INTEGRATORS_TL
366   where APPLICATION_ID = X_APPLICATION_ID
367   and INTEGRATOR_CODE = X_INTEGRATOR_CODE;
368 
369   if (sql%notfound) then
370     raise no_data_found;
371   end if;
372 
373   delete from BNE_INTEGRATORS_B
377   if (sql%notfound) then
374   where APPLICATION_ID = X_APPLICATION_ID
375   and INTEGRATOR_CODE = X_INTEGRATOR_CODE;
376 
378     raise no_data_found;
379   end if;
380 end DELETE_ROW;
381 
382 procedure ADD_LANGUAGE
383 is
384 begin
385   delete from BNE_INTEGRATORS_TL T
386   where not exists
387     (select NULL
388     from BNE_INTEGRATORS_B B
389     where B.APPLICATION_ID = T.APPLICATION_ID
390     and B.INTEGRATOR_CODE = T.INTEGRATOR_CODE
391     );
392 
393   update BNE_INTEGRATORS_TL T set (
394       USER_NAME,
395       UPLOAD_TITLE_BAR,
396       UPLOAD_HEADER
397     ) = (select
398       B.USER_NAME,
399       B.UPLOAD_TITLE_BAR,
400       B.UPLOAD_HEADER
401     from BNE_INTEGRATORS_TL B
402     where B.APPLICATION_ID = T.APPLICATION_ID
403     and B.INTEGRATOR_CODE = T.INTEGRATOR_CODE
404     and B.LANGUAGE = T.SOURCE_LANG)
405   where (
406       T.APPLICATION_ID,
407       T.INTEGRATOR_CODE,
408       T.LANGUAGE
409   ) in (select
410       SUBT.APPLICATION_ID,
411       SUBT.INTEGRATOR_CODE,
412       SUBT.LANGUAGE
413     from BNE_INTEGRATORS_TL SUBB, BNE_INTEGRATORS_TL SUBT
414     where SUBB.APPLICATION_ID = SUBT.APPLICATION_ID
415     and SUBB.INTEGRATOR_CODE = SUBT.INTEGRATOR_CODE
416     and SUBB.LANGUAGE = SUBT.SOURCE_LANG
417     and (SUBB.USER_NAME <> SUBT.USER_NAME
418       or SUBB.UPLOAD_TITLE_BAR <> SUBT.UPLOAD_TITLE_BAR
419       or (SUBB.UPLOAD_TITLE_BAR is null and SUBT.UPLOAD_TITLE_BAR is not null)
420       or (SUBB.UPLOAD_TITLE_BAR is not null and SUBT.UPLOAD_TITLE_BAR is null)
421       or SUBB.UPLOAD_HEADER <> SUBT.UPLOAD_HEADER
422       or (SUBB.UPLOAD_HEADER is null and SUBT.UPLOAD_HEADER is not null)
423       or (SUBB.UPLOAD_HEADER is not null and SUBT.UPLOAD_HEADER is null)
424   ));
425 
426   insert into BNE_INTEGRATORS_TL (
427     APPLICATION_ID,
428     INTEGRATOR_CODE,
429     USER_NAME,
430     UPLOAD_HEADER,
431     UPLOAD_TITLE_BAR,
432     CREATED_BY,
433     CREATION_DATE,
434     LAST_UPDATED_BY,
435     LAST_UPDATE_LOGIN,
436     LAST_UPDATE_DATE,
437     LANGUAGE,
438     SOURCE_LANG
439   ) select
440     B.APPLICATION_ID,
441     B.INTEGRATOR_CODE,
442     B.USER_NAME,
443     B.UPLOAD_HEADER,
444     B.UPLOAD_TITLE_BAR,
445     B.CREATED_BY,
446     B.CREATION_DATE,
447     B.LAST_UPDATED_BY,
448     B.LAST_UPDATE_LOGIN,
449     B.LAST_UPDATE_DATE,
450     L.LANGUAGE_CODE,
451     B.SOURCE_LANG
452   from BNE_INTEGRATORS_TL B, FND_LANGUAGES L
453   where L.INSTALLED_FLAG in ('I', 'B')
454   and B.LANGUAGE = userenv('LANG')
455   and not exists
456     (select NULL
457     from BNE_INTEGRATORS_TL T
458     where T.APPLICATION_ID = B.APPLICATION_ID
459     and T.INTEGRATOR_CODE = B.INTEGRATOR_CODE
460     and T.LANGUAGE = L.LANGUAGE_CODE);
461 end ADD_LANGUAGE;
462 
463 
464 --------------------------------------------------------------------------------
465 --  PROCEDURE:   TRANSLATE_ROW                                                --
466 --                                                                            --
467 --  DESCRIPTION: Load a translation into the BNE_INTEGRATORS entity.          --
468 --               This proc is called from the apps loader.                    --
469 --                                                                            --
470 --  SEE:   http://www-apps.us.oracle.com/atg/plans/r115/fndloadqr.txt         --
471 --                                                                            --
472 --                                                                            --
473 --  MODIFICATION HISTORY                                                      --
474 --  Date       Username  Description                                          --
475 --  1-Oct-02   DGROVES   CREATED                                              --
476 --------------------------------------------------------------------------------
477 procedure TRANSLATE_ROW(
478   x_integrator_asn        in VARCHAR2,
479   x_integrator_code       in VARCHAR2,
480   x_user_name             in VARCHAR2,
481   x_upload_header         in VARCHAR2,
482   x_upload_title_bar      in VARCHAR2,
483   x_owner                 in VARCHAR2,
484   x_last_update_date      in VARCHAR2,
485   x_custom_mode           in VARCHAR2
486 )
487 is
488   l_app_id          number;
489   f_luby            number;  -- entity owner in file
490   f_ludate          date;    -- entity update date in file
491   db_luby           number;  -- entity owner in db
492   db_ludate         date;    -- entity update date in db
493 begin
494   -- translate values to IDs
495   l_app_id        := BNE_LCT_TOOLS_PKG.ASN_TO_APP_ID(x_integrator_asn);
496 
497   -- Translate owner to file_last_updated_by
498   f_luby := fnd_load_util.owner_id(x_owner);
499 
500   -- Translate char last_update_date to date
501   f_ludate := nvl(to_date(x_last_update_date, 'YYYY/MM/DD'), sysdate);
502   begin
503     select LAST_UPDATED_BY, LAST_UPDATE_DATE
504     into db_luby, db_ludate
505     from BNE_INTEGRATORS_TL
506     where APPLICATION_ID  = l_app_id
507     and   INTEGRATOR_CODE = x_integrator_code
508     and   LANGUAGE        = userenv('LANG');
512                                   db_ludate, x_custom_mode)) then
509 
510     -- Test for customization and version
511     if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
513 
514       update BNE_INTEGRATORS_TL
515       set USER_NAME         = x_user_name,
516           UPLOAD_HEADER     = x_upload_header,
517           UPLOAD_TITLE_BAR  = x_upload_title_bar,
518           LAST_UPDATE_DATE  = f_ludate,
519           LAST_UPDATED_BY   = f_luby,
520           LAST_UPDATE_LOGIN = 0,
521           SOURCE_LANG       = userenv('LANG')
522       where APPLICATION_ID   = l_app_id
523       AND   INTEGRATOR_CODE  = x_integrator_code
524       AND   userenv('LANG') in (LANGUAGE, SOURCE_LANG)
525       ;
526     end if;
527   exception
528     when no_data_found then
529       -- Do not insert missing translations, skip this row
530       null;
531   end;
532 end TRANSLATE_ROW;
533 
534 
535 --------------------------------------------------------------------------------
536 --  PROCEDURE:     LOAD_ROW                                                   --
537 --                                                                            --
538 --  DESCRIPTION:   Load a row into the BNE_INTEGRATORS entity.                --
539 --                 This proc is called from the apps loader.                  --
540 --                                                                            --
541 --  SEE:     http://www-apps.us.oracle.com/atg/plans/r115/fndloadqr.txt       --
542 --                                                                            --
543 --                                                                            --
544 --  MODIFICATION HISTORY                                                      --
545 --  Date       Username  Description                                          --
546 --  1-Oct-02   DGROVES   CREATED                                              --
547 --------------------------------------------------------------------------------
548 procedure LOAD_ROW(
549   x_integrator_asn              in VARCHAR2,
550   x_integrator_code             in VARCHAR2,
551   x_object_version_number       in VARCHAR2,
552   x_enabled_flag                in VARCHAR2,
553   x_upload_param_list_asn       in VARCHAR2,
554   x_upload_param_list_code      in VARCHAR2,
555   x_upload_serv_param_list_asn  in VARCHAR2,
556   x_upload_serv_param_list_code in VARCHAR2,
557   x_import_param_list_asn       in VARCHAR2,
558   x_import_param_code           in VARCHAR2,
559   x_date_format                 in VARCHAR2,
560   x_import_type                 in VARCHAR2,
561   x_uploader_class              in VARCHAR2,
562   x_user_name                   in VARCHAR2,
563   x_upload_header               in VARCHAR2,
564   x_upload_title_bar            in VARCHAR2,
565   x_owner                       in VARCHAR2,
566   x_last_update_date            in VARCHAR2,
567   x_custom_mode                 in VARCHAR2,
568   x_create_doc_list_asn         in VARCHAR2,
569   x_create_doc_list_code        in VARCHAR2,
570   x_new_session_flag            in VARCHAR2,
571   x_layout_resolver_class       in VARCHAR2,
572   x_layout_verifier_class       in VARCHAR2,
573   x_session_config_class        in VARCHAR2,
574   x_session_param_list_asn      in VARCHAR2,
575   x_session_param_list_code     in VARCHAR2,
576   x_display_flag                in VARCHAR2
577 )
578 is
579   l_app_id                    number;
580   l_upload_param_app_id       number;
581   l_upload_serv_param_app_id  number;
582   l_import_param_app_id       number;
583   l_create_doc_list_app_id    number;
584   l_session_param_list_app_id number;
585   l_row_id                    varchar2(64);
586   f_luby                      number;  -- entity owner in file
587   f_ludate                    date;    -- entity update date in file
588   db_luby                     number;  -- entity owner in db
589   db_ludate                   date;    -- entity update date in db
590 begin
591   -- translate values to IDs
592   l_app_id                    := BNE_LCT_TOOLS_PKG.ASN_TO_APP_ID(x_integrator_asn);
593   l_upload_param_app_id       := BNE_LCT_TOOLS_PKG.ASN_TO_APP_ID(x_upload_param_list_asn);
594   l_upload_serv_param_app_id  := BNE_LCT_TOOLS_PKG.ASN_TO_APP_ID(x_upload_serv_param_list_asn);
595   l_import_param_app_id       := BNE_LCT_TOOLS_PKG.ASN_TO_APP_ID(x_import_param_list_asn);
596   l_create_doc_list_app_id    := BNE_LCT_TOOLS_PKG.ASN_TO_APP_ID(x_create_doc_list_asn);
597   l_session_param_list_app_id := BNE_LCT_TOOLS_PKG.ASN_TO_APP_ID(x_session_param_list_asn);
598 
599   -- Translate owner to file_last_updated_by
600   f_luby := fnd_load_util.owner_id(x_owner);
601 
602   -- Translate char last_update_date to date
603   f_ludate := nvl(to_date(x_last_update_date, 'YYYY/MM/DD'), sysdate);
604   begin
605     select LAST_UPDATED_BY, LAST_UPDATE_DATE
606     into db_luby, db_ludate
610 
607     from BNE_INTEGRATORS_B
608     where APPLICATION_ID  = l_app_id
609     and   INTEGRATOR_CODE = x_integrator_code;
611     -- Test for customization and version
612     if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
613                                   db_ludate, x_custom_mode)) then
614       -- Update existing row
615       BNE_INTEGRATORS_PKG.Update_Row(
616         X_APPLICATION_ID               => l_app_id,
617         X_INTEGRATOR_CODE              => x_integrator_code,
618         X_OBJECT_VERSION_NUMBER        => x_object_version_number,
619         X_ENABLED_FLAG                 => x_enabled_flag,
620         X_UPLOAD_PARAM_LIST_APP_ID     => l_upload_param_app_id,
621         X_UPLOAD_PARAM_LIST_CODE       => x_upload_param_list_code,
622         X_UPLOAD_SERV_PARAM_LIST_APP_I => l_upload_serv_param_app_id,
623         X_UPLOAD_SERV_PARAM_LIST_CODE  => x_upload_serv_param_list_code,
624         X_IMPORT_PARAM_LIST_APP_ID     => l_import_param_app_id,
625         X_IMPORT_PARAM_LIST_CODE       => x_import_param_code,
626         X_UPLOADER_CLASS               => x_uploader_class,
627         X_DATE_FORMAT                  => x_date_format,
628         X_IMPORT_TYPE                  => x_import_type,
629         X_USER_NAME                    => x_user_name,
630         X_UPLOAD_TITLE_BAR             => x_upload_title_bar,
631         X_UPLOAD_HEADER                => x_upload_header,
632         X_LAST_UPDATE_DATE             => f_ludate,
633         X_LAST_UPDATED_BY              => f_luby,
634         X_LAST_UPDATE_LOGIN            => 0,
635         X_CREATE_DOC_LIST_APP_ID       => l_create_doc_list_app_id,
636         X_CREATE_DOC_LIST_CODE         => x_create_doc_list_code,
637         X_NEW_SESSION_FLAG             => x_new_session_flag,
638         X_LAYOUT_RESOLVER_CLASS        => x_layout_resolver_class,
639         X_LAYOUT_VERIFIER_CLASS        => x_layout_verifier_class,
640         X_SESSION_CONFIG_CLASS         => x_session_config_class,
641         X_SESSION_PARAM_LIST_APP_ID    => l_session_param_list_app_id,
642         X_SESSION_PARAM_LIST_CODE      => x_session_param_list_code,
643         X_DISPLAY_FLAG                 => x_display_flag
644       );
645     end if;
646   exception
647     when no_data_found then
648       -- Record doesn't exist - insert in all cases
649       BNE_INTEGRATORS_PKG.Insert_Row(
650         X_ROWID                        => l_row_id,
651         X_APPLICATION_ID               => l_app_id,
652         X_INTEGRATOR_CODE              => x_INTEGRATOR_code,
653         X_ENABLED_FLAG                 => x_enabled_flag,
654         X_OBJECT_VERSION_NUMBER        => x_object_version_number,
655         X_UPLOAD_PARAM_LIST_APP_ID     => l_upload_param_app_id,
656         X_UPLOAD_PARAM_LIST_CODE       => x_upload_param_list_code,
657         X_UPLOAD_SERV_PARAM_LIST_APP_I => l_upload_serv_param_app_id,
658         X_UPLOAD_SERV_PARAM_LIST_CODE  => x_upload_serv_param_list_code,
659         X_IMPORT_PARAM_LIST_APP_ID     => l_import_param_app_id,
660         X_IMPORT_PARAM_LIST_CODE       => x_import_param_code,
661         X_UPLOADER_CLASS               => x_uploader_class,
662         X_DATE_FORMAT                  => x_date_format,
663         X_IMPORT_TYPE                  => x_import_type,
664         X_USER_NAME                    => x_user_name,
665         X_UPLOAD_TITLE_BAR             => x_upload_title_bar,
666         X_UPLOAD_HEADER                => x_upload_header,
667         X_CREATION_DATE                => f_ludate,
668         X_CREATED_BY                   => f_luby,
669         X_LAST_UPDATE_DATE             => f_ludate,
670         X_LAST_UPDATED_BY              => f_luby,
671         X_LAST_UPDATE_LOGIN            => 0,
672         X_CREATE_DOC_LIST_APP_ID       => l_create_doc_list_app_id,
673         X_CREATE_DOC_LIST_CODE         => x_create_doc_list_code,
674         X_NEW_SESSION_FLAG             => x_new_session_flag,
675         X_LAYOUT_RESOLVER_CLASS        => x_layout_resolver_class,
676         X_LAYOUT_VERIFIER_CLASS        => x_layout_verifier_class,
677         X_SESSION_CONFIG_CLASS         => x_session_config_class,
678         X_SESSION_PARAM_LIST_APP_ID    => l_session_param_list_app_id,
679         X_SESSION_PARAM_LIST_CODE      => x_session_param_list_code,
680         X_DISPLAY_FLAG                 => x_display_flag
681       );
682   end;
683 end LOAD_ROW;
684 
685 
686 end BNE_INTEGRATORS_PKG;