[Home] [Help]
PACKAGE BODY: APPS.JTF_IH_ACTIONS_SEED_PVT
Source
1 package body JTF_IH_ACTIONS_SEED_PVT as
2 /* $Header: JTFIHACB.pls 115.1 2000/02/15 12:25:07 pkm ship $ */
3 procedure INSERT_ROW (
4 X_ROWID in out VARCHAR2,
5 X_ACTION_ID in NUMBER,
6 X_OBJECT_VERSION_NUMBER in NUMBER,
7 X_ACTION in VARCHAR2,
8 X_SHORT_DESCRIPTION in VARCHAR2,
9 X_CREATION_DATE in DATE,
10 X_CREATED_BY in NUMBER,
11 X_LAST_UPDATE_DATE in DATE,
12 X_LAST_UPDATED_BY in NUMBER,
13 X_LAST_UPDATE_LOGIN in NUMBER
14 ) is
15 cursor C is select ROWID from JTF_IH_ACTIONS_B
16 where ACTION_ID = X_ACTION_ID
17 ;
18 begin
19 insert into JTF_IH_ACTIONS_B (
20 ACTION_ID,
21 OBJECT_VERSION_NUMBER,
22 CREATION_DATE,
23 CREATED_BY,
24 LAST_UPDATE_DATE,
25 LAST_UPDATED_BY,
26 LAST_UPDATE_LOGIN
27 ) values (
28 X_ACTION_ID,
29 X_OBJECT_VERSION_NUMBER,
30 X_CREATION_DATE,
31 X_CREATED_BY,
32 X_LAST_UPDATE_DATE,
33 X_LAST_UPDATED_BY,
34 X_LAST_UPDATE_LOGIN
35 );
36
37 insert into JTF_IH_ACTIONS_TL (
38 ACTION_ID,
39 OBJECT_VERSION_NUMBER,
40 CREATED_BY,
41 CREATION_DATE,
42 LAST_UPDATED_BY,
43 LAST_UPDATE_DATE,
44 LAST_UPDATE_LOGIN,
45 ACTION,
46 SHORT_DESCRIPTION,
47 LANGUAGE,
48 SOURCE_LANG
49 ) select
50 X_ACTION_ID,
51 X_OBJECT_VERSION_NUMBER,
52 X_CREATED_BY,
53 X_CREATION_DATE,
54 X_LAST_UPDATED_BY,
55 X_LAST_UPDATE_DATE,
56 X_LAST_UPDATE_LOGIN,
57 X_ACTION,
58 X_SHORT_DESCRIPTION,
59 L.LANGUAGE_CODE,
60 userenv('LANG')
61 from FND_LANGUAGES L
62 where L.INSTALLED_FLAG in ('I', 'B')
63 and not exists
64 (select NULL
65 from JTF_IH_ACTIONS_TL T
66 where T.ACTION_ID = X_ACTION_ID
67 and T.LANGUAGE = L.LANGUAGE_CODE);
68
69 open c;
70 fetch c into X_ROWID;
71 if (c%notfound) then
72 close c;
73 raise no_data_found;
74 end if;
75 close c;
76
77 end INSERT_ROW;
78
79 procedure LOCK_ROW (
80 X_ACTION_ID in NUMBER,
81 X_OBJECT_VERSION_NUMBER in NUMBER,
82 X_ACTION in VARCHAR2,
83 X_SHORT_DESCRIPTION in VARCHAR2
84 ) is
85 cursor c is select
86 OBJECT_VERSION_NUMBER
87 from JTF_IH_ACTIONS_B
88 where ACTION_ID = X_ACTION_ID
89 for update of ACTION_ID nowait;
90 recinfo c%rowtype;
91
92 cursor c1 is select
93 ACTION,
94 SHORT_DESCRIPTION,
95 decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
96 from JTF_IH_ACTIONS_TL
97 where ACTION_ID = X_ACTION_ID
98 and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
99 for update of ACTION_ID nowait;
100 begin
101 open c;
102 fetch c into recinfo;
103 if (c%notfound) then
104 close c;
105 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
106 app_exception.raise_exception;
107 end if;
108 close c;
109 if ( ((recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
110 OR ((recinfo.OBJECT_VERSION_NUMBER is null) AND (X_OBJECT_VERSION_NUMBER is null)))
111 ) then
112 null;
113 else
114 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
115 app_exception.raise_exception;
116 end if;
117
118 for tlinfo in c1 loop
119 if (tlinfo.BASELANG = 'Y') then
120 if ( ((tlinfo.ACTION = X_ACTION)
121 OR ((tlinfo.ACTION is null) AND (X_ACTION is null)))
122 AND ((tlinfo.SHORT_DESCRIPTION = X_SHORT_DESCRIPTION)
123 OR ((tlinfo.SHORT_DESCRIPTION is null) AND (X_SHORT_DESCRIPTION is null)))
124 ) then
125 null;
126 else
127 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
128 app_exception.raise_exception;
129 end if;
130 end if;
131 end loop;
132 return;
133 end LOCK_ROW;
134
135 procedure UPDATE_ROW (
136 X_ACTION_ID in NUMBER,
137 X_OBJECT_VERSION_NUMBER in NUMBER,
138 X_ACTION in VARCHAR2,
139 X_SHORT_DESCRIPTION in VARCHAR2,
140 X_LAST_UPDATE_DATE in DATE,
141 X_LAST_UPDATED_BY in NUMBER,
142 X_LAST_UPDATE_LOGIN in NUMBER
143 ) is
144 begin
145 update JTF_IH_ACTIONS_B set
146 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
147 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
148 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
149 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
150 where ACTION_ID = X_ACTION_ID;
151
152 if (sql%notfound) then
153 raise no_data_found;
154 end if;
155
156 update JTF_IH_ACTIONS_TL set
157 ACTION = X_ACTION,
158 SHORT_DESCRIPTION = X_SHORT_DESCRIPTION,
159 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
160 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
161 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
162 SOURCE_LANG = userenv('LANG')
163 where ACTION_ID = X_ACTION_ID
164 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
165
166 if (sql%notfound) then
167 raise no_data_found;
168 end if;
169 end UPDATE_ROW;
170
171 procedure DELETE_ROW (
172 X_ACTION_ID in NUMBER
173 ) is
174 begin
175 delete from JTF_IH_ACTIONS_TL
176 where ACTION_ID = X_ACTION_ID;
177
178 if (sql%notfound) then
179 raise no_data_found;
180 end if;
181
182 delete from JTF_IH_ACTIONS_B
183 where ACTION_ID = X_ACTION_ID;
184
185 if (sql%notfound) then
186 raise no_data_found;
187 end if;
188 end DELETE_ROW;
189
190 procedure ADD_LANGUAGE
191 is
192 begin
193 delete from JTF_IH_ACTIONS_TL T
194 where not exists
195 (select NULL
196 from JTF_IH_ACTIONS_B B
197 where B.ACTION_ID = T.ACTION_ID
198 );
199
200 update JTF_IH_ACTIONS_TL T set (
201 ACTION,
202 SHORT_DESCRIPTION
203 ) = (select
204 B.ACTION,
205 B.SHORT_DESCRIPTION
206 from JTF_IH_ACTIONS_TL B
207 where B.ACTION_ID = T.ACTION_ID
208 and B.LANGUAGE = T.SOURCE_LANG)
209 where (
210 T.ACTION_ID,
211 T.LANGUAGE
212 ) in (select
213 SUBT.ACTION_ID,
214 SUBT.LANGUAGE
215 from JTF_IH_ACTIONS_TL SUBB, JTF_IH_ACTIONS_TL SUBT
216 where SUBB.ACTION_ID = SUBT.ACTION_ID
217 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
218 and (SUBB.ACTION <> SUBT.ACTION
219 or (SUBB.ACTION is null and SUBT.ACTION is not null)
220 or (SUBB.ACTION is not null and SUBT.ACTION is null)
221 or SUBB.SHORT_DESCRIPTION <> SUBT.SHORT_DESCRIPTION
222 or (SUBB.SHORT_DESCRIPTION is null and SUBT.SHORT_DESCRIPTION is not null)
223 or (SUBB.SHORT_DESCRIPTION is not null and SUBT.SHORT_DESCRIPTION is null)
224 ));
225
226 insert into JTF_IH_ACTIONS_TL (
227 ACTION_ID,
228 OBJECT_VERSION_NUMBER,
229 CREATED_BY,
230 CREATION_DATE,
231 LAST_UPDATED_BY,
232 LAST_UPDATE_DATE,
233 LAST_UPDATE_LOGIN,
234 ACTION,
235 SHORT_DESCRIPTION,
236 LANGUAGE,
237 SOURCE_LANG
238 ) select
239 B.ACTION_ID,
240 B.OBJECT_VERSION_NUMBER,
241 B.CREATED_BY,
242 B.CREATION_DATE,
243 B.LAST_UPDATED_BY,
244 B.LAST_UPDATE_DATE,
245 B.LAST_UPDATE_LOGIN,
246 B.ACTION,
247 B.SHORT_DESCRIPTION,
248 L.LANGUAGE_CODE,
249 B.SOURCE_LANG
250 from JTF_IH_ACTIONS_TL B, FND_LANGUAGES L
251 where L.INSTALLED_FLAG in ('I', 'B')
252 and B.LANGUAGE = userenv('LANG')
253 and not exists
254 (select NULL
255 from JTF_IH_ACTIONS_TL T
256 where T.ACTION_ID = B.ACTION_ID
257 and T.LANGUAGE = L.LANGUAGE_CODE);
258 end ADD_LANGUAGE;
259
260 procedure LOAD_ROW (
261 X_ACTION_ID in NUMBER,
262 X_ACTION in VARCHAR2,
263 X_OBJECT_VERSION_NUMBER in NUMBER,
264 X_SHORT_DESCRIPTION in VARCHAR2,
265 X_OWNER IN VARCHAR2
266 ) IS
267 begin
268 declare
269 user_id NUMBER := 0;
270 row_id VARCHAR2(64);
271 l_api_version NUMBER := 1.0;
272 l_return_status VARCHAR2(1);
273 l_msg_count NUMBER;
274 l_msg_data VARCHAR2(100);
275 l_init_msg_list VARCHAR2(1) := 'F';
276 l_commit VARCHAR2(1) := 'F';
277 l_validation_level NUMBER := 100;
278 l_action_id NUMBER;
279 l_object_version_number NUMBER;
280 l_action VARCHAR2(80);
281 l_short_description VARCHAR2(240);
282 l_last_update_date DATE;
283 l_last_updated_by NUMBER;
284 l_last_update_login NUMBER;
285 l_creation_date DATE;
286 l_created_by NUMBER;
287
288 begin
289 if (x_owner = 'SEED') then
290 user_id := -1;
291 end if;
292 l_action_id := X_ACTION_ID;
293 l_object_version_number := 1;
294 l_action := X_ACTION;
295 l_short_description := X_SHORT_DESCRIPTION;
296 l_last_update_date := sysdate;
297 l_last_updated_by := user_id;
298 l_last_update_login := 0;
299
300 UPDATE_ROW(
301 X_ACTION_ID => l_action_id,
302 X_OBJECT_VERSION_NUMBER => l_object_version_number,
303 X_ACTION => l_action,
304 X_SHORT_DESCRIPTION => l_short_description,
305 X_LAST_UPDATE_DATE => l_last_update_date,
306 X_LAST_UPDATED_BY => l_last_updated_by,
307 X_LAST_UPDATE_LOGIN => l_last_update_login);
308 EXCEPTION
309 when no_data_found then
310 l_creation_date := sysdate;
311 l_created_by := user_id;
312 INSERT_ROW(
313 row_id,
314 X_ACTION_ID => l_action_id,
315 X_OBJECT_VERSION_NUMBER => l_object_version_number,
316 X_ACTION => l_action,
317 X_SHORT_DESCRIPTION => l_short_description,
318 X_CREATION_DATE => l_creation_date,
319 X_CREATED_BY => l_created_by,
320 X_LAST_UPDATE_DATE => l_last_update_date,
321 X_LAST_UPDATED_BY => l_last_updated_by,
322 X_LAST_UPDATE_LOGIN => l_last_update_login);
323 end;
324 end LOAD_ROW;
325 procedure TRANSLATE_ROW (
326 X_ACTION_ID in NUMBER,
327 X_ACTION in VARCHAR2,
328 X_SHORT_DESCRIPTION in VARCHAR2,
329 X_OWNER IN VARCHAR2) is
330 begin
331 UPDATE jtf_ih_actions_tl SET
332 action_id = X_ACTION_ID,
333 action = X_ACTION,
334 short_description = X_SHORT_DESCRIPTION,
335 last_update_date = sysdate,
336 last_updated_by = decode(X_OWNER, 'SEED', 1, 0),
337 last_update_login = 0,
338 source_lang = userenv('LANG')
339 WHERE userenv('LANG') in (LANGUAGE, SOURCE_LANG) AND
340 action_id = X_ACTION_ID;
341 end TRANSLATE_ROW;
342
343 end JTF_IH_ACTIONS_SEED_PVT;