[Home] [Help]
PACKAGE BODY: APPS.IEU_WP_PARAM_PROPS_SEED_PKG
Source
1 PACKAGE BODY IEU_WP_PARAM_PROPS_SEED_PKG AS
2 /* $Header: IEUWPROB.pls 120.2 2005/08/04 23:19:32 appldev ship $ */
3
4 PROCEDURE Update_Row (p_wp_param_props_rec IN wp_param_props_rec_type) IS
5
6 BEGIN
7 -- API body
8 UPDATE ieu_wp_param_props_b SET
9 last_updated_by = p_wp_param_props_rec.last_updated_by,
10 last_update_date = p_wp_param_props_rec.last_update_date,
11 last_update_login = p_wp_param_props_rec.last_update_login,
12 ACTION_PARAM_SET_ID = p_wp_param_props_rec.ACTION_PARAM_SET_ID,
13 param_id = p_wp_param_props_rec.param_id,
14 property_id = p_wp_param_props_rec.property_id,
15 property_value = p_wp_param_props_rec.property_value,
16 value_override_flag = p_wp_param_props_rec.value_override_flag,
17 NOT_VALID_FLAG = p_wp_param_props_rec.NOT_VALID_FLAG
18 WHERE param_property_id = p_wp_param_props_rec.PARAM_PROPERTY_ID;
19
20
21 IF (SQL%NOTFOUND) THEN
22 RAISE no_data_found;
23 END IF;
24
25 UPDATE ieu_wp_param_props_tl SET
26 property_value = p_wp_param_props_rec.property_value_tl,
27 source_lang = USERENV('LANG'),
28 last_updated_by = p_wp_param_props_rec.last_updated_by,
29 last_update_date = p_wp_param_props_rec.last_update_date,
30 last_update_login = p_wp_param_props_rec.last_update_login
31 WHERE param_property_id = p_wp_param_props_rec.PARAM_PROPERTY_ID
32 AND USERENV('LANG') IN (language, source_lang);
33
34 IF (SQL%NOTFOUND) THEN
35 null;
36 END IF;
37 -- End of API body
38
39 END Update_Row;
40
41 PROCEDURE Load_Row (
42 p_PARAM_PROPERTY_ID IN NUMBER,
43 p_ACTION_PARAM_SET_ID IN NUMBER,
44 p_PARAM_ID IN NUMBER,
45 p_PROPERTY_ID IN NUMBER,
46 p_PROPERTY_VALUE IN VARCHAR2,
47 p_VALUE_OVERRIDE_FLAG IN VARCHAR2,
48 p_PROPERTY_VALUE_TL IN VARCHAR2,
49 p_NOT_VALID_FLAG IN VARCHAR2,
50 p_last_update_date IN VARCHAR2,
51 p_owner IN VARCHAR2) IS
52 BEGIN
53
54 DECLARE
55 user_id number := 0;
56 l_wp_param_props_rec wp_param_props_rec_type;
57 p_application_id number(15);
58 l_param_property_id number;
59 l_last_update_date DATE;
60 BEGIN
61
62 --IF (p_owner = 'SEED') then
63 -- user_id := -1;
64 --END IF;
65
66 user_id := fnd_load_util.owner_id(P_OWNER);
67
68 if (p_last_update_date is null) then
69 l_last_update_date := sysdate;
70 else
71 l_last_update_date := to_date(p_last_update_date, 'YYYY/MM/DD');
72 end if;
73
74 l_wp_param_props_rec.PARAM_PROPERTY_ID := p_PARAM_PROPERTY_ID;
75 l_wp_param_props_rec.ACTION_PARAM_SET_ID := p_ACTION_PARAM_SET_ID;
76 l_wp_param_props_rec.PARAM_ID := p_PARAM_ID ;
77 l_wp_param_props_rec.PROPERTY_ID := p_PROPERTY_ID;
78 l_wp_param_props_rec.PROPERTY_VALUE := p_PROPERTY_VALUE;
79 l_wp_param_props_rec.PROPERTY_VALUE_TL := p_PROPERTY_VALUE_TL;
80 l_wp_param_props_rec.VALUE_OVERRIDE_FLAG := p_VALUE_OVERRIDE_FLAG;
81 l_wp_param_props_rec.last_update_date := l_last_update_date;
82 l_wp_param_props_rec.last_updated_by := user_id;
83 l_wp_param_props_rec.last_update_login := 0;
84 l_wp_param_props_rec.NOT_VALID_FLAG := p_NOT_VALID_FLAG;
85 l_wp_param_props_rec.creation_date := sysdate;
86 l_wp_param_props_rec.created_by := user_id;
87
88 Update_Row (p_wp_param_props_rec => l_wp_param_props_rec);
89 EXCEPTION
90 when no_data_found then
91 Insert_Row (p_wp_param_props_rec => l_wp_param_props_rec);
92 END;
93 END Load_Row;
94
95
96
97 PROCEDURE translate_row (
98 p_PARAM_PROPERTY_ID IN NUMBER,
99 p_PROPERTY_VALUE_TL IN VARCHAR2,
100 p_last_update_date IN VARCHAR2,
101 p_owner IN VARCHAR2)
102 IS
103 user_id number := 0;
104
105 BEGIN
106
107 user_id := fnd_load_util.owner_id(P_OWNER);
108
109 -- only UPDATE rows that have not been altered by user
110 UPDATE ieu_wp_param_props_tl SET
111 PROPERTY_VALUE = p_PROPERTY_VALUE_TL,
112 source_lang = userenv('LANG'),
113 last_update_date = decode(p_last_update_date, null,sysdate,to_date(p_last_update_date, 'YYYY/MM/DD')),
114 --last_updated_by = decode(p_owner, 'SEED', -1, 0),
115 last_updated_by = user_id,
116 last_update_login = 0
117 WHERE PARAM_PROPERTY_ID = p_PARAM_PROPERTY_ID
118 AND userenv('LANG') IN (language, source_lang);
119 end translate_row;
120
121
122
123 procedure DELETE_ROW (
124 X_PARAM_PROPERTY_ID in NUMBER)
125 is
126 begin
127 delete from IEU_WP_PARAM_PROPS_TL
128 where PARAM_PROPERTY_ID = X_PARAM_PROPERTY_ID;
129
130 if (sql%notfound) then
131 raise no_data_found;
132 end if;
133
134 delete from IEU_WP_PARAM_PROPS_B
135 where PARAM_PROPERTY_ID = X_PARAM_PROPERTY_ID;
136
137 if (sql%notfound) then
138 raise no_data_found;
139 end if;
140 end DELETE_ROW;
141
142 PROCEDURE Insert_Row (p_wp_param_props_rec IN wp_param_props_rec_type)
143 IS
144 CURSOR c IS
145 SELECT 'X'
146 FROM ieu_wp_param_props_b
147 WHERE param_property_id = p_wp_param_props_rec.param_property_id;
148
149 l_dummy CHAR(1);
150 l_trans_flag IEU_WP_PROPERTIES_B.VALUE_TRANSLATABLE_FLAG%TYPE;
151 l_temp ieu_wp_param_props_b.property_value%type;
152 l_sequence NUMBER;
153 BEGIN
154 -- API body
155 -- if (p_wp_param_props_rec.property_id <> 10000) then
156 insert into IEU_WP_PARAM_PROPS_B
157 ( PARAM_PROPERTY_ID,
158 CREATED_BY,
159 CREATION_DATE,
160 LAST_UPDATED_BY,
161 LAST_UPDATE_DATE,
162 LAST_UPDATE_LOGIN,
163 ACTION_PARAM_SET_ID,
164 PARAM_ID,
165 PROPERTY_ID,
166 PROPERTY_VALUE,
167 VALUE_OVERRIDE_FLAG,
168 NOT_VALID_FLAG,
169 OBJECT_VERSION_NUMBER,
170 security_group_id)
171 values( p_wp_param_props_rec.PARAM_PROPERTY_ID,
172 FND_GLOBAL.USER_ID,
173 SYSDATE,
174 FND_GLOBAL.USER_ID,
175 SYSDATE,
176 FND_GLOBAL.LOGIN_ID,
177 p_wp_param_props_rec.ACTION_PARAM_SET_ID,
178 p_wp_param_props_rec.PARAM_ID,
179 p_wp_param_props_rec.PROPERTY_ID,
180 p_wp_param_props_rec.PROPERTY_VALUE,
181 p_wp_param_props_rec.VALUE_OVERRIDE_FLAG,
182 p_wp_param_props_rec.NOT_VALID_FLAG,
183 1,
184 null);
185
186 select VALUE_TRANSLATABLE_FLAG into l_trans_flag
187 from ieu_wp_properties_b
188 where property_id =p_wp_param_props_rec.PROPERTY_ID;
189
190 if (l_trans_flag = 'Y') then
191 INSERT INTO ieu_wp_param_props_tl (
192 PARAM_PROPERTY_ID,
193 language,
194 created_by,
195 creation_date,
196 last_updated_by,
197 last_update_date,
198 last_update_login,
199 property_value,
200 object_version_number,
201 security_group_id,
202 source_lang
203 ) SELECT
204 p_wp_param_props_rec.PARAM_PROPERTY_ID,
205 l.language_code,
206 p_wp_param_props_rec.created_by,
207 p_wp_param_props_rec.creation_date,
208 p_wp_param_props_rec.last_updated_by,
209 p_wp_param_props_rec.last_update_date,
210 p_wp_param_props_rec.last_update_login,
211 p_wp_param_props_rec.PROPERTY_VALUE_TL,
212 1,
213 null,
214 USERENV('LANG')
215 FROM fnd_languages l
216 WHERE l.installed_flag IN ('I', 'B')
217 AND NOT EXISTS
218 (SELECT NULL
219 FROM ieu_wp_param_props_tl t
220 WHERE t.PARAM_PROPERTY_ID = p_wp_param_props_rec.PARAM_PROPERTY_ID
221 AND t.language = l.language_code);
222 end if ;
223 OPEN c;
224 FETCH c INTO l_dummy;
225 IF (c%NOTFOUND) THEN
226 CLOSE c;
227 RAISE NO_DATA_FOUND;
228 END IF;
229 CLOSE c;
230 -- End of API body
231 -- end if;
232 END Insert_Row;
233
234 procedure ADD_LANGUAGE
235 is
236 begin
237 delete from IEU_WP_PARAM_PROPS_TL T
238 where not exists
239 (select NULL
240 from IEU_WP_PARAM_PROPS_B B
241 where B.PARAM_PROPERTY_ID = T.PARAM_PROPERTY_ID
242 );
243
244 update IEU_WP_PARAM_PROPS_TL T set (
245 PROPERTY_VALUE
246 ) = (select
247 B.PROPERTY_VALUE
248 from IEU_WP_PARAM_PROPS_TL B
249 where B.PARAM_PROPERTY_ID = T.PARAM_PROPERTY_ID
250 and B.LANGUAGE = T.SOURCE_LANG)
251 where (
252 T.PARAM_PROPERTY_ID,
253 T.LANGUAGE
254 ) in (select
255 SUBT.PARAM_PROPERTY_ID,
256 SUBT.LANGUAGE
257 from IEU_WP_PARAM_PROPS_TL SUBB, IEU_WP_PARAM_PROPS_TL SUBT
258 where SUBB.PARAM_PROPERTY_ID = SUBT.PARAM_PROPERTY_ID
259 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
260 and (SUBB.PROPERTY_VALUE <> SUBT.PROPERTY_VALUE
261 or (SUBB.PROPERTY_VALUE is null and SUBT.PROPERTY_VALUE is not null)
262 or (SUBB.PROPERTY_VALUE is not null and SUBT.PROPERTY_VALUE is null)
263 ));
264
265 insert into IEU_WP_PARAM_PROPS_TL (
266 PARAM_PROPERTY_ID,
267 OBJECT_VERSION_NUMBER,
268 CREATED_BY,
269 CREATION_DATE,
270 LAST_UPDATED_BY,
271 LAST_UPDATE_DATE,
272 LAST_UPDATE_LOGIN,
273 SECURITY_GROUP_ID,
274 PROPERTY_VALUE,
275 LANGUAGE,
276 SOURCE_LANG
277 ) select
278 B.PARAM_PROPERTY_ID,
279 B.OBJECT_VERSION_NUMBER,
280 B.CREATED_BY,
281 B.CREATION_DATE,
282 B.LAST_UPDATED_BY,
283 B.LAST_UPDATE_DATE,
284 B.LAST_UPDATE_LOGIN,
285 B.SECURITY_GROUP_ID,
286 B.PROPERTY_VALUE,
287 L.LANGUAGE_CODE,
288 B.SOURCE_LANG
289 from IEU_WP_PARAM_PROPS_TL B, FND_LANGUAGES L
290 where L.INSTALLED_FLAG in ('I', 'B')
291 and B.LANGUAGE = userenv('LANG')
292 and not exists
293 (select NULL
294 from IEU_WP_PARAM_PROPS_TL T
295 where T.PARAM_PROPERTY_ID = B.PARAM_PROPERTY_ID
296 and T.LANGUAGE = L.LANGUAGE_CODE);
297 end ADD_LANGUAGE;
298
299 PROCEDURE Load_seed_Row (
300 p_upload_mode IN VARCHAR2,
301 p_PARAM_PROPERTY_ID IN NUMBER,
302 p_ACTION_PARAM_SET_ID IN NUMBER,
303 p_PARAM_ID IN NUMBER,
304 p_PROPERTY_ID IN NUMBER,
305 p_PROPERTY_VALUE IN VARCHAR2,
306 p_VALUE_OVERRIDE_FLAG IN VARCHAR2,
307 p_PROPERTY_VALUE_TL IN VARCHAR2,
308 p_NOT_VALID_FLAG IN VARCHAR2,
309 p_last_update_date IN VARCHAR2,
310 p_owner IN VARCHAR2
311 )is
312 begin
313
314 if (P_UPLOAD_MODE = 'NLS') then
315 TRANSLATE_ROW (
316 P_PARAM_PROPERTY_ID,
317 P_PROPERTY_VALUE_TL,
318 P_LAST_UPDATE_DATE,
319 P_OWNER);
320 else
321 LOAD_ROW (
322 P_PARAM_PROPERTY_ID,
323 P_ACTION_PARAM_SET_ID,
324 P_PARAM_ID,
325 P_PROPERTY_ID,
326 P_PROPERTY_VALUE,
327 P_VALUE_OVERRIDE_FLAG,
328 P_PROPERTY_VALUE_TL,
329 p_NOT_VALID_FLAG,
330 P_LAST_UPDATE_DATE,
331 P_OWNER);
332 end if;
333 end Load_seed_Row ;
334
335 END IEU_WP_PARAM_PROPS_SEED_PKG;