DBA Data[Home] [Help]

PACKAGE BODY: APPS.FND_INDUSTRIES_PKG

Source


1 package body FND_INDUSTRIES_PKG as
2 /* $Header: AFINDSTB.pls 115.1 2004/08/20 14:11:40 dbowles noship $ */
3 
4 -- TRANSLATE_ROW and LOAD_ROW is identical code.  Two procedures were
5 -- written to accomodate NLS standards.
6 
7 procedure TRANSLATE_ROW (
8   X_INDUSTRY_ID in VARCHAR2,
9   X_INDUSTRY_NAME in VARCHAR2,
10   X_DESCRIPTION in VARCHAR2,
11   X_CREATED_BY in VARCHAR2,
12   X_CREATION_DATE in VARCHAR2,
13   X_OWNER in VARCHAR2,
14   X_LAST_UPDATE_DATE in VARCHAR2,
15   X_LAST_UPDATE_LOGIN in VARCHAR2,
16   X_CUSTOM_MODE  in VARCHAR2
17   ) is
18 
19   f_luby         NUMBER; -- entity owner in file
20   f_ludate       DATE;   -- entity update date in file
21   db_luby        NUMBER; -- entity owner in db
22   db_ludate      DATE;   -- entity update date in db
23   f_creator      NUMBER; -- entity creator in file
24 
25  BEGIN
26     -- Translate owner to file_last_updated_by
27     f_luby := fnd_load_util.owner_id(X_OWNER);
28     -- Translate char last_update_date to date
29     f_ludate := nvl(to_date(X_LAST_UPDATE_DATE, 'YYYY/MM/DD'), sysdate);
30     -- Translate creator to f_creator
31     f_creator := fnd_load_util.owner_id(X_CREATED_BY);
32       SELECT LAST_UPDATED_BY, LAST_UPDATE_DATE
33       into db_luby, db_ludate
34       FROM FND_INDUSTRIES
35       WHERE INDUSTRY_ID = X_INDUSTRY_ID AND
36             CREATED_BY = f_creator AND
37             LANGUAGE = userenv('LANG');
38       IF (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
39                                   db_ludate, X_CUSTOM_MODE)) then
40         update fnd_industries set
41           industry_name            = X_INDUSTRY_NAME,
42           description              = X_DESCRIPTION,
43 	  last_update_date         = f_ludate,
44 	  last_updated_by          = f_luby,
45 	  last_update_login        = 0,
46 	  source_lang              = userenv('LANG')
47         where industry_id          = X_INDUSTRY_ID
48         AND userenv('LANG') in (language, source_lang);
49       END IF;
50 
51 
52 END TRANSLATE_ROW;
53 
54 procedure LOAD_ROW (
55   X_INDUSTRY_ID in VARCHAR2,
56   X_INDUSTRY_NAME in VARCHAR2,
57   X_DESCRIPTION in VARCHAR2,
58   X_CREATED_BY in VARCHAR2,
59   X_CREATION_DATE in VARCHAR2,
60   X_OWNER in VARCHAR2,
61   X_LAST_UPDATE_DATE in VARCHAR2,
62   X_LAST_UPDATE_LOGIN in VARCHAR2,
63   X_CUSTOM_MODE  in VARCHAR2
64   ) is
65 
66   f_luby         NUMBER; -- entity owner in file
67   f_ludate       DATE;   -- entity update date in file
68   db_luby        NUMBER; -- entity owner in db
69   db_ludate      DATE;   -- entity update date in db
70   f_creator      NUMBER; -- entity creator in file
71 
72  BEGIN
73     -- Translate owner to file_last_updated_by
74     f_luby := fnd_load_util.owner_id(X_OWNER);
75     -- Translate char last_update_date to date
76     f_ludate := nvl(to_date(X_LAST_UPDATE_DATE, 'YYYY/MM/DD'), sysdate);
77     -- Translate creator to f_creator
78     f_creator := fnd_load_util.owner_id(X_CREATED_BY);
79      BEGIN
80       SELECT LAST_UPDATED_BY, LAST_UPDATE_DATE
81       into db_luby, db_ludate
82       FROM FND_INDUSTRIES
83       WHERE INDUSTRY_ID = X_INDUSTRY_ID AND
84             CREATED_BY = f_creator AND
85             LANGUAGE = userenv('LANG');
86       IF (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
87                                   db_ludate, X_CUSTOM_MODE)) then
88         update fnd_industries set
89           industry_name            = X_INDUSTRY_NAME,
90           description              = X_DESCRIPTION,
91 	  last_update_date         = f_ludate,
92 	  last_updated_by          = f_luby,
93 	  last_update_login        = 0
94         where industry_id          = X_INDUSTRY_ID
95         AND userenv('LANG') in (language, source_lang);
96       END IF;
97     EXCEPTION
98       when NO_DATA_FOUND then
99         insert into fnd_industries(
100           industry_id,
101           industry_name,
102           description,
103           created_by,
104           creation_date,
105           last_update_date,
106           last_updated_by,
107           last_update_login,
108           source_lang,
109           language )
110         select
111           X_INDUSTRY_ID,
112           X_INDUSTRY_NAME,
113           X_DESCRIPTION,
114           f_creator,
115           f_ludate,
116           f_ludate,
117           f_luby,
118           0,
119           userenv('LANG'),
120           l.language_code
121         from
122           fnd_languages l
123         where l.installed_flag in ('I', 'B')
124         and not exists
125           (select null
126            from fnd_industries t
127            where t.industry_id = x_industry_id
128            and t.language = l.language_code);
129 
130  END;
131 
132 END LOAD_ROW;
133 
134 PROCEDURE ADD_LANGUAGE IS
135 
136 BEGIN
137   insert into fnd_industries(
138           industry_id,
139           industry_name,
140           description,
141           created_by,
142           creation_date,
143           last_update_date,
144           last_updated_by,
145           last_update_login,
146           source_lang,
147           language )
148           select
149             b.industry_id,
150             b.industry_name,
151             b.description,
152             b.created_by,
153             b.creation_date,
154             b.last_update_date,
155             b.last_updated_by,
156             b.last_update_login,
157             b.source_lang,
158             l.language_code
159           from fnd_industries b, fnd_languages l
160           where l.INSTALLED_FLAG in ('I', 'B')
161                 and b.language = userenv('LANG')
162                 and not exists
163                   (select NULL
164                    from fnd_industries t
165                    where t.industry_id = b.industry_id
166                    and t.language = l.language_code);
167 
168 
169 
170 end ADD_LANGUAGE;
171 
172 END FND_INDUSTRIES_PKG;