DBA Data[Home] [Help]

PACKAGE BODY: APPS.OE_PC_VTMPLTS_PKG

Source


1 PACKAGE BODY OE_PC_VTMPLTS_PKG AS
2 /* $Header: OEXPCVTB.pls 120.1 2005/07/15 03:05:54 ppnair noship $ */
3 
4    -------------------------------------------------
5    PROCEDURE Insert_Row(
6       x_rowid    				in out nocopy varchar2
7       ,x_validation_tmplt_id 		in out nocopy number
8       ,x_entity_id                  in      number
9       ,x_display_name			in      varchar2
10       ,x_description  			in      varchar2
11       ,x_validation_tmplt_short_name in     varchar2
12       ,x_validation_type       	in      varchar2
13       ,x_system_flag	        	in      varchar2
14       ,x_created_by       	 	in      number
15       ,x_creation_date       		in      date
16       ,x_last_updated_by 	    	in      number
17       ,x_last_update_date        	in      date
18       ,x_last_update_login       	in      number
19       ,x_wf_item_type                   in      varchar2
20       ,x_activity_name			in      varchar2
21       ,x_activity_status_code		in      varchar2
22       ,x_activity_result_code		in      varchar2
23       ,x_api_pkg				in      varchar2
24       ,x_api_proc				in      varchar2
25       ,x_attribute_category       	in      varchar2
26       ,x_attribute1	       	in      varchar2
27       ,x_attribute2	       	in      varchar2
28       ,x_attribute3	       	in      varchar2
29       ,x_attribute4	       	in      varchar2
30       ,x_attribute5	       	in      varchar2
31       ,x_attribute6	       	in      varchar2
32       ,x_attribute7	       	in      varchar2
33       ,x_attribute8	       	in      varchar2
34       ,x_attribute9	       	in      varchar2
35       ,x_attribute10	       	in      varchar2
36       ,x_attribute11	       	in      varchar2
37       ,x_attribute12	       	in      varchar2
38       ,x_attribute13	       	in      varchar2
39       ,x_attribute14	       	in      varchar2
40       ,x_attribute15	       	in      varchar2
41    )
42    Is
43       CURSOR CROWID IS SELECT rowid FROM oe_pc_vtmplts
44                        WHERE validation_tmplt_id = x_validation_tmplt_id;
45 
46       CURSOR CID IS SELECT oe_pc_vtmplts_s.nextval
47                     FROM sys.dual;
48    Begin
49 
50    IF x_validation_tmplt_id IS NULL THEN
51       Open CID;
52       Fetch CID into x_validation_tmplt_id;
53       if (CID%NOTFOUND) then
54          CLOSE CID;
55          RAISE NO_DATA_FOUND;
56       end if;
57       Close CID;
58    END IF;
59 
60       INSERT INTO oe_pc_vtmplts (
61          validation_tmplt_id
62          ,entity_id
63          ,validation_tmplt_short_name
64          ,validation_type
65          ,system_flag
66          ,created_by
67          ,creation_date
68          ,last_updated_by
69          ,last_update_date
70          ,last_update_login
71          ,wf_item_type
72          ,activity_name
73          ,activity_status_code
74          ,activity_result_code
75          ,api_pkg
76          ,api_proc
77          ,attribute_category
78          ,attribute1
79          ,attribute2
80          ,attribute3
81          ,attribute4
82          ,attribute5
83          ,attribute6
84          ,attribute7
85          ,attribute8
86          ,attribute9
87          ,attribute10
88          ,attribute11
89          ,attribute12
90          ,attribute13
91          ,attribute14
92          ,attribute15
93       )
94       Values
95       (
96          x_validation_tmplt_id
97          ,x_entity_id
98          ,x_validation_tmplt_short_name
99          ,x_validation_type
100          ,x_system_flag
101          ,x_created_by
102          ,x_creation_date
103          ,x_last_updated_by
104          ,x_last_update_date
105          ,x_last_update_login
106          ,x_wf_item_type
107          ,x_activity_name
108          ,x_activity_status_code
109          ,x_activity_result_code
110          ,x_api_pkg
111          ,x_api_proc
112          ,x_attribute_category
113          ,x_attribute1
114          ,x_attribute2
115          ,x_attribute3
116          ,x_attribute4
117          ,x_attribute5
118          ,x_attribute6
119          ,x_attribute7
120          ,x_attribute8
121          ,x_attribute9
122          ,x_attribute10
123          ,x_attribute11
124          ,x_attribute12
125          ,x_attribute13
126          ,x_attribute14
127          ,x_attribute15
128       );
129 
130 
131       INSERT INTO oe_pc_vtmplts_tl (
132          validation_tmplt_id
133          ,language
134          ,source_lang
135          ,created_by
136          ,creation_date
137          ,last_updated_by
138          ,last_update_date
139          ,display_name
140          ,description
141          ,last_update_login
142       )
143       SELECT
144          x_validation_tmplt_id
145          ,l.language_code
146          ,USERENV('LANG')
147          ,x_created_by
148          ,x_creation_date
149          ,x_last_updated_by
150          ,x_last_update_date
151          ,x_display_name
152          ,x_description
153          ,x_last_update_login
154       FROM fnd_languages l
155       WHERE l.installed_flag in ('I', 'B')
156       AND   not exists (
157                         SELECT  null
158                         FROM oe_pc_vtmplts_tl t
159                         WHERE t.validation_tmplt_id = x_validation_tmplt_id
160                         AND   t.language            = l.language_code);
161 
162 
163       Open CROWID;
164       Fetch CROWID into x_rowid;
165       if (CROWID%NOTFOUND) then
166          CLOSE CROWID;
167          RAISE NO_DATA_FOUND;
168       end if;
169       CLOSE CROWID;
170 
171    End Insert_Row;
172    ------------------------------------------
173    PROCEDURE Lock_Row(
174       x_rowid    				in      varchar2
175       ,x_validation_tmplt_id 		in      number
176       ,x_entity_id                  in      number
177       ,x_display_name 			in      varchar2
178       ,x_description  			in      varchar2
179       ,x_validation_tmplt_short_name in     varchar2
180       ,x_validation_type       	in      varchar2
181       ,x_system_flag	        	in      varchar2
182       ,x_created_by       	 	in      number
183       ,x_creation_date       		in      date
184       ,x_last_updated_by 	    	in      number
185       ,x_last_update_date        	in      date
186       ,x_last_update_login       	in      number
187       ,x_wf_item_type                   in      varchar2
188       ,x_activity_name			in      varchar2
189       ,x_activity_status_code		in      varchar2
190       ,x_activity_result_code		in      varchar2
191       ,x_api_pkg				in      varchar2
192       ,x_api_proc				in      varchar2
193       ,x_attribute_category       	in      varchar2
194       ,x_attribute1	       	in      varchar2
195       ,x_attribute2	       	in      varchar2
196       ,x_attribute3	       	in      varchar2
197       ,x_attribute4	       	in      varchar2
198       ,x_attribute5	       	in      varchar2
199       ,x_attribute6	       	in      varchar2
200       ,x_attribute7	       	in      varchar2
201       ,x_attribute8	       	in      varchar2
202       ,x_attribute9	       	in      varchar2
203       ,x_attribute10	       	in      varchar2
204       ,x_attribute11	       	in      varchar2
205       ,x_attribute12	       	in      varchar2
206       ,x_attribute13	       	in      varchar2
207       ,x_attribute14	       	in      varchar2
208       ,x_attribute15	       	in      varchar2
209    )
210    Is
211       CURSOR C IS
212          SELECT *
213          FROM oe_pc_vtmplts
214          WHERE rowid = x_rowid
215          FOR UPDATE OF validation_tmplt_id NOWAIT;
216 
217       Recinfo C%ROWTYPE;
218 
219       CURSOR C1 IS
220          SELECT *
221          FROM oe_pc_vtmplts_tl t
222          WHERE validation_tmplt_id = x_validation_tmplt_id
223          AND   language = userenv('LANG')
224          FOR UPDATE OF validation_tmplt_id NOWAIT;
225 
226       tlinfo C1%ROWTYPE;
227 
228    Begin
229       Open C;
230       Fetch C into Recinfo;
231       if (C%NOTFOUND) then
232          Close C;
233          FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
234          APP_EXCEPTION.Raise_Exception;
235       end if;
236       Close C;
237       if (
238                (Recinfo.validation_tmplt_id = x_validation_tmplt_id)
239            AND (Recinfo.entity_id    	  = x_entity_id)
240            AND (rtrim(Recinfo.validation_tmplt_short_name) = x_validation_tmplt_short_name)
241            AND (rtrim(Recinfo.validation_type) = x_validation_type)
242            AND (Recinfo.system_flag         = x_system_flag)
243            AND (Recinfo.created_by   	 = x_created_by)
244            AND (Recinfo.creation_date	 = x_creation_date)
245            AND (Recinfo.last_updated_by    = x_last_updated_by)
246            AND (Recinfo.last_update_date   = x_last_update_date)
247            AND (    (Recinfo.last_update_login = x_last_update_login)
248                  OR (    (recinfo.last_update_login IS NULL)
249                       AND(x_last_update_login IS NULL)))
250            AND (    (Recinfo.wf_item_type = x_wf_item_type)
251                  OR (    (recinfo.wf_item_type IS NULL)
252                       AND(x_wf_item_type IS NULL)))
253            AND (    (Recinfo.activity_name = x_activity_name)
254                  OR (    (recinfo.activity_name IS NULL)
255                       AND(x_activity_name IS NULL)))
256            AND (    (Recinfo.activity_status_code = x_activity_status_code)
257                  OR (    (recinfo.activity_status_code IS NULL)
258                       AND(x_activity_status_code IS NULL)))
259            AND (    (Recinfo.activity_result_code = x_activity_result_code)
260                  OR (    (recinfo.activity_result_code IS NULL)
261                       AND(x_activity_result_code IS NULL)))
262            AND (    (Recinfo.api_pkg = x_api_pkg)
263                  OR (    (recinfo.api_pkg IS NULL)
264                       AND(x_api_pkg IS NULL)))
265            AND (    (Recinfo.api_proc = x_api_proc)
266                  OR (    (recinfo.api_proc IS NULL)
267                       AND(x_api_proc IS NULL)))
268          ) then
269          return;
270       else
271          FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
272          APP_EXCEPTION.Raise_Exception;
273       end if;
274 
275       Open C1;
276       Fetch C1 into tlinfo;
277       if (C1%NOTFOUND) then
278          Close C1;
279          FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
280          APP_EXCEPTION.Raise_Exception;
281       end if;
282       Close C1;
283 
284       if (
285                (rtrim(tlinfo.display_name)     = x_display_name)
286            AND (tlinfo.last_updated_by    = x_last_updated_by)
287            AND (tlinfo.last_update_date   = x_last_update_date)
288            AND (    (rtrim(tlinfo.description) = x_description)
289                  OR (    (tlinfo.description IS NULL)
290                       AND(x_description IS NULL)))
291            AND (    (tlinfo.last_update_login = x_last_update_login)
292                  OR (    (tlinfo.last_update_login IS NULL)
293                       AND(x_last_update_login IS NULL)))
294          ) then
295          return;
296       else
297          FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
298          APP_EXCEPTION.Raise_Exception;
299       end if;
300 
301    End Lock_Row;
302 
303    --------------------------------------------------------------------
304    PROCEDURE Update_Row(
305       x_rowid    				in      varchar2
306       ,x_validation_tmplt_id 		in      number
307       ,x_entity_id                  in      number
308       ,x_display_name 			in   	  varchar2
309       ,x_description  			in      varchar2
310       ,x_validation_tmplt_short_name in     varchar2
311       ,x_validation_type       	in      varchar2
312       ,x_system_flag	        	in      varchar2
313       ,x_created_by       	 	in      number
314       ,x_creation_date       		in      date
315       ,x_last_updated_by 	    	in      number
316       ,x_last_update_date        	in      date
317       ,x_last_update_login       	in      number
318       ,x_wf_item_type                   in      varchar2
319       ,x_activity_name			in      varchar2
320       ,x_activity_status_code		in      varchar2
321       ,x_activity_result_code		in      varchar2
322       ,x_api_pkg				in      varchar2
323       ,x_api_proc				in      varchar2
324       ,x_attribute_category       	in      varchar2
325       ,x_attribute1	       	in      varchar2
326       ,x_attribute2	       	in      varchar2
327       ,x_attribute3	       	in      varchar2
328       ,x_attribute4	       	in      varchar2
329       ,x_attribute5	       	in      varchar2
330       ,x_attribute6	       	in      varchar2
331       ,x_attribute7	       	in      varchar2
332       ,x_attribute8	       	in      varchar2
333       ,x_attribute9	       	in      varchar2
334       ,x_attribute10	       	in      varchar2
335       ,x_attribute11	       	in      varchar2
336       ,x_attribute12	       	in      varchar2
337       ,x_attribute13	       	in      varchar2
338       ,x_attribute14	       	in      varchar2
339       ,x_attribute15	       	in      varchar2
340    )
341    Is
342    Begin
343 
344       UPDATE oe_pc_vtmplts
345       SET
346          entity_id 		 = x_entity_id
347          ,validation_tmplt_short_name = x_validation_tmplt_short_name
348          ,validation_type      = x_validation_type
349          ,system_flag          = x_system_flag
350          ,created_by   		 = x_created_by
351          ,creation_date		 = x_creation_date
352          ,last_updated_by    	 = x_last_updated_by
353          ,last_update_date     = x_last_update_date
354          ,last_update_login     = x_last_update_login
355          ,wf_item_type         = x_wf_item_type
356          ,activity_name        = x_activity_name
357          ,activity_status_code = x_activity_status_code
358          ,activity_result_code = x_activity_result_code
359          ,api_pkg			 = x_api_pkg
360          ,api_proc		 = x_api_proc
361          ,attribute_category   = x_attribute_category
362          ,attribute1           = x_attribute1
363          ,attribute2           = x_attribute2
364          ,attribute3           = x_attribute3
365          ,attribute4           = x_attribute4
366          ,attribute5           = x_attribute5
367          ,attribute6           = x_attribute6
368          ,attribute7           = x_attribute7
369          ,attribute8           = x_attribute8
370          ,attribute9           = x_attribute9
371          ,attribute10           = x_attribute10
372          ,attribute11           = x_attribute11
373          ,attribute12           = x_attribute12
374          ,attribute13           = x_attribute13
375          ,attribute14           = x_attribute14
376          ,attribute15           = x_attribute15
377       WHERE validation_tmplt_id = x_validation_tmplt_id;
378 
379       if (SQL%NOTFOUND) then
380          RAISE NO_DATA_FOUND;
381       end if;
382 
383 
384       UPDATE oe_pc_vtmplts_tl
385       SET
386          source_lang		 = USERENV('LANG')
387          ,last_updated_by    	 = x_last_updated_by
388          ,last_update_date     = x_last_update_date
389          ,last_update_login    = x_last_update_login
390          ,display_name         = x_display_name
391          ,description          = x_description
392       WHERE validation_tmplt_id = x_validation_tmplt_id
393       AND   USERENV('LANG') in (language, source_lang);
394 
395       if (SQL%NOTFOUND) then
396          RAISE NO_DATA_FOUND;
397       end if;
398 
399    End Update_Row;
400    -------------------------------------------------
401 
402    PROCEDURE Delete_Row(
406    Begin
403       x_validation_tmplt_id			in      number
404    )
405    Is
407 
408       -- delete constraint rules if any
409       DELETE FROM OE_PC_VTMPLT_COLS
410       WHERE  validation_tmplt_id = x_validation_tmplt_id;
411 
412       -- delete all the validation pkgs from oe_pc_validation_pkgs table
413       DELETE FROM OE_PC_VALIDATION_PKGS
414       WHERE  validation_tmplt_id = x_validation_tmplt_id;
415 
416       -- delete the tl table
417       DELETE FROM OE_PC_VTMPLTS_TL
418       WHERE  validation_tmplt_id = x_validation_tmplt_id;
419 
420       DELETE FROM OE_PC_VTMPLTS
421       WHERE  validation_tmplt_id = x_validation_tmplt_id;
422 
423 
424 
425       if (SQL%NOTFOUND) then
426          RAISE NO_DATA_FOUND;
427       end if;
428 
429    End Delete_Row;
430    -------------------------------------------------------------------
431    PROCEDURE Add_Language
432    IS
433    Begin
434      DELETE FROM oe_pc_vtmplts t
435      WHERE NOT EXISTS
436               (SELECT null
437                FROM oe_pc_vtmplts b
438                where validation_tmplt_id = t.validation_tmplt_id);
439 
440      UPDATE oe_pc_vtmplts_tl t
441      SET
442      (
443        display_name,
444        description
445      ) = (
446           SELECT
447             b.display_name,
448             b.description
449           FROM oe_pc_vtmplts_tl b
450           WHERE b.validation_tmplt_id = t.validation_tmplt_id
451           AND   b.language      = t.source_lang
452          )
453      where
454      (
455        t.validation_tmplt_id,
456        t.language
457      ) IN (
458            SELECT
459               subt.validation_tmplt_id,
460               subt.language
461            FROM oe_pc_vtmplts_tl subb, oe_pc_vtmplts_tl subt
462            WHERE subb.validation_tmplt_id = subt.validation_tmplt_id
463            AND   subb.language      = subt.source_lang
464            AND(subb.display_name <> subt.display_name
465                OR subb.DESCRIPTION <> subt.description
466                OR (subb.description IS null AND subt.description IS NOT null)
467                OR (subb.description IS NOT null AND subt.description IS null)
468               )
469           );
470 
471      INSERT INTO oe_pc_vtmplts_tl
472      (
473          validation_tmplt_id
474          ,language
475          ,source_lang
476          ,created_by
477          ,creation_date
478          ,last_updated_by
479          ,last_update_date
480          ,display_name
481          ,description
482          ,last_update_login
483      )
484      SELECT
485          b.validation_tmplt_id
486          ,l.language_code
487          ,b.source_lang    -- bug 2329327
488          ,b.created_by
489          ,b.creation_date
490          ,b.last_updated_by
491          ,b.last_update_date
492          ,b.display_name
493          ,b.description
494          ,b.last_update_login
495      FROM oe_pc_vtmplts_tl b, fnd_languages l
496      WHERE l.installed_flag IN ('I', 'B')
497      AND   b.language = USERENV('LANG')
498      AND   NOT EXISTS
499               ( SELECT null
500                 FROM oe_pc_vtmplts_tl t
501                 WHERE t.validation_tmplt_id = b.validation_tmplt_id
502                 AND   t.language      = l.language_code);
503    End Add_Language;
504    -------------------------------------------------------------------
505    PROCEDURE Check_References(
506       x_validation_tmplt_id 		in      number
507    )
508    Is
509      dummy number;
510    Begin
511       SELECT 1
512       into dummy
513       FROM  dual
514       WHERE NOT EXISTS
515             (SELECT 1
516              FROM oe_pc_conditions
517              WHERE validation_tmplt_id = x_validation_tmplt_id);
518    EXCEPTION
519      WHEN NO_DATA_FOUND THEN
520         fnd_message.set_name('ONT', 'OE_PC_VT_REF_EXISTS');
521         app_exception.raise_exception;
522    End Check_References;
523    -----------------------------------------------------------------------
524    PROCEDURE Check_Unique(
525       x_rowid					in 	  varchar2
526       ,x_entity_id				in      number
527       ,x_display_name				in      varchar2
528       ,x_validation_tmplt_short_name	in      varchar2
529       ,x_validation_unit			in      varchar2
530    )
531    Is
532        dummy   		 number;
533        chk_display_name  boolean := FALSE;
534        chk_short_name    boolean := FALSE;
535    Begin
536       if (x_validation_unit = 'ALL') then
537          chk_short_name     := TRUE;
538          chk_display_name   := TRUE;
539       elsif (x_validation_unit = 'VALIDATION_TMPLT_DISPLAY_NAME') then
540          chk_display_name  := TRUE;
541       elsif (x_validation_unit = 'VALIDATION_TMPLT_SHORT_NAME') then
542          chk_short_name  := TRUE;
543       end if;
544 
545       if (chk_display_name = TRUE) then
546           -- record set short name should be unique within an entity
547           SELECT count(1)
548           INTO   dummy
549           FROM   oe_pc_vtmplts_vl
550           WHERE  entity_id = x_entity_id
551           AND    validation_tmplt_display_name = x_display_name
555              fnd_message.set_name('ONT', 'OE_PC_VT_DUP_DISPLAY_NAME');
552           AND    ((x_rowid IS null) OR (row_id <> x_rowid));
553 
554           if (dummy >= 1) then
556              app_exception.raise_exception;
557           end if;
558       end if;
559 
560       if (chk_short_name = TRUE) then
561           -- record set short name should be unique within an entity
562           SELECT count(1)
563           INTO   dummy
564           FROM   oe_pc_vtmplts
565           WHERE  entity_id = x_entity_id
566           AND    validation_tmplt_short_name = x_validation_tmplt_short_name
567           AND    ((x_rowid IS null) OR (rowid <> x_rowid));
568 
569           if (dummy >= 1) then
570              fnd_message.set_name('ONT', 'OE_PC_VT_DUP_SHORT_NAME');
571              app_exception.raise_exception;
572           end if;
573       end if;
574    End Check_Unique;
575    ------------------------------------------------------------------------
576 
577    PROCEDURE Translate_Row(
578       x_validation_tmplt_id 			in	   varchar2
579 	 ,x_owner					in 	   varchar2
580       ,x_display_name	in      varchar2
581       ,x_description	in      varchar2
582 	 )
583    IS
584     l_user_id number :=0;
585    BEGIN
586       l_user_id :=fnd_load_util.owner_id(x_owner);
587       UPDATE oe_pc_vtmplts_tl
588       SET
589          source_lang		 = USERENV('LANG')
590          --,last_updated_by    	 = decode(x_OWNER, 'SEED', 1, 0)
591          ,last_updated_by    	 = l_user_id
592          ,last_update_date     = sysdate
593          ,last_update_login    = 0
594          ,display_name         = x_display_name
595          ,description          = x_description
596       WHERE validation_tmplt_id = x_validation_tmplt_id
597       AND   USERENV('LANG') in (language, source_lang);
598 
599    END Translate_Row;
600 
601    PROCEDURE Load_Row(
602        x_validation_tmplt_id 			in      varchar2
603       ,x_owner					in	   varchar2
604       ,x_display_name	in      varchar2
605       ,x_description	in      varchar2
606       ,x_entity_id                  in     varchar2
607       ,x_validation_tmplt_short_name 	in      varchar2
608 	 ,x_validation_type			in	   varchar2
609 	 ,x_activity_name		     in		varchar2
610 	 ,x_activity_status_code		in		varchar2
611 	 ,x_activity_result_code		in		varchar2
612 	 ,x_api_pkg				in		varchar2
613 	 ,x_api_proc				in		varchar2
614       ,x_system_flag	        	in      varchar2
615       ,x_attribute_category       	in      varchar2
616       ,x_attribute1	       	in      varchar2
617       ,x_attribute2	       	in      varchar2
618       ,x_attribute3	       	in      varchar2
619       ,x_attribute4	       	in      varchar2
620       ,x_attribute5	       	in      varchar2
621       ,x_attribute6	       	in      varchar2
622       ,x_attribute7	       	in      varchar2
623       ,x_attribute8	       	in      varchar2
624       ,x_attribute9	       	in      varchar2
625       ,x_attribute10	       	in      varchar2
626       ,x_attribute11	       	in      varchar2
627       ,x_attribute12	       	in      varchar2
628       ,x_attribute13	       	in      varchar2
629       ,x_attribute14	       	in      varchar2
630       ,x_attribute15	       	in      varchar2
631          ,x_wf_item_type                     in         varchar2
632    )
633    IS
634    BEGIN
635 
636     declare
637 	user_id	number := 0;
638 	row_id	varchar2(64);
639 	l_validation_tmplt_id		number;
640         l_db_user_id	number := 0;
641 	l_valid_release boolean:=false;
642     begin
643 
644      if (X_OWNER = 'SEED') then
645 		  user_id := 1;
646      end if;
647      --Seed data versioning changes start
648      user_id :=fnd_load_util.owner_id(x_owner);
649      begin
650         select last_updated_by
651 	  into l_db_user_id
652 	  from oe_pc_vtmplts
653 	  where  validation_tmplt_id = x_validation_tmplt_id;
654       exception
655         when no_data_found then
656 	  null;
657      end ;
658        if (l_db_user_id <= user_id)
659            or (l_db_user_id in (0,1,2)
660               and user_id in (0,1,2))       then
661 	  l_valid_release :=true ;
662     end if;
663     if l_valid_release then
664      --Seed data versioning changes end
665     OE_PC_vtmplts_pkg.UPDATE_ROW(
666 	 x_rowid				 => row_id
667       ,x_validation_tmplt_id 		 => x_validation_tmplt_id
668       ,x_display_name		 => x_display_name
669       ,x_description		 => x_description
670 	 ,x_entity_id				      => x_entity_id
671       ,x_validation_tmplt_short_name		 => x_validation_tmplt_short_name
672       ,x_validation_type		=> x_validation_type
673          ,x_wf_item_type                => x_wf_item_type
674 	 ,x_activity_name		=> x_activity_name
675 	 ,x_activity_status_code	=> x_activity_status_code
676 	 ,x_activity_result_code	=> x_activity_result_code
677 	 ,x_api_pkg			=> x_api_pkg
678 	 ,x_api_proc			=> x_api_proc
679       ,x_system_flag	      => x_system_flag
680       ,x_created_by            => user_id
681       ,x_creation_date         => sysdate
682       ,x_last_updated_by 	 => user_id
683       ,x_last_update_date      => sysdate
684       ,x_last_update_login     => 0
685       ,x_attribute_category    => x_attribute_category
686       ,x_attribute1	           => x_attribute1
687       ,x_attribute2	           => x_attribute2
688       ,x_attribute3	           => x_attribute3
689       ,x_attribute4	           => x_attribute4
690       ,x_attribute5	           => x_attribute5
691       ,x_attribute6	           => x_attribute6
692       ,x_attribute7	           => x_attribute7
693       ,x_attribute8	           => x_attribute8
694       ,x_attribute9	           => x_attribute9
695       ,x_attribute10	           => x_attribute10
696       ,x_attribute11	           => x_attribute11
697       ,x_attribute12	           => x_attribute12
698       ,x_attribute13	           => x_attribute13
699       ,x_attribute14	           => x_attribute14
700       ,x_attribute15	           => x_attribute15
701 	 );
702      end if;
703     exception
704 	when NO_DATA_FOUND then
705 
706 	l_validation_tmplt_id := x_validation_tmplt_id;
707 
708 	 oe_pc_vtmplts_pkg.INSERT_ROW(
709 	 x_rowid				 => row_id
710       ,x_validation_tmplt_id 		 => l_validation_tmplt_id
711       ,x_display_name		 => x_display_name
712       ,x_description		 => x_description
713 	 ,x_entity_id				      => x_entity_id
714       ,x_validation_tmplt_short_name		 => x_validation_tmplt_short_name
715 	 ,x_validation_type	      => x_validation_type
716          ,x_wf_item_type                => x_wf_item_type
717 	 ,x_activity_name		=> x_activity_name
718 	 ,x_activity_status_code	=> x_activity_status_code
719 	 ,x_activity_result_code	=> x_activity_result_code
720 	 ,x_api_pkg			=> x_api_pkg
721 	 ,x_api_proc			=> x_api_proc
722       ,x_system_flag	      => x_system_flag
723       ,x_created_by            => user_id
724       ,x_creation_date         => sysdate
725       ,x_last_updated_by 	 => user_id
726       ,x_last_update_date      => sysdate
727       ,x_last_update_login     => 0
728       ,x_attribute_category    => x_attribute_category
729       ,x_attribute1	           => x_attribute1
730       ,x_attribute2	           => x_attribute2
731       ,x_attribute3	           => x_attribute3
732       ,x_attribute4	           => x_attribute4
733       ,x_attribute5	           => x_attribute5
734       ,x_attribute6	           => x_attribute6
735       ,x_attribute7	           => x_attribute7
736       ,x_attribute8	           => x_attribute8
737       ,x_attribute9	           => x_attribute9
738       ,x_attribute10	           => x_attribute10
739       ,x_attribute11	           => x_attribute11
740       ,x_attribute12	           => x_attribute12
741       ,x_attribute13	           => x_attribute13
742       ,x_attribute14	           => x_attribute14
743       ,x_attribute15	           => x_attribute15
744 	 );
745   end;
746 
747 END LOAD_ROW;
748 
749 END OE_PC_VTMPLTS_PKG;