[Home] [Help]
PACKAGE BODY: APPS.MTL_ITEM_TEMPLATES_PKG
Source
1 PACKAGE BODY MTL_ITEM_TEMPLATES_PKG AS
2 /* $Header: INVVTEMB.pls 120.1.12010000.5 2008/11/17 23:17:00 akbharga ship $ */
3
4 PROCEDURE INSERT_ROW(P_Item_Templates_Rec IN MTL_ITEM_TEMPLATES_B%ROWTYPE,
5 X_ROWID OUT NOCOPY ROWID) IS
6 BEGIN
7
8 INSERT INTO MTL_ITEM_TEMPLATES_B (
9 TEMPLATE_ID,
10 TEMPLATE_NAME,
11 DESCRIPTION,
12 LAST_UPDATE_DATE,
13 LAST_UPDATED_BY,
14 CREATION_DATE,
15 CREATED_BY,
16 LAST_UPDATE_LOGIN,
17 ATTRIBUTE_CATEGORY,
18 ATTRIBUTE1,
19 ATTRIBUTE2,
20 ATTRIBUTE3,
21 ATTRIBUTE4,
22 ATTRIBUTE5,
23 ATTRIBUTE6,
24 ATTRIBUTE7,
25 ATTRIBUTE8,
26 ATTRIBUTE9,
27 ATTRIBUTE10,
28 ATTRIBUTE11,
29 ATTRIBUTE12,
30 ATTRIBUTE13,
31 ATTRIBUTE14,
32 ATTRIBUTE15,
33 REQUEST_ID,
34 PROGRAM_APPLICATION_ID,
35 PROGRAM_ID,
36 PROGRAM_UPDATE_DATE,
37 CONTEXT_ORGANIZATION_ID,
38 GLOBAL_ATTRIBUTE_CATEGORY,
39 GLOBAL_ATTRIBUTE1,
40 GLOBAL_ATTRIBUTE2,
41 GLOBAL_ATTRIBUTE3,
42 GLOBAL_ATTRIBUTE4,
43 GLOBAL_ATTRIBUTE5,
44 GLOBAL_ATTRIBUTE6,
45 GLOBAL_ATTRIBUTE7,
46 GLOBAL_ATTRIBUTE8,
47 GLOBAL_ATTRIBUTE9,
48 GLOBAL_ATTRIBUTE10,
49 GLOBAL_ATTRIBUTE11,
50 GLOBAL_ATTRIBUTE12,
51 GLOBAL_ATTRIBUTE13,
52 GLOBAL_ATTRIBUTE14,
53 GLOBAL_ATTRIBUTE15,
54 GLOBAL_ATTRIBUTE16,
55 GLOBAL_ATTRIBUTE17,
56 GLOBAL_ATTRIBUTE18,
57 GLOBAL_ATTRIBUTE19,
58 GLOBAL_ATTRIBUTE20
59 )
60 VALUES (
61 P_Item_Templates_Rec.TEMPLATE_ID,
62 P_Item_Templates_Rec.TEMPLATE_NAME,
63 P_Item_Templates_Rec.DESCRIPTION,
64 P_Item_Templates_Rec.LAST_UPDATE_DATE,
65 P_Item_Templates_Rec.LAST_UPDATED_BY,
66 P_Item_Templates_Rec.CREATION_DATE,
67 P_Item_Templates_Rec.CREATED_BY,
68 P_Item_Templates_Rec.LAST_UPDATE_LOGIN,
69 P_Item_Templates_Rec.ATTRIBUTE_CATEGORY,
70 P_Item_Templates_Rec.ATTRIBUTE1,
71 P_Item_Templates_Rec.ATTRIBUTE2,
72 P_Item_Templates_Rec.ATTRIBUTE3,
73 P_Item_Templates_Rec.ATTRIBUTE4,
74 P_Item_Templates_Rec.ATTRIBUTE5,
75 P_Item_Templates_Rec.ATTRIBUTE6,
76 P_Item_Templates_Rec.ATTRIBUTE7,
77 P_Item_Templates_Rec.ATTRIBUTE8,
78 P_Item_Templates_Rec.ATTRIBUTE9,
79 P_Item_Templates_Rec.ATTRIBUTE10,
80 P_Item_Templates_Rec.ATTRIBUTE11,
81 P_Item_Templates_Rec.ATTRIBUTE12,
82 P_Item_Templates_Rec.ATTRIBUTE13,
83 P_Item_Templates_Rec.ATTRIBUTE14,
84 P_Item_Templates_Rec.ATTRIBUTE15,
85 P_Item_Templates_Rec.REQUEST_ID,
86 P_Item_Templates_Rec.PROGRAM_APPLICATION_ID,
87 P_Item_Templates_Rec.PROGRAM_ID,
88 P_Item_Templates_Rec.PROGRAM_UPDATE_DATE,
89 P_Item_Templates_Rec.CONTEXT_ORGANIZATION_ID,
90 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE_CATEGORY,
91 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE1,
92 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE2,
93 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE3,
94 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE4,
95 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE5,
96 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE6,
97 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE7,
98 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE8,
99 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE9,
100 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE10,
101 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE11,
102 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE12,
103 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE13,
104 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE14,
105 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE15,
106 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE16,
107 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE17,
108 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE18,
109 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE19,
110 P_Item_Templates_Rec.GLOBAL_ATTRIBUTE20
111 )
112 RETURNING ROWID INTO X_ROWID;
113
114 INSERT INTO MTL_ITEM_TEMPLATES_TL (
115 TEMPLATE_ID,
116 TEMPLATE_NAME,
117 DESCRIPTION,
118 CREATION_DATE,
119 CREATED_BY,
120 LAST_UPDATE_DATE,
121 LAST_UPDATED_BY,
122 LAST_UPDATE_LOGIN,
123 LANGUAGE,
124 SOURCE_LANG)
125 SELECT P_Item_Templates_Rec.TEMPLATE_ID,
126 P_Item_Templates_Rec.TEMPLATE_NAME,
127 P_Item_Templates_Rec.DESCRIPTION,
128 P_Item_Templates_Rec.CREATION_DATE,
129 P_Item_Templates_Rec.CREATED_BY,
130 P_Item_Templates_Rec.LAST_UPDATE_DATE,
131 P_Item_Templates_Rec.LAST_UPDATED_BY,
132 P_Item_Templates_Rec.LAST_UPDATE_LOGIN,
133 L.LANGUAGE_CODE,
134 USERENV('LANG')
135 FROM FND_LANGUAGES L
136 WHERE L.INSTALLED_FLAG in ('I', 'B')
137 AND NOT EXISTS (SELECT NULL
138 FROM MTL_ITEM_TEMPLATES_TL T
139 WHERE T.TEMPLATE_ID = P_Item_Templates_Rec.TEMPLATE_ID
140 AND T.LANGUAGE = L.LANGUAGE_CODE);
141 END INSERT_ROW;
142
143 PROCEDURE LOCK_ROW (P_Item_Templates_Rec IN MTL_ITEM_TEMPLATES_B%ROWTYPE) IS
144
145 CURSOR c_get_item_templates IS
146 SELECT
147 TEMPLATE_ID,
148 ATTRIBUTE_CATEGORY,
149 ATTRIBUTE1,
150 ATTRIBUTE2,
151 ATTRIBUTE3,
152 ATTRIBUTE4,
153 ATTRIBUTE5,
154 ATTRIBUTE6,
155 ATTRIBUTE7,
156 ATTRIBUTE8,
157 ATTRIBUTE9,
158 ATTRIBUTE10,
159 ATTRIBUTE11,
160 ATTRIBUTE12,
161 ATTRIBUTE13,
162 ATTRIBUTE14,
163 ATTRIBUTE15,
164 CONTEXT_ORGANIZATION_ID
165 FROM MTL_ITEM_TEMPLATES_B
166 WHERE TEMPLATE_ID = P_Item_Templates_Rec.TEMPLATE_ID;
167
168 CURSOR c_get_templates_trans IS
169 SELECT
170 TEMPLATE_NAME,
171 DESCRIPTION,
172 DECODE(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
173 FROM MTL_ITEM_TEMPLATES_TL
174 WHERE TEMPLATE_ID = P_Item_Templates_Rec.TEMPLATE_ID
175 AND USERENV('LANG') IN (LANGUAGE, SOURCE_LANG);
176
177 recinfo c_get_item_templates%rowtype;
178
179 BEGIN
180
181 OPEN c_get_item_templates;
182 FETCH c_get_item_templates INTO recinfo;
183 IF (c_get_item_templates%notfound) THEN
184 CLOSE c_get_item_templates;
185 fnd_message.set_name('FND','FORM_RECORD_DELETED');
186 Raise FND_API.g_EXC_UNEXPECTED_ERROR;
187 END IF;
188 CLOSE c_get_item_templates;
189
190 IF ((recinfo.TEMPLATE_ID = P_Item_Templates_Rec.Template_Id)
191 AND ((recinfo.CONTEXT_ORGANIZATION_ID = P_Item_Templates_Rec.CONTEXT_ORGANIZATION_ID)
192 OR ((recinfo.CONTEXT_ORGANIZATION_ID is null) AND (P_Item_Templates_Rec.CONTEXT_ORGANIZATION_ID is null)))
193 AND ((recinfo.ATTRIBUTE_CATEGORY = P_Item_Templates_Rec.ATTRIBUTE_CATEGORY)
194 OR ((recinfo.ATTRIBUTE_CATEGORY is null) AND (P_Item_Templates_Rec.ATTRIBUTE_CATEGORY is null)))
195 AND ((recinfo.ATTRIBUTE1 = P_Item_Templates_Rec.ATTRIBUTE1)
196 OR ((recinfo.ATTRIBUTE1 is null) AND (P_Item_Templates_Rec.ATTRIBUTE1 is null)))
197 AND ((recinfo.ATTRIBUTE2 = P_Item_Templates_Rec.ATTRIBUTE2)
198 OR ((recinfo.ATTRIBUTE2 is null) AND (P_Item_Templates_Rec.ATTRIBUTE2 is null)))
199 AND ((recinfo.ATTRIBUTE3 = P_Item_Templates_Rec.ATTRIBUTE3)
200 OR ((recinfo.ATTRIBUTE3 is null) AND (P_Item_Templates_Rec.ATTRIBUTE3 is null)))
201 AND ((recinfo.ATTRIBUTE4 = P_Item_Templates_Rec.ATTRIBUTE4)
202 OR ((recinfo.ATTRIBUTE4 is null) AND (P_Item_Templates_Rec.ATTRIBUTE4 is null)))
203 AND ((recinfo.ATTRIBUTE5 = P_Item_Templates_Rec.ATTRIBUTE5)
204 OR ((recinfo.ATTRIBUTE5 is null) AND (P_Item_Templates_Rec.ATTRIBUTE5 is null)))
205 AND ((recinfo.ATTRIBUTE6 = P_Item_Templates_Rec.ATTRIBUTE6)
206 OR ((recinfo.ATTRIBUTE6 is null) AND (P_Item_Templates_Rec.ATTRIBUTE6 is null)))
207 AND ((recinfo.ATTRIBUTE7 = P_Item_Templates_Rec.ATTRIBUTE7)
208 OR ((recinfo.ATTRIBUTE7 is null) AND (P_Item_Templates_Rec.ATTRIBUTE7 is null)))
209 AND ((recinfo.ATTRIBUTE8 = P_Item_Templates_Rec.ATTRIBUTE8)
210 OR ((recinfo.ATTRIBUTE8 is null) AND (P_Item_Templates_Rec.ATTRIBUTE8 is null)))
211 AND ((recinfo.ATTRIBUTE9 = P_Item_Templates_Rec.ATTRIBUTE9)
212 OR ((recinfo.ATTRIBUTE9 is null) AND (P_Item_Templates_Rec.ATTRIBUTE9 is null)))
213 AND ((recinfo.ATTRIBUTE10 = P_Item_Templates_Rec.ATTRIBUTE10)
214 OR ((recinfo.ATTRIBUTE10 is null) AND (P_Item_Templates_Rec.ATTRIBUTE10 is null)))
215 AND ((recinfo.ATTRIBUTE11 = P_Item_Templates_Rec.ATTRIBUTE11)
216 OR ((recinfo.ATTRIBUTE11 is null) AND (P_Item_Templates_Rec.ATTRIBUTE11 is null)))
217 AND ((recinfo.ATTRIBUTE12 = P_Item_Templates_Rec.ATTRIBUTE12)
218 OR ((recinfo.ATTRIBUTE12 is null) AND (P_Item_Templates_Rec.ATTRIBUTE12 is null)))
219 AND ((recinfo.ATTRIBUTE13 = P_Item_Templates_Rec.ATTRIBUTE13)
220 OR ((recinfo.ATTRIBUTE13 is null) AND (P_Item_Templates_Rec.ATTRIBUTE13 is null)))
221 AND ((recinfo.ATTRIBUTE14 = P_Item_Templates_Rec.ATTRIBUTE14)
222 OR ((recinfo.ATTRIBUTE14 is null) AND (P_Item_Templates_Rec.ATTRIBUTE14 is null)))
223 AND ((recinfo.ATTRIBUTE15 = P_Item_Templates_Rec.ATTRIBUTE15)
224 OR ((recinfo.ATTRIBUTE15 is null) AND (P_Item_Templates_Rec.ATTRIBUTE15 is null))))
225 THEN
226 NULL;
227 ELSE
228 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
229 Raise FND_API.g_EXC_UNEXPECTED_ERROR;
230 END IF;
231
232 FOR tlinfo IN c_get_templates_trans
233 LOOP
234 IF (tlinfo.BASELANG = 'Y') THEN
235 IF((tlinfo.DESCRIPTION = P_Item_Templates_Rec.DESCRIPTION)
236 OR ((tlinfo.DESCRIPTION is null) AND (P_Item_Templates_Rec.DESCRIPTION is null))
237 AND ((tlinfo.template_name = P_Item_Templates_Rec.TEMPLATE_NAME)
238 OR ((tlinfo.template_name is null) AND (P_Item_Templates_Rec.TEMPLATE_NAME is null))))
239 THEN
240 NULL;
241 ELSE
242 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
243 Raise FND_API.g_EXC_UNEXPECTED_ERROR;
244 END IF;
245 END IF;
246 END LOOP;
247
248 EXCEPTION
249 WHEN FND_API.g_EXC_UNEXPECTED_ERROR THEN
250 IF ( c_get_item_templates%ISOPEN ) THEN
251 CLOSE c_get_item_templates;
252 END IF;
253 IF ( c_get_templates_trans%ISOPEN ) THEN
254 CLOSE c_get_templates_trans;
255 END IF;
256 app_exception.raise_exception;
257 END LOCK_ROW;
258
259 PROCEDURE UPDATE_ROW (P_Item_Templates_Rec IN MTL_ITEM_Templates_B%ROWTYPE) IS
260 BEGIN
261 UPDATE MTL_ITEM_TEMPLATES_B
262 SET
263 LAST_UPDATE_DATE = P_Item_Templates_Rec.LAST_UPDATE_DATE,
264 LAST_UPDATED_BY = P_Item_Templates_Rec.LAST_UPDATED_BY,
265 CREATION_DATE = P_Item_Templates_Rec.CREATION_DATE,
266 CREATED_BY = P_Item_Templates_Rec.CREATED_BY,
267 LAST_UPDATE_LOGIN = P_Item_Templates_Rec.LAST_UPDATE_LOGIN,
268 ATTRIBUTE_CATEGORY = P_Item_Templates_Rec.ATTRIBUTE_CATEGORY,
269 ATTRIBUTE1 = P_Item_Templates_Rec.ATTRIBUTE1,
270 ATTRIBUTE2 = P_Item_Templates_Rec.ATTRIBUTE2,
271 ATTRIBUTE3 = P_Item_Templates_Rec.ATTRIBUTE3,
272 ATTRIBUTE4 = P_Item_Templates_Rec.ATTRIBUTE4,
273 ATTRIBUTE5 = P_Item_Templates_Rec.ATTRIBUTE5,
274 ATTRIBUTE6 = P_Item_Templates_Rec.ATTRIBUTE6,
275 ATTRIBUTE7 = P_Item_Templates_Rec.ATTRIBUTE7,
276 ATTRIBUTE8 = P_Item_Templates_Rec.ATTRIBUTE8,
277 ATTRIBUTE9 = P_Item_Templates_Rec.ATTRIBUTE9,
278 ATTRIBUTE10 = P_Item_Templates_Rec.ATTRIBUTE10,
279 ATTRIBUTE11 = P_Item_Templates_Rec.ATTRIBUTE11,
280 ATTRIBUTE12 = P_Item_Templates_Rec.ATTRIBUTE12,
281 ATTRIBUTE13 = P_Item_Templates_Rec.ATTRIBUTE13,
282 ATTRIBUTE14 = P_Item_Templates_Rec.ATTRIBUTE14,
283 ATTRIBUTE15 = P_Item_Templates_Rec.ATTRIBUTE15,
284 REQUEST_ID = P_Item_Templates_Rec.REQUEST_ID,
285 PROGRAM_APPLICATION_ID = P_Item_Templates_Rec.PROGRAM_APPLICATION_ID,
286 PROGRAM_ID = P_Item_Templates_Rec.PROGRAM_ID,
287 PROGRAM_UPDATE_DATE = P_Item_Templates_Rec.PROGRAM_UPDATE_DATE ,
288 CONTEXT_ORGANIZATION_ID = P_Item_Templates_Rec.CONTEXT_ORGANIZATION_ID,
289 GLOBAL_ATTRIBUTE_CATEGORY = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE_CATEGORY ,
290 GLOBAL_ATTRIBUTE1 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE1,
291 GLOBAL_ATTRIBUTE2 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE2,
292 GLOBAL_ATTRIBUTE3 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE3,
293 GLOBAL_ATTRIBUTE4 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE4,
294 GLOBAL_ATTRIBUTE5 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE5,
295 GLOBAL_ATTRIBUTE6 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE6,
296 GLOBAL_ATTRIBUTE7 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE7,
297 GLOBAL_ATTRIBUTE8 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE8,
298 GLOBAL_ATTRIBUTE9 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE9,
299 GLOBAL_ATTRIBUTE10 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE10,
300 GLOBAL_ATTRIBUTE11 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE11,
301 GLOBAL_ATTRIBUTE12 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE12,
302 GLOBAL_ATTRIBUTE13 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE13,
303 GLOBAL_ATTRIBUTE14 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE14,
304 GLOBAL_ATTRIBUTE15 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE15,
305 GLOBAL_ATTRIBUTE16 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE16,
306 GLOBAL_ATTRIBUTE17 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE17,
307 GLOBAL_ATTRIBUTE18 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE18,
308 GLOBAL_ATTRIBUTE19 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE19,
309 GLOBAL_ATTRIBUTE20 = P_Item_Templates_Rec.GLOBAL_ATTRIBUTE20
310 WHERE TEMPLATE_ID = P_Item_Templates_Rec.TEMPLATE_ID;
311
312 IF (SQL%NOTFOUND) THEN
313 RAISE NO_DATA_FOUND;
314 END IF;
315
316 UPDATE MTL_ITEM_TEMPLATES_TL set
317 TEMPLATE_NAME = P_Item_Templates_Rec.TEMPLATE_NAME,
318 DESCRIPTION = P_Item_Templates_Rec.DESCRIPTION,
319 LAST_UPDATE_DATE = P_Item_Templates_Rec.LAST_UPDATE_DATE,
320 LAST_UPDATED_BY = P_Item_Templates_Rec.LAST_UPDATED_BY,
321 LAST_UPDATE_LOGIN = P_Item_Templates_Rec.LAST_UPDATE_LOGIN,
322 SOURCE_LANG = USERENV('LANG')
323 WHERE TEMPLATE_ID = P_Item_Templates_Rec.TEMPLATE_ID
324 AND USERENV('LANG') IN (LANGUAGE, SOURCE_LANG);
325
326 IF (SQL%NOTFOUND) THEN
327 RAISE NO_DATA_FOUND;
328 END IF;
329
330 EXCEPTION
331 WHEN NO_DATA_FOUND THEN
332 app_exception.raise_exception;
333
334 END UPDATE_ROW;
335
336 PROCEDURE DELETE_ROW (P_Template_Id IN NUMBER) IS
337 BEGIN
338
339 DELETE FROM MTL_ITEM_TEMPLATES_TL
340 WHERE TEMPLATE_ID = P_Template_Id;
341
342 IF (SQL%NOTFOUND) THEN
343 RAISE NO_DATA_FOUND;
344 END IF;
345
346 DELETE FROM MTL_ITEM_TEMPLATES_B
347 WHERE TEMPLATE_ID = P_Template_Id;
348
349 IF (SQL%NOTFOUND) THEN
350 RAISE NO_DATA_FOUND;
351 END IF;
352
353 EXCEPTION
354 WHEN NO_DATA_FOUND THEN
355 app_exception.raise_exception;
356 END DELETE_ROW;
357
358 PROCEDURE ADD_LANGUAGE IS
359 BEGIN
360 DELETE FROM MTL_ITEM_TEMPLATES_TL T
361 WHERE NOT EXISTS(SELECT NULL
362 FROM MTL_ITEM_TEMPLATES_B B
363 WHERE B.TEMPLATE_ID = T.TEMPLATE_ID);
364
365 UPDATE MTL_ITEM_TEMPLATES_TL T
366 SET (TEMPLATE_NAME,DESCRIPTION) = (SELECT B.TEMPLATE_NAME,B.DESCRIPTION
367 FROM MTL_ITEM_TEMPLATES_TL B
368 WHERE B.TEMPLATE_ID = T.TEMPLATE_ID
369 AND B.LANGUAGE = T.SOURCE_LANG)
370 WHERE (T.TEMPLATE_ID,
371 T.LANGUAGE) IN (SELECT SUBT.TEMPLATE_ID,
372 SUBT.LANGUAGE
373 FROM MTL_ITEM_TEMPLATES_TL SUBT,
374 MTL_ITEM_TEMPLATES_TL SUBB
375 WHERE SUBB.TEMPLATE_ID = SUBT.TEMPLATE_ID
376 AND SUBB.LANGUAGE = SUBT.SOURCE_LANG
377 AND (SUBB.DESCRIPTION <> SUBT.DESCRIPTION
378 or (SUBB.DESCRIPTION is null and SUBT.DESCRIPTION is not null)
379 or (SUBB.DESCRIPTION is not null and SUBT.DESCRIPTION is null))
380 AND (SUBB.TEMPLATE_NAME <> SUBT.TEMPLATE_NAME
381 or (SUBB.TEMPLATE_NAME is null and SUBT.TEMPLATE_NAME is not null)
382 or (SUBB.TEMPLATE_NAME is not null and SUBT.TEMPLATE_NAME is null)));
383
384 INSERT INTO MTL_ITEM_TEMPLATES_TL (
385 TEMPLATE_ID,
386 TEMPLATE_NAME,
387 DESCRIPTION,
388 CREATION_DATE,
389 CREATED_BY,
390 LAST_UPDATE_DATE,
391 LAST_UPDATED_BY,
392 LAST_UPDATE_LOGIN,
393 LANGUAGE,
394 SOURCE_LANG
395 ) SELECT B.TEMPLATE_ID,
396 B.TEMPLATE_NAME,
397 B.DESCRIPTION,
398 B.CREATION_DATE,
399 B.CREATED_BY,
400 B.LAST_UPDATE_DATE,
401 B.LAST_UPDATED_BY,
402 B.LAST_UPDATE_LOGIN,
403 L.LANGUAGE_CODE,
404 B.SOURCE_LANG
405 FROM MTL_ITEM_TEMPLATES_TL B,
406 FND_LANGUAGES L
407 WHERE L.INSTALLED_FLAG IN ('I', 'B')
408 AND B.LANGUAGE = USERENV('LANG')
409 AND NOT EXISTS (SELECT NULL
410 FROM MTL_ITEM_TEMPLATES_TL T
411 WHERE T.TEMPLATE_ID = B.TEMPLATE_ID
412 AND T.LANGUAGE = L.LANGUAGE_CODE);
413 end ADD_LANGUAGE;
414
415 end MTL_ITEM_TEMPLATES_PKG;