[Home] [Help]
PACKAGE BODY: APPS.IEB_SVC_CAT_TEMPS_SEED_PKG
Source
1 PACKAGE BODY ieb_svc_cat_temps_seed_pkg AS
2 /* $Header: IEBSCTPB.pls 120.3 2005/09/29 06:03:45 appldev ship $ */
3 PROCEDURE insert_row(
4 x_wbsc_id IN NUMBER
5 , x_svcpln_svcpln_id IN NUMBER
6 , x_created_by IN NUMBER
7 , x_creation_date IN DATE
8 , x_last_update_date IN DATE
9 , x_last_updated_by IN NUMBER
10 , x_last_update_login IN NUMBER
11 , x_media_type IN VARCHAR2
12 , x_depth IN NUMBER
13 , x_parent_id IN NUMBER
14 , x_original_name IN VARCHAR2
15 , x_active_y_n IN VARCHAR2
16 , x_source_table_name IN VARCHAR2
17 , x_src_tbl_key_column IN VARCHAR2
18 , x_src_tbl_value_column IN VARCHAR2
19 , x_src_tbl_value_translation_fl IN VARCHAR2
20 , x_src_tbl_where_clause IN VARCHAR2
21 , x_MEDIA_TYPE_ID IN NUMBER
22 , x_SERVICE_CATEGORY_NAME IN VARCHAR2
23 , x_DESCRIPTION IN VARCHAR2
24 , x_MEDIA_CATEGORY_LABEL IN VARCHAR2
25 ) IS
26 CURSOR l_insert IS
27 SELECT 'X'
28 FROM ieb_svc_cat_temps_b
29 WHERE wbsc_id = x_wbsc_id;
30 BEGIN
31 INSERT INTO ieb_svc_cat_temps_b (
32 wbsc_id
33 , svcpln_svcpln_id
34 , created_by
35 , creation_date
36 , last_update_date
37 , last_updated_by
38 , last_update_login
39 , media_type
40 , depth
41 , parent_id
42 , original_name
43 , active_y_n
44 , source_table_name
45 , src_tbl_key_column
46 , src_tbl_value_column
47 , src_tbl_value_translation_flag
48 , src_tbl_where_clause
49 , media_type_id
50 ) VALUES (
51 x_wbsc_id
52 , x_svcpln_svcpln_id
53 , DECODE(x_created_by,FND_API.G_MISS_NUM,NULL,x_created_by)
54 , DECODE(x_creation_date,FND_API.G_MISS_DATE,TO_DATE(NULL),x_creation_date)
55 , DECODE(x_last_update_date,FND_API.G_MISS_DATE,TO_DATE(NULL),x_last_update_date)
56 , DECODE(x_last_updated_by,FND_API.G_MISS_NUM,NULL,x_last_updated_by)
57 , DECODE(x_last_update_login,FND_API.G_MISS_NUM,NULL,x_last_update_login)
58 , DECODE(x_media_type,FND_API.G_MISS_CHAR,NULL,x_media_type)
59 , DECODE(x_depth,FND_API.G_MISS_NUM,NULL,x_depth)
60 , DECODE(x_parent_id,FND_API.G_MISS_NUM,NULL,x_parent_id)
61 , DECODE(x_original_name,FND_API.G_MISS_CHAR,NULL,x_original_name)
62 , DECODE(x_active_y_n,FND_API.G_MISS_CHAR,NULL,x_active_y_n)
63 , DECODE(x_source_table_name,FND_API.G_MISS_CHAR,NULL,x_source_table_name)
64 , DECODE(x_src_tbl_key_column,FND_API.G_MISS_CHAR,NULL,x_src_tbl_key_column)
65 , DECODE(x_src_tbl_value_column,FND_API.G_MISS_CHAR,NULL,x_src_tbl_value_column)
66 , DECODE(x_src_tbl_value_translation_fl,FND_API.G_MISS_CHAR,NULL,x_src_tbl_value_translation_fl)
67 , DECODE(x_src_tbl_where_clause,FND_API.G_MISS_CHAR,NULL,x_src_tbl_where_clause)
68 , x_MEDIA_TYPE_ID
69 );
70
71 INSERT INTO ieb_svc_cat_temps_tl (
72 wbsc_id
73 , created_by
74 , creation_date
75 , last_update_date
76 , last_updated_by
77 , last_update_login
78 , SERVICE_CATEGORY_NAME
79 , DESCRIPTION
80 , MEDIA_CATEGORY_LABEL
81 , language
82 , source_lang
83 ) select
84 x_wbsc_id
85 , DECODE(x_created_by,FND_API.G_MISS_NUM,NULL,x_created_by)
86 , DECODE(x_creation_date,FND_API.G_MISS_DATE,TO_DATE(NULL),x_creation_date)
87 , DECODE(x_last_update_date,FND_API.G_MISS_DATE,TO_DATE(NULL),x_last_update_date)
88 , DECODE(x_last_updated_by,FND_API.G_MISS_NUM,NULL,x_last_updated_by)
89 , DECODE(x_last_update_login,FND_API.G_MISS_NUM,NULL,x_last_update_login)
90 , DECODE(x_SERVICE_CATEGORY_NAME,FND_API.G_MISS_CHAR,NULL,x_SERVICE_CATEGORY_NAME)
91 , DECODE(x_DESCRIPTION,FND_API.G_MISS_CHAR,NULL,x_DESCRIPTION)
92 , DECODE(x_MEDIA_CATEGORY_LABEL,FND_API.G_MISS_CHAR,NULL,x_MEDIA_CATEGORY_LABEL)
93 , l.language_code
94 , USERENV('LANG')
95 from fnd_languages l
96 WHERE l.installed_flag IN ('I', 'B')
97 AND NOT EXISTS
98 (SELECT NULL
99 FROM ieb_svc_cat_temps_tl t
100 WHERE t.wbsc_id = x_wbsc_id
101 AND t.language = l.language_code);
102
103 END insert_row;
104
105 PROCEDURE update_row(
106 x_wbsc_id IN NUMBER
107 , x_svcpln_svcpln_id IN NUMBER
108 , x_last_update_date IN DATE
109 , x_last_updated_by IN NUMBER
110 , x_last_update_login IN NUMBER
111 , x_media_type IN VARCHAR2
112 , x_depth IN NUMBER
113 , x_parent_id IN NUMBER
114 , x_original_name IN VARCHAR2
115 , x_active_y_n IN VARCHAR2
116 , x_source_table_name IN VARCHAR2
117 , x_src_tbl_key_column IN VARCHAR2
118 , x_src_tbl_value_column IN VARCHAR2
119 , x_src_tbl_value_translation_fl IN VARCHAR2
120 , x_src_tbl_where_clause IN VARCHAR2
121 , x_media_type_id IN NUMBER
122 , x_SERVICE_CATEGORY_NAME IN VARCHAR2
123 , x_DESCRIPTION IN VARCHAR2
124 , x_MEDIA_CATEGORY_LABEL IN VARCHAR2
125 ) IS
126 BEGIN
127 UPDATE ieb_svc_cat_temps_b
128 SET
129 svcpln_svcpln_id=DECODE(x_svcpln_svcpln_id,FND_API.G_MISS_NUM,NULL,x_svcpln_svcpln_id)
130 , last_update_date=DECODE(x_last_update_date,FND_API.G_MISS_DATE,TO_DATE(NULL),x_last_update_date)
131 , last_updated_by=DECODE(x_last_updated_by,FND_API.G_MISS_NUM,NULL,x_last_updated_by)
132 , last_update_login=DECODE(x_last_update_login,FND_API.G_MISS_NUM,NULL,x_last_update_login)
133 , media_type=DECODE(x_media_type,FND_API.G_MISS_CHAR,NULL,x_media_type)
134 , depth=DECODE(x_depth,FND_API.G_MISS_NUM,NULL,x_depth)
135 , parent_id=DECODE(x_parent_id,FND_API.G_MISS_NUM,NULL,x_parent_id)
136 , original_name=DECODE(x_original_name,FND_API.G_MISS_CHAR,NULL,x_original_name)
137 , active_y_n=DECODE(x_active_y_n,FND_API.G_MISS_CHAR,NULL,x_active_y_n)
138 , source_table_name=DECODE(x_source_table_name,FND_API.G_MISS_CHAR,NULL,x_source_table_name)
139 , src_tbl_key_column=DECODE(x_src_tbl_key_column,FND_API.G_MISS_CHAR,NULL,x_src_tbl_key_column)
140 , src_tbl_value_column=DECODE(x_src_tbl_value_column,FND_API.G_MISS_CHAR,NULL,x_src_tbl_value_column)
141 , src_tbl_value_translation_flag=DECODE(x_src_tbl_value_translation_fl,FND_API.G_MISS_CHAR,NULL,x_src_tbl_value_translation_fl)
142 , src_tbl_where_clause=DECODE(x_src_tbl_where_clause,FND_API.G_MISS_CHAR,NULL,x_src_tbl_where_clause)
143 , media_type_id = x_media_type_id
144 WHERE
145 wbsc_id=x_wbsc_id;
146
147 IF (SQL%NOTFOUND) THEN
148 RAISE NO_DATA_FOUND;
149 END IF;
150
151 UPDATE ieb_svc_cat_temps_tl
152 SET
153 last_update_date=DECODE(x_last_update_date,FND_API.G_MISS_DATE,TO_DATE(NULL),x_last_update_date)
154 , last_updated_by=DECODE(x_last_updated_by,FND_API.G_MISS_NUM,NULL,x_last_updated_by)
155 , last_update_login=DECODE(x_last_update_login,FND_API.G_MISS_NUM,NULL,x_last_update_login)
156 , SERVICE_CATEGORY_NAME = DECODE(x_SERVICE_CATEGORY_NAME,FND_API.G_MISS_CHAR,NULL,x_SERVICE_CATEGORY_NAME)
157 , DESCRIPTION = DECODE(x_DESCRIPTION,FND_API.G_MISS_CHAR,NULL,x_DESCRIPTION)
158 , MEDIA_CATEGORY_LABEL = DECODE(x_MEDIA_CATEGORY_LABEL,FND_API.G_MISS_CHAR,NULL,x_MEDIA_CATEGORY_LABEL)
159 , source_lang = USERENV('LANG')
160 WHERE
161 wbsc_id=x_wbsc_id
162 AND USERENV('LANG') IN (language, source_lang);
163
164 IF (SQL%NOTFOUND) THEN
165 RAISE NO_DATA_FOUND;
166 END IF;
167
168 END update_row;
169
170 PROCEDURE load_row (
171 p_wbsc_id IN NUMBER,
172 p_svcpln_svcpln_id IN NUMBER,
173 p_media_type IN VARCHAR2,
174 p_depth IN NUMBER,
175 p_parent_id IN NUMBER,
176 p_original_name IN VARCHAR2,
177 p_active_y_n IN VARCHAR2,
178 p_source_table_name IN VARCHAR2,
179 p_src_tbl_key_column IN VARCHAR2,
180 p_src_tbl_value_column IN VARCHAR2,
181 p_src_tbl_value_translation_fl IN VARCHAR2,
182 p_src_tbl_where_clause IN VARCHAR2,
183 p_media_type_id IN NUMBER,
184 p_SERVICE_CATEGORY_NAME IN VARCHAR2,
185 p_DESCRIPTION IN VARCHAR2,
186 p_MEDIA_CATEGORY_LABEL IN VARCHAR2,
187 p_OWNER IN VARCHAR2) is
188 BEGIN
189 DECLARE
190 user_id number := 0;
191 BEGIN
192
193 user_id := fnd_load_util.owner_id(p_OWNER);
194
195 update_row(p_wbsc_id, p_svcpln_svcpln_id, sysdate, user_id, 0, p_media_type,
196 p_depth, p_parent_id, p_original_name, p_active_y_n,
197 p_source_table_name, p_src_tbl_key_column, p_src_tbl_value_column,
198 p_src_tbl_value_translation_fl, p_src_tbl_where_clause, p_media_type_id,
199 p_SERVICE_CATEGORY_NAME, p_DESCRIPTION, p_MEDIA_CATEGORY_LABEL);
200
201 EXCEPTION
202 when no_data_found then
203
204 insert_row(p_wbsc_id, p_svcpln_svcpln_id, user_id, sysdate, sysdate, user_id, 0,
205 p_media_type,
206 p_depth, p_parent_id, p_original_name, p_active_y_n,
207 p_source_table_name, p_src_tbl_key_column, p_src_tbl_value_column,
208 p_src_tbl_value_translation_fl, p_src_tbl_where_clause, p_media_type_id,
209 p_SERVICE_CATEGORY_NAME, p_DESCRIPTION, p_MEDIA_CATEGORY_LABEL);
210
211 END;
212 END load_row;
213
214 PROCEDURE load_seed_row (
215 p_wbsc_id IN NUMBER,
216 p_svcpln_svcpln_id IN NUMBER,
217 p_media_type IN VARCHAR2,
218 p_depth IN NUMBER,
219 p_parent_id IN NUMBER,
220 p_original_name IN VARCHAR2,
221 p_active_y_n IN VARCHAR2,
222 p_source_table_name IN VARCHAR2,
223 p_src_tbl_key_column IN VARCHAR2,
224 p_src_tbl_value_column IN VARCHAR2,
225 p_src_tbl_value_translation_fl IN VARCHAR2,
226 p_src_tbl_where_clause IN VARCHAR2,
227 p_media_type_id IN NUMBER,
228 p_SERVICE_CATEGORY_NAME IN VARCHAR2,
229 p_DESCRIPTION IN VARCHAR2,
230 p_MEDIA_CATEGORY_LABEL IN VARCHAR2,
231 p_OWNER IN VARCHAR2,
232 p_UPLOAD_MODE IN VARCHAR2) is
233 BEGIN
234 if (p_UPLOAD_MODE = 'NLS') then
235 ieb_svc_cat_temps_seed_pkg.TRANSLATE_ROW (
236 p_WBSC_ID,
237 p_SERVICE_CATEGORY_NAME,
238 p_DESCRIPTION,
239 p_MEDIA_CATEGORY_LABEL,
240 p_OWNER);
241 else
242 ieb_svc_cat_temps_seed_pkg.LOAD_ROW (
243 p_WBSC_ID,
244 p_SVCPLN_SVCPLN_ID,
245 p_MEDIA_TYPE,
246 p_DEPTH,
247 p_PARENT_ID,
248 p_ORIGINAL_NAME,
249 p_ACTIVE_Y_N,
250 p_SOURCE_TABLE_NAME,
251 p_SRC_TBL_KEY_COLUMN,
252 p_SRC_TBL_VALUE_COLUMN,
253 p_SRC_TBL_VALUE_TRANSLATION_FL,
254 p_SRC_TBL_WHERE_CLAUSE,
255 p_MEDIA_TYPE_ID,
256 p_SERVICE_CATEGORY_NAME,
257 p_DESCRIPTION,
258 p_MEDIA_CATEGORY_LABEL,
259 p_OWNER);
260 end if;
261 END load_seed_row;
262
263 PROCEDURE translate_row (
264 p_wbsc_id IN NUMBER,
265 p_SERVICE_CATEGORY_NAME IN VARCHAR2,
266 p_DESCRIPTION IN VARCHAR2,
267 p_MEDIA_CATEGORY_LABEL IN VARCHAR2,
268 p_OWNER IN VARCHAR2) is
269 BEGIN
270 DECLARE
271 user_id number := 0;
272 BEGIN
273 user_id := fnd_load_util.owner_id(p_OWNER);
274
275
276 UPDATE ieb_svc_cat_temps_tl
277 SET
278 last_update_date=sysdate
279 , last_updated_by=user_id
280 , last_update_login=0
281 , SERVICE_CATEGORY_NAME = DECODE(p_SERVICE_CATEGORY_NAME,FND_API.G_MISS_CHAR,
282 NULL,p_SERVICE_CATEGORY_NAME)
283 , DESCRIPTION = DECODE(p_DESCRIPTION,FND_API.G_MISS_CHAR,NULL,p_DESCRIPTION)
284 , MEDIA_CATEGORY_LABEL = DECODE(p_MEDIA_CATEGORY_LABEL,FND_API.G_MISS_CHAR,NULL, p_MEDIA_CATEGORY_LABEL)
285 , source_lang = USERENV('LANG')
286 WHERE
287 wbsc_id=p_wbsc_id
288 AND USERENV('LANG') IN (language, source_lang);
289
290 END;
291
292 END translate_row;
293
294 procedure ADD_LANGUAGE
295 is
296 begin
297 delete from IEB_SVC_CAT_TEMPS_TL T
298 where not exists
299 (select NULL
300 from IEB_SVC_CAT_TEMPS_B B
301 where B.WBSC_ID = T.WBSC_ID
302 );
303
304 update IEB_SVC_CAT_TEMPS_TL T set (
305 SERVICE_CATEGORY_NAME,
306 DESCRIPTION
307 ) = (select
308 B.SERVICE_CATEGORY_NAME,
309 B.DESCRIPTION
310 from IEB_SVC_CAT_TEMPS_TL B
311 where B.WBSC_ID = T.WBSC_ID
312 and B.LANGUAGE = T.SOURCE_LANG)
313 where (
314 T.WBSC_ID,
315 T.LANGUAGE
316 ) in (select
317 SUBT.WBSC_ID,
318 SUBT.LANGUAGE
319 from IEB_SVC_CAT_TEMPS_TL SUBB, IEB_SVC_CAT_TEMPS_TL SUBT
320 where SUBB.WBSC_ID = SUBT.WBSC_ID
321 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
322 and (SUBB.SERVICE_CATEGORY_NAME <> SUBT.SERVICE_CATEGORY_NAME
323 or SUBB.DESCRIPTION <> SUBT.DESCRIPTION
324 or (SUBB.DESCRIPTION is null and SUBT.DESCRIPTION is not null)
325 or (SUBB.DESCRIPTION is not null and SUBT.DESCRIPTION is null)
326 ));
327
328 insert into IEB_SVC_CAT_TEMPS_TL (
329 DESCRIPTION,
330 CREATION_DATE,
331 LAST_UPDATED_BY,
332 LAST_UPDATE_DATE,
333 LAST_UPDATE_LOGIN,
334 SERVICE_CATEGORY_NAME,
335 WBSC_ID,
336 CREATED_BY,
337 LANGUAGE,
338 SOURCE_LANG
339 ) select
340 B.DESCRIPTION,
341 B.CREATION_DATE,
342 B.LAST_UPDATED_BY,
343 B.LAST_UPDATE_DATE,
344 B.LAST_UPDATE_LOGIN,
345 B.SERVICE_CATEGORY_NAME,
346 B.WBSC_ID,
347 B.CREATED_BY,
348 L.LANGUAGE_CODE,
349 B.SOURCE_LANG
350 from IEB_SVC_CAT_TEMPS_TL B, FND_LANGUAGES L
351 where L.INSTALLED_FLAG in ('I', 'B')
352 and B.LANGUAGE = userenv('LANG')
353 and not exists
354 (select NULL
355 from IEB_SVC_CAT_TEMPS_TL T
356 where T.WBSC_ID = B.WBSC_ID
357 and T.LANGUAGE = L.LANGUAGE_CODE);
358
359 end ADD_LANGUAGE;
360
361
362 END ieb_svc_cat_temps_seed_pkg;