DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_MC_HEADERS_PKG

Source


1 package body AHL_MC_HEADERS_PKG as
2 /* $Header: AHLLMCHB.pls 120.1.12020000.2 2012/12/06 22:32:31 sareepar ship $ */
3 procedure INSERT_ROW (
4   X_ROWID in out nocopy VARCHAR2,
5   X_MC_HEADER_ID in NUMBER,
6   X_NAME in VARCHAR2,
7   X_MC_ID in NUMBER,
8   X_VERSION_NUMBER in NUMBER,
9   X_REVISION in VARCHAR2,
10   X_MODEL_CODE in VARCHAR2, -- SATHAPLI::Enigma code changes, 26-Aug-2008
11   X_CONFIG_STATUS_CODE in VARCHAR2,
12   X_OBJECT_VERSION_NUMBER in NUMBER,
13   X_SECURITY_GROUP_ID in NUMBER,
14   X_ATTRIBUTE_CATEGORY in VARCHAR2,
15   X_ATTRIBUTE1 in VARCHAR2,
16   X_ATTRIBUTE2 in VARCHAR2,
17   X_ATTRIBUTE3 in VARCHAR2,
18   X_ATTRIBUTE4 in VARCHAR2,
19   X_ATTRIBUTE5 in VARCHAR2,
20   X_ATTRIBUTE6 in VARCHAR2,
21   X_ATTRIBUTE7 in VARCHAR2,
22   X_ATTRIBUTE8 in VARCHAR2,
23   X_ATTRIBUTE9 in VARCHAR2,
24   X_ATTRIBUTE10 in VARCHAR2,
25   X_ATTRIBUTE11 in VARCHAR2,
26   X_ATTRIBUTE12 in VARCHAR2,
27   X_ATTRIBUTE13 in VARCHAR2,
28   X_ATTRIBUTE14 in VARCHAR2,
29   X_ATTRIBUTE15 in VARCHAR2,
30   X_DESCRIPTION in VARCHAR2,
31   X_CREATION_DATE in DATE,
32   X_CREATED_BY in NUMBER,
33   X_LAST_UPDATE_DATE in DATE,
34   X_LAST_UPDATED_BY in NUMBER,
35   X_LAST_UPDATE_LOGIN in NUMBER
36 ) is
37   cursor C is select ROWID from AHL_MC_HEADERS_B
38     where MC_HEADER_ID = X_MC_HEADER_ID
39     ;
40 begin
41   insert into AHL_MC_HEADERS_B (
42     MC_HEADER_ID,
43     NAME,
44     MC_ID,
45     VERSION_NUMBER,
46     REVISION,
47     MODEL_CODE, -- SATHAPLI::Enigma code changes, 26-Aug-2008
48     CONFIG_STATUS_CODE,
49     OBJECT_VERSION_NUMBER,
50     SECURITY_GROUP_ID,
51     ATTRIBUTE_CATEGORY,
52     ATTRIBUTE1,
53     ATTRIBUTE2,
54     ATTRIBUTE3,
55     ATTRIBUTE4,
56     ATTRIBUTE5,
57     ATTRIBUTE6,
58     ATTRIBUTE7,
59     ATTRIBUTE8,
60     ATTRIBUTE9,
61     ATTRIBUTE10,
62     ATTRIBUTE11,
63     ATTRIBUTE12,
64     ATTRIBUTE13,
65     ATTRIBUTE14,
66     ATTRIBUTE15,
67     CREATION_DATE,
68     CREATED_BY,
69     LAST_UPDATE_DATE,
70     LAST_UPDATED_BY,
71     LAST_UPDATE_LOGIN
72   ) values (
73     X_MC_HEADER_ID,
74     X_NAME,
75     X_MC_ID,
76     X_VERSION_NUMBER,
77     X_REVISION,
78     X_MODEL_CODE, -- SATHAPLI::Enigma code changes, 26-Aug-2008
79     X_CONFIG_STATUS_CODE,
80     X_OBJECT_VERSION_NUMBER,
81     X_SECURITY_GROUP_ID,
82     X_ATTRIBUTE_CATEGORY,
83     X_ATTRIBUTE1,
84     X_ATTRIBUTE2,
85     X_ATTRIBUTE3,
86     X_ATTRIBUTE4,
87     X_ATTRIBUTE5,
88     X_ATTRIBUTE6,
89     X_ATTRIBUTE7,
90     X_ATTRIBUTE8,
91     X_ATTRIBUTE9,
92     X_ATTRIBUTE10,
93     X_ATTRIBUTE11,
94     X_ATTRIBUTE12,
95     X_ATTRIBUTE13,
96     X_ATTRIBUTE14,
97     X_ATTRIBUTE15,
98     X_CREATION_DATE,
99     X_CREATED_BY,
100     X_LAST_UPDATE_DATE,
101     X_LAST_UPDATED_BY,
102     X_LAST_UPDATE_LOGIN
103   );
104 
105   insert into AHL_MC_HEADERS_TL (
106     MC_HEADER_ID,
107     DESCRIPTION,
108     LAST_UPDATE_DATE,
109     LAST_UPDATED_BY,
110     CREATION_DATE,
111     CREATED_BY,
112     LAST_UPDATE_LOGIN,
113     SECURITY_GROUP_ID,
114     LANGUAGE,
115     SOURCE_LANG
116   ) select
117     X_MC_HEADER_ID,
118     X_DESCRIPTION,
119     X_LAST_UPDATE_DATE,
120     X_LAST_UPDATED_BY,
121     X_CREATION_DATE,
122     X_CREATED_BY,
123     X_LAST_UPDATE_LOGIN,
124     X_SECURITY_GROUP_ID,
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 AHL_MC_HEADERS_TL T
132     where T.MC_HEADER_ID = X_MC_HEADER_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_MC_HEADER_ID in NUMBER,
147   X_NAME in VARCHAR2,
148   X_MC_ID in NUMBER,
149   X_VERSION_NUMBER in NUMBER,
150   X_REVISION in VARCHAR2,
151   X_MODEL_CODE in VARCHAR2, -- SATHAPLI::Enigma code changes, 26-Aug-2008
152   X_CONFIG_STATUS_CODE in VARCHAR2,
153   X_OBJECT_VERSION_NUMBER in NUMBER,
154   X_SECURITY_GROUP_ID in NUMBER,
155   X_ATTRIBUTE_CATEGORY in VARCHAR2,
156   X_ATTRIBUTE1 in VARCHAR2,
157   X_ATTRIBUTE2 in VARCHAR2,
158   X_ATTRIBUTE3 in VARCHAR2,
159   X_ATTRIBUTE4 in VARCHAR2,
160   X_ATTRIBUTE5 in VARCHAR2,
161   X_ATTRIBUTE6 in VARCHAR2,
162   X_ATTRIBUTE7 in VARCHAR2,
163   X_ATTRIBUTE8 in VARCHAR2,
164   X_ATTRIBUTE9 in VARCHAR2,
165   X_ATTRIBUTE10 in VARCHAR2,
166   X_ATTRIBUTE11 in VARCHAR2,
167   X_ATTRIBUTE12 in VARCHAR2,
168   X_ATTRIBUTE13 in VARCHAR2,
169   X_ATTRIBUTE14 in VARCHAR2,
170   X_ATTRIBUTE15 in VARCHAR2,
171   X_DESCRIPTION in VARCHAR2
172 ) is
173   cursor c is select
174       NAME,
175       MC_ID,
176       VERSION_NUMBER,
177       REVISION,
178       MODEL_CODE, -- SATHAPLI::Enigma code changes, 26-Aug-2008
179       CONFIG_STATUS_CODE,
180       OBJECT_VERSION_NUMBER,
181       SECURITY_GROUP_ID,
182       ATTRIBUTE_CATEGORY,
183       ATTRIBUTE1,
184       ATTRIBUTE2,
185       ATTRIBUTE3,
186       ATTRIBUTE4,
187       ATTRIBUTE5,
188       ATTRIBUTE6,
189       ATTRIBUTE7,
190       ATTRIBUTE8,
191       ATTRIBUTE9,
192       ATTRIBUTE10,
193       ATTRIBUTE11,
194       ATTRIBUTE12,
195       ATTRIBUTE13,
196       ATTRIBUTE14,
197       ATTRIBUTE15
198     from AHL_MC_HEADERS_B
199     where MC_HEADER_ID = X_MC_HEADER_ID
200     for update of MC_HEADER_ID nowait;
201   recinfo c%rowtype;
202 
203   cursor c1 is select
204       DESCRIPTION,
205       decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
206     from AHL_MC_HEADERS_TL
207     where MC_HEADER_ID = X_MC_HEADER_ID
208     and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
209     for update of MC_HEADER_ID nowait;
210 begin
211   open c;
212   fetch c into recinfo;
213   if (c%notfound) then
214     close c;
215     fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
216     app_exception.raise_exception;
217   end if;
218   close c;
219   if (    (recinfo.NAME = X_NAME)
220       AND ((recinfo.MC_ID = X_MC_ID)
221            OR ((recinfo.MC_ID is null) AND (X_MC_ID is null)))
222       AND ((recinfo.VERSION_NUMBER = X_VERSION_NUMBER)
223            OR ((recinfo.VERSION_NUMBER is null) AND (X_VERSION_NUMBER is null)))
224       AND ((recinfo.REVISION = X_REVISION)
225            OR ((recinfo.REVISION is null) AND (X_REVISION is null)))
226       AND (recinfo.MODEL_CODE = X_MODEL_CODE) -- SATHAPLI::Enigma code changes, 26-Aug-2008
227       AND (recinfo.CONFIG_STATUS_CODE = X_CONFIG_STATUS_CODE)
228       AND (recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
229       AND ((recinfo.SECURITY_GROUP_ID = X_SECURITY_GROUP_ID)
230            OR ((recinfo.SECURITY_GROUP_ID is null) AND (X_SECURITY_GROUP_ID is null)))
231       AND ((recinfo.ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY)
232            OR ((recinfo.ATTRIBUTE_CATEGORY is null) AND (X_ATTRIBUTE_CATEGORY is null)))
233       AND ((recinfo.ATTRIBUTE1 = X_ATTRIBUTE1)
234            OR ((recinfo.ATTRIBUTE1 is null) AND (X_ATTRIBUTE1 is null)))
235       AND ((recinfo.ATTRIBUTE2 = X_ATTRIBUTE2)
236            OR ((recinfo.ATTRIBUTE2 is null) AND (X_ATTRIBUTE2 is null)))
237       AND ((recinfo.ATTRIBUTE3 = X_ATTRIBUTE3)
238            OR ((recinfo.ATTRIBUTE3 is null) AND (X_ATTRIBUTE3 is null)))
239       AND ((recinfo.ATTRIBUTE4 = X_ATTRIBUTE4)
240            OR ((recinfo.ATTRIBUTE4 is null) AND (X_ATTRIBUTE4 is null)))
241       AND ((recinfo.ATTRIBUTE5 = X_ATTRIBUTE5)
242            OR ((recinfo.ATTRIBUTE5 is null) AND (X_ATTRIBUTE5 is null)))
243       AND ((recinfo.ATTRIBUTE6 = X_ATTRIBUTE6)
244            OR ((recinfo.ATTRIBUTE6 is null) AND (X_ATTRIBUTE6 is null)))
245       AND ((recinfo.ATTRIBUTE7 = X_ATTRIBUTE7)
246            OR ((recinfo.ATTRIBUTE7 is null) AND (X_ATTRIBUTE7 is null)))
247       AND ((recinfo.ATTRIBUTE8 = X_ATTRIBUTE8)
248            OR ((recinfo.ATTRIBUTE8 is null) AND (X_ATTRIBUTE8 is null)))
249       AND ((recinfo.ATTRIBUTE9 = X_ATTRIBUTE9)
250            OR ((recinfo.ATTRIBUTE9 is null) AND (X_ATTRIBUTE9 is null)))
251       AND ((recinfo.ATTRIBUTE10 = X_ATTRIBUTE10)
252            OR ((recinfo.ATTRIBUTE10 is null) AND (X_ATTRIBUTE10 is null)))
253       AND ((recinfo.ATTRIBUTE11 = X_ATTRIBUTE11)
254            OR ((recinfo.ATTRIBUTE11 is null) AND (X_ATTRIBUTE11 is null)))
255       AND ((recinfo.ATTRIBUTE12 = X_ATTRIBUTE12)
256            OR ((recinfo.ATTRIBUTE12 is null) AND (X_ATTRIBUTE12 is null)))
257       AND ((recinfo.ATTRIBUTE13 = X_ATTRIBUTE13)
258            OR ((recinfo.ATTRIBUTE13 is null) AND (X_ATTRIBUTE13 is null)))
259       AND ((recinfo.ATTRIBUTE14 = X_ATTRIBUTE14)
260            OR ((recinfo.ATTRIBUTE14 is null) AND (X_ATTRIBUTE14 is null)))
261       AND ((recinfo.ATTRIBUTE15 = X_ATTRIBUTE15)
262            OR ((recinfo.ATTRIBUTE15 is null) AND (X_ATTRIBUTE15 is null)))
263   ) then
264     null;
265   else
266     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
267     app_exception.raise_exception;
268   end if;
269 
270   for tlinfo in c1 loop
271     if (tlinfo.BASELANG = 'Y') then
272       if (    ((tlinfo.DESCRIPTION = X_DESCRIPTION)
273                OR ((tlinfo.DESCRIPTION is null) AND (X_DESCRIPTION is null)))
274       ) then
275         null;
276       else
277         fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
278         app_exception.raise_exception;
279       end if;
280     end if;
281   end loop;
282   return;
283 end LOCK_ROW;
284 
285 procedure UPDATE_ROW (
286   X_MC_HEADER_ID in NUMBER,
287   X_NAME in VARCHAR2,
288   X_MC_ID in NUMBER,
289   X_VERSION_NUMBER in NUMBER,
290   X_REVISION in VARCHAR2,
291   X_MODEL_CODE in VARCHAR2, -- SATHAPLI::Enigma code changes, 26-Aug-2008
292   X_CONFIG_STATUS_CODE in VARCHAR2,
293   X_OBJECT_VERSION_NUMBER in NUMBER,
294   X_SECURITY_GROUP_ID in NUMBER,
295   X_ATTRIBUTE_CATEGORY in VARCHAR2,
296   X_ATTRIBUTE1 in VARCHAR2,
297   X_ATTRIBUTE2 in VARCHAR2,
298   X_ATTRIBUTE3 in VARCHAR2,
299   X_ATTRIBUTE4 in VARCHAR2,
300   X_ATTRIBUTE5 in VARCHAR2,
301   X_ATTRIBUTE6 in VARCHAR2,
302   X_ATTRIBUTE7 in VARCHAR2,
303   X_ATTRIBUTE8 in VARCHAR2,
304   X_ATTRIBUTE9 in VARCHAR2,
305   X_ATTRIBUTE10 in VARCHAR2,
306   X_ATTRIBUTE11 in VARCHAR2,
307   X_ATTRIBUTE12 in VARCHAR2,
308   X_ATTRIBUTE13 in VARCHAR2,
309   X_ATTRIBUTE14 in VARCHAR2,
310   X_ATTRIBUTE15 in VARCHAR2,
311   X_DESCRIPTION in VARCHAR2,
312   X_LAST_UPDATE_DATE in DATE,
313   X_LAST_UPDATED_BY in NUMBER,
314   X_LAST_UPDATE_LOGIN in NUMBER
315 ) is
316 begin
317   update AHL_MC_HEADERS_B set
318     NAME = X_NAME,
319     MC_ID = X_MC_ID,
320     VERSION_NUMBER = X_VERSION_NUMBER,
321     REVISION = X_REVISION,
322     MODEL_CODE = X_MODEL_CODE, -- SATHAPLI::Enigma code changes, 26-Aug-2008
323     CONFIG_STATUS_CODE = X_CONFIG_STATUS_CODE,
324     OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
325     SECURITY_GROUP_ID = X_SECURITY_GROUP_ID,
326     ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY,
327     ATTRIBUTE1 = X_ATTRIBUTE1,
328     ATTRIBUTE2 = X_ATTRIBUTE2,
329     ATTRIBUTE3 = X_ATTRIBUTE3,
330     ATTRIBUTE4 = X_ATTRIBUTE4,
331     ATTRIBUTE5 = X_ATTRIBUTE5,
332     ATTRIBUTE6 = X_ATTRIBUTE6,
333     ATTRIBUTE7 = X_ATTRIBUTE7,
334     ATTRIBUTE8 = X_ATTRIBUTE8,
335     ATTRIBUTE9 = X_ATTRIBUTE9,
336     ATTRIBUTE10 = X_ATTRIBUTE10,
337     ATTRIBUTE11 = X_ATTRIBUTE11,
338     ATTRIBUTE12 = X_ATTRIBUTE12,
339     ATTRIBUTE13 = X_ATTRIBUTE13,
340     ATTRIBUTE14 = X_ATTRIBUTE14,
341     ATTRIBUTE15 = X_ATTRIBUTE15,
342     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
343     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
344     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
345   where MC_HEADER_ID = X_MC_HEADER_ID;
346 
347   if (sql%notfound) then
348     raise no_data_found;
349   end if;
350 
351   update AHL_MC_HEADERS_TL set
352     DESCRIPTION = X_DESCRIPTION,
353     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
354     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
355     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
356     SOURCE_LANG = userenv('LANG')
357   where MC_HEADER_ID = X_MC_HEADER_ID
358   and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
359 
360   if (sql%notfound) then
361     raise no_data_found;
362   end if;
363 end UPDATE_ROW;
364 
365 procedure DELETE_ROW (
366   X_MC_HEADER_ID in NUMBER
367 ) is
368 begin
369   delete from AHL_MC_HEADERS_TL
370   where MC_HEADER_ID = X_MC_HEADER_ID;
371 
372   if (sql%notfound) then
373     raise no_data_found;
374   end if;
375 
376   delete from AHL_MC_HEADERS_B
377   where MC_HEADER_ID = X_MC_HEADER_ID;
378 
379   if (sql%notfound) then
380     raise no_data_found;
381   end if;
382 end DELETE_ROW;
383 
384 procedure ADD_LANGUAGE
385 is
386 begin
387   delete from AHL_MC_HEADERS_TL T
388   where not exists
389     (select NULL
390     from AHL_MC_HEADERS_B B
391     where B.MC_HEADER_ID = T.MC_HEADER_ID
392     );
393 
394   update AHL_MC_HEADERS_TL T set (
395       DESCRIPTION
399     where B.MC_HEADER_ID = T.MC_HEADER_ID
396     ) = (select
397       B.DESCRIPTION
398     from AHL_MC_HEADERS_TL B
400     and B.LANGUAGE = T.SOURCE_LANG)
401   where (
402       T.MC_HEADER_ID,
403       T.LANGUAGE
404   ) in (select
405       SUBT.MC_HEADER_ID,
406       SUBT.LANGUAGE
407     from AHL_MC_HEADERS_TL SUBB, AHL_MC_HEADERS_TL SUBT
408     where SUBB.MC_HEADER_ID = SUBT.MC_HEADER_ID
409     and SUBB.LANGUAGE = SUBT.SOURCE_LANG
410     and (SUBB.DESCRIPTION <> SUBT.DESCRIPTION
411       or (SUBB.DESCRIPTION is null and SUBT.DESCRIPTION is not null)
412       or (SUBB.DESCRIPTION is not null and SUBT.DESCRIPTION is null)
413   ));
414 
415   insert into AHL_MC_HEADERS_TL (
416     MC_HEADER_ID,
417     DESCRIPTION,
418     LAST_UPDATE_DATE,
419     LAST_UPDATED_BY,
420     CREATION_DATE,
421     CREATED_BY,
422     LAST_UPDATE_LOGIN,
423     SECURITY_GROUP_ID,
424     LANGUAGE,
425     SOURCE_LANG
426   ) select
427     B.MC_HEADER_ID,
428     B.DESCRIPTION,
429     B.LAST_UPDATE_DATE,
430     B.LAST_UPDATED_BY,
431     B.CREATION_DATE,
432     B.CREATED_BY,
433     B.LAST_UPDATE_LOGIN,
434     B.SECURITY_GROUP_ID,
435     L.LANGUAGE_CODE,
436     B.SOURCE_LANG
437   from AHL_MC_HEADERS_TL B, FND_LANGUAGES L
438   where L.INSTALLED_FLAG in ('I', 'B')
439   and B.LANGUAGE = userenv('LANG')
440   and not exists
441     (select NULL
442     from AHL_MC_HEADERS_TL T
443     where T.MC_HEADER_ID = B.MC_HEADER_ID
444     and T.LANGUAGE = L.LANGUAGE_CODE);
445 end ADD_LANGUAGE;
446 
447 procedure LOAD_ROW (
448   X_MC_HEADER_ID in NUMBER,
449   X_NAME in VARCHAR2,
450   X_MC_ID in NUMBER,
451   X_VERSION_NUMBER in NUMBER,
452   X_REVISION in VARCHAR2,
453   X_MODEL_CODE in VARCHAR2, -- SATHAPLI::Enigma code changes, 26-Aug-2008
454   X_CONFIG_STATUS_CODE in VARCHAR2,
455   X_OBJECT_VERSION_NUMBER in NUMBER,
456   X_SECURITY_GROUP_ID in NUMBER,
457   X_ATTRIBUTE_CATEGORY in VARCHAR2,
458   X_ATTRIBUTE1 in VARCHAR2,
459   X_ATTRIBUTE2 in VARCHAR2,
460   X_ATTRIBUTE3 in VARCHAR2,
461   X_ATTRIBUTE4 in VARCHAR2,
462   X_ATTRIBUTE5 in VARCHAR2,
463   X_ATTRIBUTE6 in VARCHAR2,
464   X_ATTRIBUTE7 in VARCHAR2,
465   X_ATTRIBUTE8 in VARCHAR2,
466   X_ATTRIBUTE9 in VARCHAR2,
467   X_ATTRIBUTE10 in VARCHAR2,
468   X_ATTRIBUTE11 in VARCHAR2,
469   X_ATTRIBUTE12 in VARCHAR2,
470   X_ATTRIBUTE13 in VARCHAR2,
471   X_ATTRIBUTE14 in VARCHAR2,
472   X_ATTRIBUTE15 in VARCHAR2,
473   X_DESCRIPTION in VARCHAR2,
474   X_OWNER in VARCHAR2
475 ) is
476   l_user_id number := 0;
477   l_mc_header_id number;
478   l_row_id ROWID;
479 begin
480   if (X_OWNER = 'SEED') then
481     l_user_id := 1;
482   end if;
483 
484   select mc_header_id
485   into l_mc_header_id
486   from ahl_mc_headers_b
487   where mc_header_id = X_MC_HEADER_ID;
488 
489   UPDATE_ROW (
490     X_MC_HEADER_ID => l_mc_header_id,
491     X_NAME => X_NAME,
492     X_MC_ID => X_MC_ID,
493     X_VERSION_NUMBER => X_VERSION_NUMBER,
494     X_REVISION => X_REVISION,
495     X_MODEL_CODE => X_MODEL_CODE, -- SATHAPLI::Enigma code changes, 26-Aug-2008
496     X_CONFIG_STATUS_CODE => X_CONFIG_STATUS_CODE,
497     X_OBJECT_VERSION_NUMBER => X_OBJECT_VERSION_NUMBER,
498     X_SECURITY_GROUP_ID => X_SECURITY_GROUP_ID,
499     X_ATTRIBUTE_CATEGORY => X_ATTRIBUTE_CATEGORY,
500     X_ATTRIBUTE1 => X_ATTRIBUTE1,
501     X_ATTRIBUTE2 => X_ATTRIBUTE2,
502     X_ATTRIBUTE3 => X_ATTRIBUTE3,
503     X_ATTRIBUTE4 => X_ATTRIBUTE4,
504     X_ATTRIBUTE5 => X_ATTRIBUTE5,
505     X_ATTRIBUTE6 => X_ATTRIBUTE6,
506     X_ATTRIBUTE7 => X_ATTRIBUTE7,
507     X_ATTRIBUTE8 => X_ATTRIBUTE8,
508     X_ATTRIBUTE9 => X_ATTRIBUTE9,
509     X_ATTRIBUTE10 => X_ATTRIBUTE10,
510     X_ATTRIBUTE11 => X_ATTRIBUTE11,
511     X_ATTRIBUTE12 => X_ATTRIBUTE12,
512     X_ATTRIBUTE13 => X_ATTRIBUTE13,
513     X_ATTRIBUTE14 => X_ATTRIBUTE14,
514     X_ATTRIBUTE15 => X_ATTRIBUTE15,
515     X_DESCRIPTION => X_DESCRIPTION,
516     X_LAST_UPDATE_DATE => sysdate,
517     X_LAST_UPDATED_BY => l_user_id,
518     X_LAST_UPDATE_LOGIN => 0
519   );
520 
521   exception
522     when NO_DATA_FOUND then
523 
524     select ahl_mc_headers_b_s.nextval
525     into l_mc_header_id
526     from dual;
527 
528     INSERT_ROW (
529       X_ROWID => l_row_id,
530       X_MC_HEADER_ID => l_mc_header_id,
531       X_NAME => X_NAME,
532       X_MC_ID => X_MC_ID,
533       X_VERSION_NUMBER => X_VERSION_NUMBER,
534       X_REVISION => X_REVISION,
535       X_MODEL_CODE => X_MODEL_CODE, -- SATHAPLI::Enigma code changes, 26-Aug-2008
536       X_CONFIG_STATUS_CODE => X_CONFIG_STATUS_CODE,
537       X_OBJECT_VERSION_NUMBER => X_OBJECT_VERSION_NUMBER,
538       X_SECURITY_GROUP_ID => X_SECURITY_GROUP_ID,
539       X_ATTRIBUTE_CATEGORY => X_ATTRIBUTE_CATEGORY,
540       X_ATTRIBUTE1 => X_ATTRIBUTE1,
541       X_ATTRIBUTE2 => X_ATTRIBUTE2,
542       X_ATTRIBUTE3 => X_ATTRIBUTE3,
543       X_ATTRIBUTE4 => X_ATTRIBUTE4,
544       X_ATTRIBUTE5 => X_ATTRIBUTE5,
545       X_ATTRIBUTE6 => X_ATTRIBUTE6,
546       X_ATTRIBUTE7 => X_ATTRIBUTE7,
547       X_ATTRIBUTE8 => X_ATTRIBUTE8,
548       X_ATTRIBUTE9 => X_ATTRIBUTE9,
549       X_ATTRIBUTE10 => X_ATTRIBUTE10,
550       X_ATTRIBUTE11 => X_ATTRIBUTE11,
551       X_ATTRIBUTE12 => X_ATTRIBUTE12,
552       X_ATTRIBUTE13 => X_ATTRIBUTE13,
553       X_ATTRIBUTE14 => X_ATTRIBUTE14,
554       X_ATTRIBUTE15 => X_ATTRIBUTE15,
555       X_DESCRIPTION => X_DESCRIPTION,
556       X_CREATION_DATE => sysdate,
557       X_CREATED_BY => l_user_id,
558       X_LAST_UPDATE_DATE => sysdate,
562 
559       X_LAST_UPDATED_BY => l_user_id,
560       X_LAST_UPDATE_LOGIN => 0
561     );
563 end LOAD_ROW;
564 
565 procedure TRANSLATE_ROW (
566   X_MC_HEADER_ID in NUMBER,
567   X_DESCRIPTION in VARCHAR2,
568   X_OWNER in VARCHAR2
569 ) is
570 begin
571   update AHL_MC_HEADERS_TL
572   set
573     DESCRIPTION = NVL(X_DESCRIPTION, DESCRIPTION),
574     SOURCE_LANG = USERENV('LANG'),
575     LAST_UPDATE_DATE = sysdate,
576     LAST_UPDATED_BY = DECODE(X_OWNER, 'SEED', 1, 0),
577     LAST_UPDATE_LOGIN = 0
578   where MC_HEADER_ID = X_MC_HEADER_ID and
579         USERENV('LANG') in (LANGUAGE, SOURCE_LANG);
580 
581 end TRANSLATE_ROW;
582 
583 end AHL_MC_HEADERS_PKG;