[Home] [Help]
PACKAGE BODY: APPS.JTF_RS_GROUPS_PKG
Source
1 package body JTF_RS_GROUPS_PKG as
2 /* $Header: jtfrstgb.pls 120.0.12010000.2 2009/05/11 07:36:47 rgokavar ship $ */
3 procedure INSERT_ROW (
4 X_ROWID in out NOCOPY VARCHAR2,
5 X_GROUP_ID in NUMBER,
6 X_ATTRIBUTE1 in VARCHAR2,
7 X_ATTRIBUTE2 in VARCHAR2,
8 X_ATTRIBUTE3 in VARCHAR2,
9 X_ATTRIBUTE4 in VARCHAR2,
10 X_ATTRIBUTE5 in VARCHAR2,
11 X_ATTRIBUTE6 in VARCHAR2,
12 X_ATTRIBUTE7 in VARCHAR2,
13 X_ATTRIBUTE8 in VARCHAR2,
14 X_ATTRIBUTE9 in VARCHAR2,
15 X_ATTRIBUTE10 in VARCHAR2,
16 X_ATTRIBUTE11 in VARCHAR2,
17 X_ATTRIBUTE12 in VARCHAR2,
18 X_ATTRIBUTE13 in VARCHAR2,
19 X_ATTRIBUTE14 in VARCHAR2,
20 X_ATTRIBUTE15 in VARCHAR2,
21 X_ATTRIBUTE_CATEGORY in VARCHAR2,
22 X_GROUP_NUMBER in VARCHAR2,
23 X_EMAIL_ADDRESS in VARCHAR2,
24 X_EXCLUSIVE_FLAG in VARCHAR2,
25 X_START_DATE_ACTIVE in DATE,
26 X_END_DATE_ACTIVE in DATE,
27 X_ACCOUNTING_CODE in VARCHAR2,
28 X_GROUP_NAME in VARCHAR2,
29 X_GROUP_DESC in VARCHAR2,
30 X_CREATION_DATE in DATE,
31 X_CREATED_BY in NUMBER,
32 X_LAST_UPDATE_DATE in DATE,
33 X_LAST_UPDATED_BY in NUMBER,
34 X_LAST_UPDATE_LOGIN in NUMBER,
35 X_TIME_ZONE in NUMBER
36 ) is
37 cursor C is select ROWID from JTF_RS_GROUPS_B
38 where GROUP_ID = X_GROUP_ID
39 ;
40 begin
41 insert into JTF_RS_GROUPS_B (
42 ATTRIBUTE1,
43 ATTRIBUTE2,
44 ATTRIBUTE3,
45 ATTRIBUTE4,
46 ATTRIBUTE5,
47 ATTRIBUTE6,
48 ATTRIBUTE7,
49 ATTRIBUTE8,
50 ATTRIBUTE9,
51 ATTRIBUTE10,
52 ATTRIBUTE11,
53 ATTRIBUTE12,
54 ATTRIBUTE13,
55 ATTRIBUTE14,
56 ATTRIBUTE15,
57 ATTRIBUTE_CATEGORY,
58 GROUP_ID,
59 GROUP_NUMBER,
60 EMAIL_ADDRESS,
61 EXCLUSIVE_FLAG,
62 START_DATE_ACTIVE,
63 END_DATE_ACTIVE,
64 ACCOUNTING_CODE,
65 OBJECT_VERSION_NUMBER,
66 CREATION_DATE,
67 CREATED_BY,
68 LAST_UPDATE_DATE,
69 LAST_UPDATED_BY,
70 LAST_UPDATE_LOGIN,
71 TIME_ZONE
72 ) values (
73 X_ATTRIBUTE1,
74 X_ATTRIBUTE2,
75 X_ATTRIBUTE3,
76 X_ATTRIBUTE4,
77 X_ATTRIBUTE5,
78 X_ATTRIBUTE6,
79 X_ATTRIBUTE7,
80 X_ATTRIBUTE8,
81 X_ATTRIBUTE9,
82 X_ATTRIBUTE10,
83 X_ATTRIBUTE11,
84 X_ATTRIBUTE12,
85 X_ATTRIBUTE13,
86 X_ATTRIBUTE14,
87 X_ATTRIBUTE15,
88 X_ATTRIBUTE_CATEGORY,
89 X_GROUP_ID,
90 X_GROUP_NUMBER,
91 X_EMAIL_ADDRESS,
92 X_EXCLUSIVE_FLAG,
93 X_START_DATE_ACTIVE,
94 X_END_DATE_ACTIVE,
95 X_ACCOUNTING_CODE,
96 1,
97 X_CREATION_DATE,
98 X_CREATED_BY,
99 X_LAST_UPDATE_DATE,
100 X_LAST_UPDATED_BY,
101 X_LAST_UPDATE_LOGIN,
102 X_TIME_ZONE
103 );
104
105 insert into JTF_RS_GROUPS_TL (
106 GROUP_ID,
107 CREATED_BY,
108 CREATION_DATE,
109 LAST_UPDATED_BY,
110 LAST_UPDATE_DATE,
111 LAST_UPDATE_LOGIN,
112 GROUP_NAME,
113 GROUP_DESC,
114 LANGUAGE,
115 SOURCE_LANG
116 ) select
117 X_GROUP_ID,
121 X_LAST_UPDATE_DATE,
118 X_CREATED_BY,
119 X_CREATION_DATE,
120 X_LAST_UPDATED_BY,
122 X_LAST_UPDATE_LOGIN,
123 X_GROUP_NAME,
124 X_GROUP_DESC,
125 L.LANGUAGE_CODE,
126 userenv('LANG')
127 from FND_LANGUAGES L
128 where L.INSTALLED_FLAG in ('I', 'B')
129 and not exists
130 (select NULL
131 from JTF_RS_GROUPS_TL T
132 where T.GROUP_ID = X_GROUP_ID
133 and T.LANGUAGE = L.LANGUAGE_CODE);
134
135 open c;
136 fetch c into X_ROWID;
137 if (c%notfound) then
138 close c;
139 raise no_data_found;
140 end if;
141 close c;
142
143 end INSERT_ROW;
144
145 procedure LOCK_ROW (
146 X_GROUP_ID in NUMBER,
147 X_OBJECT_VERSION_NUMBER in NUMBER
148 ) is
149 cursor c is select
150 OBJECT_VERSION_NUMBER
151 from JTF_RS_GROUPS_VL
152 where GROUP_ID = X_GROUP_ID
153 and OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER
154 for update of GROUP_ID nowait;
155 recinfo c%rowtype;
156
157 begin
158 open c;
159 fetch c into recinfo;
160 if (c%notfound) then
161 close c;
162 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
163 app_exception.raise_exception;
164 end if;
165
166 close c;
167
168 if recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER then
169 null;
170 else
171 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
172 app_exception.raise_exception;
173 end if;
174
175 end LOCK_ROW;
176
177 procedure UPDATE_ROW (
178 X_GROUP_ID in NUMBER,
179 X_ATTRIBUTE1 in VARCHAR2,
180 X_ATTRIBUTE2 in VARCHAR2,
181 X_ATTRIBUTE3 in VARCHAR2,
182 X_ATTRIBUTE4 in VARCHAR2,
183 X_ATTRIBUTE5 in VARCHAR2,
184 X_ATTRIBUTE6 in VARCHAR2,
185 X_ATTRIBUTE7 in VARCHAR2,
186 X_ATTRIBUTE8 in VARCHAR2,
187 X_ATTRIBUTE9 in VARCHAR2,
188 X_ATTRIBUTE10 in VARCHAR2,
189 X_ATTRIBUTE11 in VARCHAR2,
190 X_ATTRIBUTE12 in VARCHAR2,
191 X_ATTRIBUTE13 in VARCHAR2,
192 X_ATTRIBUTE14 in VARCHAR2,
193 X_ATTRIBUTE15 in VARCHAR2,
194 X_ATTRIBUTE_CATEGORY in VARCHAR2,
195 X_GROUP_NUMBER in VARCHAR2,
196 X_EMAIL_ADDRESS in VARCHAR2,
197 X_EXCLUSIVE_FLAG in VARCHAR2,
198 X_START_DATE_ACTIVE in DATE,
199 X_END_DATE_ACTIVE in DATE,
200 X_ACCOUNTING_CODE in VARCHAR2,
201 X_OBJECT_VERSION_NUMBER in NUMBER,
202 X_GROUP_NAME in VARCHAR2,
203 X_GROUP_DESC in VARCHAR2,
204 X_LAST_UPDATE_DATE in DATE,
205 X_LAST_UPDATED_BY in NUMBER,
206 X_LAST_UPDATE_LOGIN in NUMBER,
207 X_TIME_ZONE in NUMBER
208 ) is
209 begin
210 update JTF_RS_GROUPS_B set
211 ATTRIBUTE1 = X_ATTRIBUTE1,
212 ATTRIBUTE2 = X_ATTRIBUTE2,
213 ATTRIBUTE3 = X_ATTRIBUTE3,
214 ATTRIBUTE4 = X_ATTRIBUTE4,
215 ATTRIBUTE5 = X_ATTRIBUTE5,
216 ATTRIBUTE6 = X_ATTRIBUTE6,
217 ATTRIBUTE7 = X_ATTRIBUTE7,
218 ATTRIBUTE8 = X_ATTRIBUTE8,
219 ATTRIBUTE9 = X_ATTRIBUTE9,
220 ATTRIBUTE10 = X_ATTRIBUTE10,
221 ATTRIBUTE11 = X_ATTRIBUTE11,
222 ATTRIBUTE12 = X_ATTRIBUTE12,
223 ATTRIBUTE13 = X_ATTRIBUTE13,
224 ATTRIBUTE14 = X_ATTRIBUTE14,
225 ATTRIBUTE15 = X_ATTRIBUTE15,
226 ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY,
227 GROUP_NUMBER = X_GROUP_NUMBER,
228 EMAIL_ADDRESS = X_EMAIL_ADDRESS,
229 EXCLUSIVE_FLAG = X_EXCLUSIVE_FLAG,
230 START_DATE_ACTIVE = X_START_DATE_ACTIVE,
231 END_DATE_ACTIVE = X_END_DATE_ACTIVE,
232 ACCOUNTING_CODE = X_ACCOUNTING_CODE,
233 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
234 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
235 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
236 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
237 TIME_ZONE = X_TIME_ZONE
238 where GROUP_ID = X_GROUP_ID;
239
240 if (sql%notfound) then
241 raise no_data_found;
242 end if;
243
244 update JTF_RS_GROUPS_TL set
245 GROUP_NAME = X_GROUP_NAME,
246 GROUP_DESC = X_GROUP_DESC,
247 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
248 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
249 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
250 SOURCE_LANG = userenv('LANG')
251 where GROUP_ID = X_GROUP_ID
252 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
253
254 if (sql%notfound) then
255 raise no_data_found;
256 end if;
257 end UPDATE_ROW;
258
259 procedure DELETE_ROW (
260 X_GROUP_ID in NUMBER
261 ) is
262 begin
263 delete from JTF_RS_GROUPS_TL
264 where GROUP_ID = X_GROUP_ID;
265
266 if (sql%notfound) then
267 raise no_data_found;
268 end if;
269
270 delete from JTF_RS_GROUPS_B
271 where GROUP_ID = X_GROUP_ID;
272
273 if (sql%notfound) then
274 raise no_data_found;
275 end if;
276 end DELETE_ROW;
277
278 procedure ADD_LANGUAGE
279 is
280 begin
281 delete from JTF_RS_GROUPS_TL T
282 where not exists
283 (select NULL
284 from JTF_RS_GROUPS_B B
285 where B.GROUP_ID = T.GROUP_ID
286 );
287
288 update JTF_RS_GROUPS_TL T set (
289 GROUP_NAME,
290 GROUP_DESC
291 ) = (select
292 B.GROUP_NAME,
293 B.GROUP_DESC
294 from JTF_RS_GROUPS_TL B
295 where B.GROUP_ID = T.GROUP_ID
296 and B.LANGUAGE = T.SOURCE_LANG)
297 where (
298 T.GROUP_ID,
299 T.LANGUAGE
300 ) in (select
301 SUBT.GROUP_ID,
302 SUBT.LANGUAGE
303 from JTF_RS_GROUPS_TL SUBB, JTF_RS_GROUPS_TL SUBT
304 where SUBB.GROUP_ID = SUBT.GROUP_ID
305 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
306 and (SUBB.GROUP_NAME <> SUBT.GROUP_NAME
307 or SUBB.GROUP_DESC <> SUBT.GROUP_DESC
308 or (SUBB.GROUP_DESC is null and SUBT.GROUP_DESC is not null)
309 or (SUBB.GROUP_DESC is not null and SUBT.GROUP_DESC is null)
310 ));
311
312 insert into JTF_RS_GROUPS_TL (
313 GROUP_ID,
314 CREATED_BY,
315 CREATION_DATE,
316 LAST_UPDATED_BY,
317 LAST_UPDATE_DATE,
318 LAST_UPDATE_LOGIN,
319 GROUP_NAME,
320 GROUP_DESC,
321 LANGUAGE,
322 SOURCE_LANG
323 ) select
324 B.GROUP_ID,
325 B.CREATED_BY,
326 B.CREATION_DATE,
327 B.LAST_UPDATED_BY,
328 B.LAST_UPDATE_DATE,
329 B.LAST_UPDATE_LOGIN,
330 B.GROUP_NAME,
331 B.GROUP_DESC,
332 L.LANGUAGE_CODE,
333 B.SOURCE_LANG
334 from JTF_RS_GROUPS_TL B, FND_LANGUAGES L
335 where L.INSTALLED_FLAG in ('I', 'B')
336 and B.LANGUAGE = userenv('LANG')
337 and not exists
338 (select NULL
339 from JTF_RS_GROUPS_TL T
340 where T.GROUP_ID = B.GROUP_ID
341 and T.LANGUAGE = L.LANGUAGE_CODE);
342 end ADD_LANGUAGE;
343
344
345 Procedure TRANSLATE_ROW
346 (x_group_id in number,
347 x_group_name in varchar2,
348 x_group_desc in varchar2,
349 x_Last_update_date in date,
350 x_last_updated_by in number,
351 x_last_update_login in number)
352 is
353 begin
354
355 Update jtf_rs_groups_tl set
356 group_name = nvl(x_group_name,group_name),
357 group_desc = nvl(x_group_desc,group_desc),
358 last_update_date = nvl(x_last_update_date,sysdate),
359 last_updated_by = x_last_updated_by,
360 last_update_login = 0,
361 source_lang = userenv('LANG')
362 where group_id = x_group_id
363 and userenv('LANG') in (LANGUAGE,SOURCE_LANG);
364
365 if (sql%notfound) then
366 raise no_data_found;
367 end if;
368 end TRANSLATE_ROW;
369
370 end JTF_RS_GROUPS_PKG;