[Home] [Help]
PACKAGE BODY: APPS.IEO_SVR_TYPES_SEED_PKG
Source
1 PACKAGE BODY IEO_SVR_TYPES_SEED_PKG AS
2 /* $Header: IEOSEEDB.pls 115.8 2003/01/02 17:07:23 dolee ship $ */
3
4 PROCEDURE Insert_Row (p_svr_types_rec IN uwq_svr_types_rec_type) IS
5
6 CURSOR c IS SELECT 'X' FROM ieo_svr_types_b
7 WHERE type_id = p_svr_types_rec.type_id;
8
9 l_dummy CHAR(1);
10
11 BEGIN
12
13 -- API body
14 INSERT INTO ieo_svr_types_b (
15 type_id,
16 created_by,
17 creation_date,
18 last_updated_by,
19 last_update_date,
20 last_update_login,
21 type_uuid,
22 rt_refresh_rate,
23 max_major_load_factor,
24 max_minor_load_factor,
25 application_short_name
26 ) VALUES (
27 p_svr_types_rec.type_id,
28 p_svr_types_rec.created_by,
29 p_svr_types_rec.creation_date,
30 p_svr_types_rec.last_updated_by,
31 p_svr_types_rec.last_update_date,
32 p_svr_types_rec.last_update_login,
33 p_svr_types_rec.type_uuid,
34 p_svr_types_rec.rt_refresh_rate,
35 p_svr_types_rec.max_major_load_factor,
36 p_svr_types_rec.max_minor_load_factor,
37 p_svr_types_rec.application_short_name
38 );
39
40 INSERT INTO ieo_svr_types_tl (
41 type_id,
42 language,
43 created_by,
44 creation_date,
45 last_updated_by,
46 last_update_date,
47 last_update_login,
48 type_name,
49 source_lang,
50 type_description,
51 type_extra
52 ) SELECT
53 p_svr_types_rec.type_id,
54 l.language_code,
55 p_svr_types_rec.created_by,
56 p_svr_types_rec.creation_date,
57 p_svr_types_rec.last_updated_by,
58 p_svr_types_rec.last_update_date,
59 p_svr_types_rec.last_update_login,
60 p_svr_types_rec.type_name,
61 USERENV('LANG'),
62 p_svr_types_rec.type_description,
63 p_svr_types_rec.type_extra
64 FROM fnd_languages l
65 WHERE l.installed_flag IN ('I', 'B')
66 AND NOT EXISTS
67 (SELECT NULL
68 FROM ieo_svr_types_tl t
69 WHERE t.type_id = p_svr_types_rec.type_id
70 AND t.language = l.language_code);
71
72 OPEN c;
73 FETCH c INTO l_dummy;
74 IF (c%NOTFOUND) THEN
75 CLOSE c;
76 RAISE NO_DATA_FOUND;
77 END IF;
78 CLOSE c;
79 -- End of API body
80
81 END Insert_Row;
82
83 PROCEDURE Update_Row (p_svr_types_rec IN uwq_svr_types_rec_type) IS
84
85 BEGIN
86 -- API body
87 UPDATE ieo_svr_types_b SET
88 last_updated_by = p_svr_types_rec.last_updated_by,
89 last_update_date = p_svr_types_rec.last_update_date,
90 last_update_login = p_svr_types_rec.last_update_login,
91 type_uuid = p_svr_types_rec.type_uuid,
92 rt_refresh_rate = p_svr_types_rec.rt_refresh_rate,
93 max_major_load_factor = p_svr_types_rec.max_major_load_factor,
94 max_minor_load_factor = p_svr_types_rec.max_minor_load_factor,
95 application_short_name = p_svr_types_rec.application_short_name
96 WHERE type_id = p_svr_types_rec.type_id;
97
98 IF (SQL%NOTFOUND) THEN
99 RAISE no_data_found;
100 END IF;
101
102 UPDATE ieo_svr_types_tl SET
103 type_name = p_svr_types_rec.type_name,
104 source_lang = USERENV('LANG'),
105 type_description = p_svr_types_rec.type_description,
106 last_updated_by = p_svr_types_rec.last_updated_by,
107 last_update_date = p_svr_types_rec.last_update_date,
108 last_update_login = p_svr_types_rec.last_update_login,
109 type_extra = p_svr_types_rec.type_extra
110 WHERE type_id = p_svr_types_rec.type_id
111 AND USERENV('LANG') IN (language, source_lang);
112
113 IF (SQL%NOTFOUND) THEN
114 RAISE no_data_found;
115 END IF;
116 -- End of API body
117
118 END Update_Row;
119
120 PROCEDURE Load_Row (
121 p_type_id IN NUMBER,
122 p_type_uuid IN VARCHAR2,
123 p_rt_refresh_rate IN NUMBER,
124 p_max_major_load_factor IN NUMBER,
125 p_max_minor_load_factor IN NUMBER,
126 p_type_name IN VARCHAR2,
127 p_type_description IN VARCHAR2,
128 p_type_extra IN VARCHAR2,
129 p_owner IN VARCHAR2,
130 p_application_short_name IN VARCHAR2) IS
131 BEGIN
132
133 DECLARE
134 user_id number := 0;
135 l_svr_types_rec uwq_svr_types_rec_type;
136
137 BEGIN
138
139 IF (p_owner = 'SEED') then
140 user_id := 1;
141 END IF;
142
143 l_svr_types_rec.type_id := p_type_id;
144 l_svr_types_rec.type_uuid := p_type_uuid;
145 l_svr_types_rec.rt_refresh_rate := p_rt_refresh_rate;
146 l_svr_types_rec.max_major_load_factor := p_max_major_load_factor;
147 l_svr_types_rec.max_minor_load_factor := p_max_minor_load_factor;
148 l_svr_types_rec.type_name := p_type_name;
149 l_svr_types_rec.type_description := p_type_description;
150 l_svr_types_rec.type_extra := p_type_extra;
151 l_svr_types_rec.last_update_date := sysdate;
152 l_svr_types_rec.last_updated_by := user_id;
153 l_svr_types_rec.last_update_login := 0;
154 l_svr_types_rec.application_short_name := p_application_short_name;
155
156 Update_Row (p_svr_types_rec => l_svr_types_rec);
157 EXCEPTION
158 when no_data_found then
159
160 l_svr_types_rec.type_id := p_type_id;
161 l_svr_types_rec.type_uuid := p_type_uuid;
162 l_svr_types_rec.rt_refresh_rate := p_rt_refresh_rate;
163 l_svr_types_rec.max_major_load_factor := p_max_major_load_factor;
164 l_svr_types_rec.max_minor_load_factor := p_max_minor_load_factor;
165 l_svr_types_rec.type_name := p_type_name;
166 l_svr_types_rec.type_description := p_type_description;
167 l_svr_types_rec.last_update_date := sysdate;
168 l_svr_types_rec.last_updated_by := user_id;
169 l_svr_types_rec.last_update_login := 0;
170 l_svr_types_rec.creation_date := sysdate;
171 l_svr_types_rec.created_by := user_id;
172 l_svr_types_rec.application_short_name := p_application_short_name;
173
174 Insert_Row (p_svr_types_rec => l_svr_types_rec);
175
176 END;
177 END load_row;
178
179 PROCEDURE translate_row (
180 p_type_id IN NUMBER,
181 p_type_name IN VARCHAR2,
182 p_type_description IN VARCHAR2,
183 p_type_extra IN VARCHAR2,
184 p_owner IN VARCHAR2) IS
185 BEGIN
186
187 -- only UPDATE rows that have not been altered by user
188
189 UPDATE ieo_svr_types_tl SET
190 type_name = p_type_name,
191 source_lang = userenv('LANG'),
192 type_description = p_type_description,
193 type_extra = p_type_extra,
194 last_update_date = sysdate,
195 last_updated_by = decode(p_owner, 'SEED', 1, 0),
196 last_update_login = 0
197 WHERE type_id = p_type_id
198 AND userenv('LANG') IN (language, source_lang);
199
200 END translate_row;
201
202 PROCEDURE ADD_LANGUAGE
203 is
204 begin
205 delete from IEO_SVR_TYPES_TL T
206 where not exists
207 (select NULL
208 from IEO_SVR_TYPES_B B
209 where B.TYPE_ID = T.TYPE_ID
210 );
211
212 update IEO_SVR_TYPES_TL T set (
213 TYPE_NAME,
214 TYPE_DESCRIPTION,
215 TYPE_EXTRA
216 ) = (select
217 B.TYPE_NAME,
218 B.TYPE_DESCRIPTION,
219 B.TYPE_EXTRA
220 from IEO_SVR_TYPES_TL B
221 where B.TYPE_ID = T.TYPE_ID
222 and B.LANGUAGE = T.SOURCE_LANG)
223 where (
224 T.TYPE_ID,
225 T.LANGUAGE
226 ) in (select
227 SUBT.TYPE_ID,
228 SUBT.LANGUAGE
229 from IEO_SVR_TYPES_TL SUBB, IEO_SVR_TYPES_TL SUBT
230 where SUBB.TYPE_ID = SUBT.TYPE_ID
231 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
232 and (SUBB.TYPE_NAME <> SUBT.TYPE_NAME
233 or SUBB.TYPE_DESCRIPTION <> SUBT.TYPE_DESCRIPTION
234 or (SUBB.TYPE_DESCRIPTION is null and SUBT.TYPE_DESCRIPTION is not null)
235 or (SUBB.TYPE_DESCRIPTION is not null and SUBT.TYPE_DESCRIPTION is null)
236 or SUBB.TYPE_EXTRA <> SUBT.TYPE_EXTRA
237 or (SUBB.TYPE_EXTRA is null and SUBT.TYPE_EXTRA is not null)
238 or (SUBB.TYPE_EXTRA is not null and SUBT.TYPE_EXTRA is null)
239 ));
240
241 insert into IEO_SVR_TYPES_TL (
242 TYPE_ID,
243 CREATED_BY,
244 CREATION_DATE,
245 LAST_UPDATED_BY,
246 LAST_UPDATE_DATE,
247 LAST_UPDATE_LOGIN,
248 TYPE_NAME,
249 TYPE_DESCRIPTION,
250 TYPE_EXTRA,
251 LANGUAGE,
252 SOURCE_LANG
253 ) select
254 B.TYPE_ID,
255 B.CREATED_BY,
256 B.CREATION_DATE,
257 B.LAST_UPDATED_BY,
258 B.LAST_UPDATE_DATE,
259 B.LAST_UPDATE_LOGIN,
260 B.TYPE_NAME,
261 B.TYPE_DESCRIPTION,
262 B.TYPE_EXTRA,
263 L.LANGUAGE_CODE,
264 B.SOURCE_LANG
265 from IEO_SVR_TYPES_TL B, FND_LANGUAGES L
266 where L.INSTALLED_FLAG in ('I', 'B')
267 and B.LANGUAGE = userenv('LANG')
268 and not exists
269 (select NULL
270 from IEO_SVR_TYPES_TL T
271 where T.TYPE_ID = B.TYPE_ID
272 and T.LANGUAGE = L.LANGUAGE_CODE);
273 end ADD_LANGUAGE;
274
275 END IEO_SVR_TYPES_SEED_PKG;