DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGS_AD_CRED_TYPES_PKG

Source


1 PACKAGE BODY igs_ad_cred_types_pkg AS
2 /* $Header: IGSAI90B.pls 115.18 2003/10/30 13:16:55 akadam ship $ */
3   l_rowid VARCHAR2(25);
4   old_references igs_ad_cred_types%RowType;
5   new_references igs_ad_cred_types%RowType;
6 
7   PROCEDURE Set_Column_Values (
8     p_action IN VARCHAR2,
9     x_rowid IN VARCHAR2 DEFAULT NULL,
10     x_credential_type_id IN NUMBER DEFAULT NULL,
11     x_credential_type IN VARCHAR2 DEFAULT NULL,
12     x_system_type IN VARCHAR2 DEFAULT NULL,
13     x_description IN VARCHAR2 DEFAULT NULL,
14     x_closed_ind IN VARCHAR2 DEFAULT NULL,
15     x_step_code  IN VARCHAR2 DEFAULT NULL,
16     x_creation_date IN DATE DEFAULT NULL,
17     x_created_by IN NUMBER DEFAULT NULL,
18     x_last_update_date IN DATE DEFAULT NULL,
19     x_last_updated_by IN NUMBER DEFAULT NULL,
20     x_last_update_login IN NUMBER DEFAULT NULL
21   ) AS
22 
23   /*************************************************************
24   Created By : Kamalakar N.
25   Date Created By : 15/May/2000
26   Purpose :
27   Know limitations, enhancements or remarks
28   Change History
29   Who             When            What
30 
31   (reverse chronological order - newest change first)
32   ***************************************************************/
33 
34     CURSOR cur_old_ref_values IS
35       SELECT   *
36       FROM     IGS_AD_CRED_TYPES
37       WHERE    rowid = x_rowid;
38 
39   BEGIN
40 
41     l_rowid := x_rowid;
42 
43     -- Code for setting the Old and New Reference Values.
44     -- Populate Old Values.
45     Open cur_old_ref_values;
46     Fetch cur_old_ref_values INTO old_references;
47     IF (cur_old_ref_values%NOTFOUND) AND (p_action NOT IN ('INSERT','VALIDATE_INSERT')) THEN
48       Close cur_old_ref_values;
49       Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
50       IGS_GE_MSG_STACK.ADD;
51       App_Exception.Raise_Exception;
52       Return;
53     END IF;
54     Close cur_old_ref_values;
55 
56     -- Populate New Values.
57     new_references.credential_type_id := x_credential_type_id;
58     new_references.credential_type := x_credential_type;
59     new_references.system_type := x_system_type;
60     new_references.description := x_description;
61     new_references.closed_ind := x_closed_ind;
62     new_references.step_code  := x_step_code;
63     IF (p_action = 'UPDATE') THEN
64       new_references.creation_date := old_references.creation_date;
65       new_references.created_by := old_references.created_by;
66     ELSE
67       new_references.creation_date := x_creation_date;
68       new_references.created_by := x_created_by;
69     END IF;
70     new_references.last_update_date := x_last_update_date;
71     new_references.last_updated_by := x_last_updated_by;
72     new_references.last_update_login := x_last_update_login;
73 
74   END Set_Column_Values;
75 
76   PROCEDURE BeforeRowInsertUpdate(
77     p_inserting IN BOOLEAN DEFAULT FALSE,
78     p_updating IN BOOLEAN DEFAULT FALSE
79     ) as
80      v_message_name                  VARCHAR2(30);
81   BEGIN
82         IF (p_inserting OR (p_updating AND (old_references.step_code <> new_references.step_code))) THEN
83 	 IF NOT IGS_TR_VAL_TRI.val_tr_step_ctlg (new_references.step_code,
84 	                                          v_message_name) THEN
85              Fnd_Message.Set_Name('IGS', v_message_name);
86              IGS_GE_MSG_STACK.ADD;
87              App_Exception.Raise_Exception;
88 	 END IF;
89         END IF;
90   END BeforeRowInsertUpdate;
91 
92   PROCEDURE Check_Constraints (
93 		 Column_Name IN VARCHAR2  DEFAULT NULL,
94 		 Column_Value IN VARCHAR2  DEFAULT NULL ) AS
95   /*************************************************************
96   Created By : Kamalakar N.
97   Date Created By : 15/May/2000
98   Purpose :
99   Know limitations, enhancements or remarks
100   Change History
101   Who             When            What
102 
103   (reverse chronological order - newest change first)
104   ***************************************************************/
105 
106   BEGIN
107 
108       IF column_name IS NULL THEN
109         NULL;
110       ELSIF  UPPER(column_name) = 'CLOSED_IND'  THEN
111         new_references.closed_ind := column_value;
112         NULL;
113       END IF;
114 
115 
116 
117     -- The following code checks for check constraints on the Columns.
118       IF Upper(Column_Name) = 'CLOSED_IND' OR
119       	Column_Name IS NULL THEN
120         IF NOT (new_references.closed_ind IN ('Y','N'))  THEN
121            Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
122       IGS_GE_MSG_STACK.ADD;
123            App_Exception.Raise_Exception;
124         END IF;
125       END IF;
126 
127 
128   END Check_Constraints;
129 
130  PROCEDURE Check_Uniqueness AS
131   /*************************************************************
132   Created By : amuthu
133   Date Created On : 16-May-2000
134   Purpose :
135   Know limitations, enhancements or remarks
136   Change History
137   Who             When            What
138 
139   (reverse chronological order - newest change first)
140   ***************************************************************/
141 
142    begin
143      	IF Get_Uk_For_Validation (
144     		new_references.credential_type
145     		) THEN
146  	  Fnd_Message.Set_Name ('IGS', 'IGS_GE_RECORD_ALREADY_EXISTS');
147       	  IGS_GE_MSG_STACK.ADD;
148 	  app_exception.raise_exception;
149     	END IF;
150  END Check_Uniqueness;
151 
152 
153   PROCEDURE Check_Child_Existance IS
154   /*************************************************************
155   Created By : Kamalakar N.
156   Date Created By : 15/May/2000
157   Purpose :
158   Know limitations, enhancements or remarks
159   Change History
160   Who             When            What
161 
162   (reverse chronological order - newest change first)
163   ***************************************************************/
164 
165   BEGIN
166 
167     Igs_Pe_Credentials_Pkg.Get_FK_Igs_Ad_Cred_Types (
168       old_references.credential_type_id
169       );
170 
171   END Check_Child_Existance;
172 
173   PROCEDURE Check_Parent_Existance AS
174  /*************************************************************
175   Created By : Kamalakar N.
176   Date Created By : 15/May/2000
177   Purpose :
178   Know limitations, enhancements or remarks
179   Change History
180   Who             When            What
181 
182   (reverse chronological order - newest change first)
183   ***************************************************************/
184 
185   BEGIN
186 
187     IF (((old_references.system_type = new_references.system_type)) OR
188         ((new_references.system_type IS NULL))) THEN
189       NULL;
190     ELSIF NOT Igs_LookUps_View_Pkg.Get_PK_For_Validation (
191                        'CREDENTIAL_SYSTEM_TYPES',
192         		new_references.system_type
193         )  THEN
194 	 Fnd_Message.Set_Name ('FND','FORM_RECORD_DELETED');
195       IGS_GE_MSG_STACK.ADD;
196  	 App_Exception.Raise_Exception;
197     END IF;
198 
199   END Check_Parent_Existance;
200 
201   FUNCTION Get_PK_For_Validation (
202     x_credential_type_id IN NUMBER,
203     x_closed_ind IN VARCHAR2
204     ) RETURN BOOLEAN AS
205 
206   /*************************************************************
207   Created By : Kamalakar N.
208   Date Created By : 15/May/2000
209   Purpose :
210   Know limitations, enhancements or remarks
211   Change History
212   Who             When            What
213    kumma          21-apr-2003     2900783, Commented the 'FOR UPDATE NOWAIT'
214   (reverse chronological order - newest change first)
215   ***************************************************************/
216 
217     CURSOR cur_rowid IS
218       SELECT   rowid
219       FROM     igs_ad_cred_types
220       WHERE    credential_type_id = x_credential_type_id AND
221                closed_ind = NVL(x_closed_ind,closed_ind);
222       --FOR UPDATE NOWAIT;
223 
224     lv_rowid cur_rowid%RowType;
225 
226   BEGIN
227 
228     Open cur_rowid;
229     Fetch cur_rowid INTO lv_rowid;
230     IF (cur_rowid%FOUND) THEN
231       Close cur_rowid;
232       Return(TRUE);
233     ELSE
234       Close cur_rowid;
235       Return(FALSE);
236     END IF;
237   END Get_PK_For_Validation;
238 
239   FUNCTION Get_UK_For_Validation (
240     x_credential_type VARCHAR2,
241     x_closed_ind IN VARCHAR2
242     ) RETURN BOOLEAN AS
243 
244   /*************************************************************
245   Created By : amuthu
246   Date Created On : 16-May-2000
247   Purpose :
248   Know limitations, enhancements or remarks
249   Change History
250   Who             When            What
251 
252   (reverse chronological order - newest change first)
253   vdixit          18-OCT-2001     Fix for bug 2019013
254   				  Added upper clause for case check
255   ***************************************************************/
256 
257     CURSOR cur_rowid IS
258       SELECT   rowid
259       FROM     igs_ad_cred_types
260       WHERE    UPPER(credential_type) = UPPER(x_credential_type) AND
261             ((l_rowid is null) or (rowid <> l_rowid)) AND
262                closed_ind = NVL(x_closed_ind,closed_ind);
263     lv_rowid cur_rowid%RowType;
264 
265   BEGIN
266 
267     Open cur_rowid;
268     Fetch cur_rowid INTO lv_rowid;
269     IF (cur_rowid%FOUND) THEN
270       Close cur_rowid;
271         return (true);
272         ELSE
273        close cur_rowid;
274       return(false);
275     END IF;
276   END Get_UK_For_Validation ;
277 
278   PROCEDURE Before_DML (
279     p_action IN VARCHAR2,
280     x_rowid IN VARCHAR2 DEFAULT NULL,
281     x_credential_type_id IN NUMBER DEFAULT NULL,
282     x_credential_type IN VARCHAR2 DEFAULT NULL,
283     x_system_type IN VARCHAR2 DEFAULT NULL,
284     x_description IN VARCHAR2 DEFAULT NULL,
285     x_closed_ind IN VARCHAR2 DEFAULT NULL,
286     x_step_code  IN VARCHAR2 DEFAULT NULL,
287     x_creation_date IN DATE DEFAULT NULL,
288     x_created_by IN NUMBER DEFAULT NULL,
289     x_last_update_date IN DATE DEFAULT NULL,
290     x_last_updated_by IN NUMBER DEFAULT NULL,
291     x_last_update_login IN NUMBER DEFAULT NULL
292   ) AS
293  /*************************************************************
294   Created By : Kamalakar N.
295   Date Created By : 15/May/2000
296   Purpose :
297   Know limitations, enhancements or remarks
298   Change History
299   Who             When            What
300 
301   (reverse chronological order - newest change first)
302   ***************************************************************/
303 
304   BEGIN
305 
306     Set_Column_Values (
307       p_action,
308       x_rowid,
309       x_credential_type_id,
310       x_credential_type,
311       x_system_type,
312       x_description,
313       x_closed_ind,
314       x_step_code,
315       x_creation_date,
316       x_created_by,
317       x_last_update_date,
318       x_last_updated_by,
319       x_last_update_login
320     );
321 
322     IF (p_action = 'INSERT') THEN
323       -- Call all the procedures related to Before Insert.
324       BeforeRowInsertUpdate(p_inserting => TRUE);
325 	     IF Get_Pk_For_Validation(
326     		new_references.credential_type_id)  THEN
327 	       Fnd_Message.Set_name('IGS','IGS_GE_RECORD_ALREADY_EXISTS');
328       IGS_GE_MSG_STACK.ADD;
329 	       App_Exception.Raise_Exception;
330 	     END IF;
331       Check_Uniqueness;
332       Check_Parent_Existance;
333       Check_Constraints;
334     ELSIF (p_action = 'UPDATE') THEN
335       -- Call all the procedures related to Before Update.
336       BeforeRowInsertUpdate(p_updating => TRUE);
337       Check_Uniqueness;
338       Check_Parent_Existance;
339       Check_Constraints;
340     ELSIF (p_action = 'DELETE') THEN
341       -- Call all the procedures related to Before Delete.
342       Null;
343       Check_Child_Existance;
344     ELSIF (p_action = 'VALIDATE_INSERT') THEN
345 	 -- Call all the procedures related to Before Insert.
346       IF Get_PK_For_Validation (
347     		new_references.credential_type_id)  THEN
348 	       Fnd_Message.Set_name('IGS','IGS_GE_RECORD_ALREADY_EXISTS');
349       IGS_GE_MSG_STACK.ADD;
350 	       App_Exception.Raise_Exception;
351 	     END IF;
352       Check_Uniqueness;
353       Check_Constraints;
354     ELSIF (p_action = 'VALIDATE_UPDATE') THEN
355       Check_Uniqueness;
356       Check_Constraints;
357     ELSIF (p_action = 'VALIDATE_DELETE') THEN
358       Check_Child_Existance;
359     END IF;
360  l_rowid := NULL;
361   END Before_DML;
362 
363   PROCEDURE After_DML (
364     p_action IN VARCHAR2,
365     x_rowid IN VARCHAR2
366   ) IS
367   /*************************************************************
368   Created By : Kamalakar N.
369   Date Created By : 15/May/2000
370   Purpose :
371   Know limitations, enhancements or remarks
372   Change History
373   Who             When            What
374 
378   BEGIN
375   (reverse chronological order - newest change first)
376   ***************************************************************/
377 
379 
380     l_rowid := x_rowid;
381 
382     IF (p_action = 'INSERT') THEN
383       -- Call all the procedures related to After Insert.
384       Null;
385     ELSIF (p_action = 'UPDATE') THEN
386       -- Call all the procedures related to After Update.
387       Null;
388     ELSIF (p_action = 'DELETE') THEN
389       -- Call all the procedures related to After Delete.
390       Null;
391     END IF;
392 
393   l_rowid := NULL;
394   END After_DML;
395 
396  procedure INSERT_ROW (
397       X_ROWID in out NOCOPY VARCHAR2,
398        x_CREDENTIAL_TYPE_ID IN OUT NOCOPY NUMBER,
399        x_CREDENTIAL_TYPE IN VARCHAR2,
400        x_SYSTEM_TYPE IN VARCHAR2,
401        x_DESCRIPTION IN VARCHAR2,
402        x_CLOSED_IND IN VARCHAR2,
403        x_STEP_CODE  IN VARCHAR2 DEFAULT NULL,
404       X_MODE in VARCHAR2 default 'R'
405   ) AS
406  /*************************************************************
407   Created By : Kamalakar N.
408   Date Created By : 15/May/2000
409   Purpose :
410   Know limitations, enhancements or remarks
411   Change History
412   Who             When            What
413 
414   (reverse chronological order - newest change first)
415   ***************************************************************/
416 
417     cursor C is select ROWID from IGS_AD_CRED_TYPES
418              where                 CREDENTIAL_TYPE_ID= X_CREDENTIAL_TYPE_ID
419 ;
420      X_LAST_UPDATE_DATE DATE ;
421      X_LAST_UPDATED_BY NUMBER ;
422      X_LAST_UPDATE_LOGIN NUMBER ;
423  begin
424      X_LAST_UPDATE_DATE := SYSDATE;
425       if(X_MODE = 'I') then
426         X_LAST_UPDATED_BY := 1;
427         X_LAST_UPDATE_LOGIN := 0;
428          elsif (X_MODE = 'R') then
429                X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
430             if X_LAST_UPDATED_BY is NULL then
431                 X_LAST_UPDATED_BY := -1;
432             end if;
433             X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
434          if X_LAST_UPDATE_LOGIN is NULL then
435             X_LAST_UPDATE_LOGIN := -1;
436           end if;
437        else
438         FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
439       IGS_GE_MSG_STACK.ADD;
440           app_exception.raise_exception;
441        end if;
442 
443    X_CREDENTIAL_TYPE_ID := -1;
444    Before_DML(
445  		p_action=>'INSERT',
446  		x_rowid=>X_ROWID,
447  	       x_credential_type_id=>X_CREDENTIAL_TYPE_ID,
448  	       x_credential_type=>X_CREDENTIAL_TYPE,
449  	       x_system_type=>X_SYSTEM_TYPE,
450  	       x_description=>X_DESCRIPTION,
451  	       x_closed_ind=>NVL(X_CLOSED_IND,'N' ),
452  	       x_step_code => X_STEP_CODE,
453 	       x_creation_date=>X_LAST_UPDATE_DATE,
454 	       x_created_by=>X_LAST_UPDATED_BY,
455 	       x_last_update_date=>X_LAST_UPDATE_DATE,
456 	       x_last_updated_by=>X_LAST_UPDATED_BY,
457 	       x_last_update_login=>X_LAST_UPDATE_LOGIN);
458      insert into IGS_AD_CRED_TYPES (
459 		CREDENTIAL_TYPE_ID
460 		,CREDENTIAL_TYPE
461 		,SYSTEM_TYPE
462 		,DESCRIPTION
463 		,CLOSED_IND
464 		,STEP_CODE
465 	        ,CREATION_DATE
466 		,CREATED_BY
467 		,LAST_UPDATE_DATE
468 		,LAST_UPDATED_BY
469 		,LAST_UPDATE_LOGIN
470         ) values  (
471 	         IGS_AD_CREDENTIAL_TYPES_S.NEXTVAL
472 	        ,NEW_REFERENCES.CREDENTIAL_TYPE
473 	        ,NEW_REFERENCES.SYSTEM_TYPE
474 	        ,NEW_REFERENCES.DESCRIPTION
475 	        ,NEW_REFERENCES.CLOSED_IND
476 	        ,NEW_REFERENCES.STEP_CODE
477 	        ,X_LAST_UPDATE_DATE
478 		,X_LAST_UPDATED_BY
479 		,X_LAST_UPDATE_DATE
480 		,X_LAST_UPDATED_BY
481 		,X_LAST_UPDATE_LOGIN
482 )RETURNING CREDENTIAL_TYPE_ID INTO X_CREDENTIAL_TYPE_ID ;
483 		open c;
484 		 fetch c into X_ROWID;
485  		if (c%notfound) then
486 		close c;
487  	     raise no_data_found;
488 		end if;
489  		close c;
490     After_DML (
491 		p_action => 'INSERT' ,
492 		x_rowid => X_ROWID );
493 end INSERT_ROW;
494  procedure LOCK_ROW (
495       X_ROWID in  VARCHAR2,
496        x_CREDENTIAL_TYPE_ID IN NUMBER,
497        x_CREDENTIAL_TYPE IN VARCHAR2,
498        x_SYSTEM_TYPE IN VARCHAR2,
499        x_DESCRIPTION IN VARCHAR2,
500        x_CLOSED_IND IN VARCHAR2,
501        x_STEP_CODE  IN VARCHAR2 DEFAULT NULL  ) AS
502  /*************************************************************
503   Created By : Kamalakar N.
504   Date Created By : 15/May/2000
505   Purpose :
506   Know limitations, enhancements or remarks
507   Change History
508   Who             When            What
509 
510   (reverse chronological order - newest change first)
511   ***************************************************************/
512 
513    cursor c1 is select
514       CREDENTIAL_TYPE
515 ,      SYSTEM_TYPE
516 ,      DESCRIPTION
517 ,      CLOSED_IND
518 ,      STEP_CODE
519     from IGS_AD_CRED_TYPES
520     where ROWID = X_ROWID
521     for update nowait;
522      tlinfo c1%rowtype;
526   if (c1%notfound) then
523 begin
524   open c1;
525   fetch c1 into tlinfo;
527     fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
528       IGS_GE_MSG_STACK.ADD;
529     close c1;
530     app_exception.raise_exception;
531     return;
532   end if;
533   close c1;
534 if ( (  tlinfo.CREDENTIAL_TYPE = X_CREDENTIAL_TYPE)
535   AND (tlinfo.SYSTEM_TYPE = X_SYSTEM_TYPE)
536   AND (tlinfo.DESCRIPTION = X_DESCRIPTION)
537   AND (tlinfo.CLOSED_IND = X_CLOSED_IND)
538   AND ((tlinfo.STEP_CODE = X_STEP_CODE)
539         OR ((tlinfo.STEP_CODE IS NULL)
540              AND (X_STEP_CODE IS NULL)))
541  ) then
542     null;
543   else
544     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
545       IGS_GE_MSG_STACK.ADD;
546     app_exception.raise_exception;
547   end if;
548   return;
549 end LOCK_ROW;
550  Procedure UPDATE_ROW (
551       X_ROWID in  VARCHAR2,
552        x_CREDENTIAL_TYPE_ID IN NUMBER,
553        x_CREDENTIAL_TYPE IN VARCHAR2,
554        x_SYSTEM_TYPE IN VARCHAR2,
555        x_DESCRIPTION IN VARCHAR2,
556        x_CLOSED_IND IN VARCHAR2,
557        x_STEP_CODE  IN VARCHAR2 DEFAULT NULL,
558       X_MODE in VARCHAR2 default 'R'
559   ) AS
560   /*************************************************************
561   Created By : Kamalakar N.
562   Date Created By : 15/May/2000
563   Purpose :
564   Know limitations, enhancements or remarks
565   Change History
566   Who             When            What
567 
568   (reverse chronological order - newest change first)
569   ***************************************************************/
570 
571      X_LAST_UPDATE_DATE DATE ;
572      X_LAST_UPDATED_BY NUMBER ;
573      X_LAST_UPDATE_LOGIN NUMBER ;
574  begin
575      X_LAST_UPDATE_DATE := SYSDATE;
576       if(X_MODE = 'I') then
577         X_LAST_UPDATED_BY := 1;
578         X_LAST_UPDATE_LOGIN := 0;
579          elsif (X_MODE = 'R') then
580                X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
581             if X_LAST_UPDATED_BY is NULL then
582                 X_LAST_UPDATED_BY := -1;
583             end if;
584             X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
585          if X_LAST_UPDATE_LOGIN is NULL then
586             X_LAST_UPDATE_LOGIN := -1;
587           end if;
588        else
589         FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
590       IGS_GE_MSG_STACK.ADD;
591           app_exception.raise_exception;
592        end if;
593    Before_DML(
594  		p_action=>'UPDATE',
595  		x_rowid=>X_ROWID,
596  	       x_credential_type_id=>X_CREDENTIAL_TYPE_ID,
597  	       x_credential_type=>X_CREDENTIAL_TYPE,
598  	       x_system_type=>X_SYSTEM_TYPE,
599  	       x_description=>X_DESCRIPTION,
600  	       x_closed_ind=>NVL(X_CLOSED_IND,'N' ),
601     	       x_step_code=> X_STEP_CODE ,
602 	       x_creation_date=>X_LAST_UPDATE_DATE,
603 	       x_created_by=>X_LAST_UPDATED_BY,
604 	       x_last_update_date=>X_LAST_UPDATE_DATE,
605 	       x_last_updated_by=>X_LAST_UPDATED_BY,
606 	       x_last_update_login=>X_LAST_UPDATE_LOGIN);
607    update IGS_AD_CRED_TYPES set
608       CREDENTIAL_TYPE =  NEW_REFERENCES.CREDENTIAL_TYPE,
609       SYSTEM_TYPE =  NEW_REFERENCES.SYSTEM_TYPE,
610       DESCRIPTION =  NEW_REFERENCES.DESCRIPTION,
611       CLOSED_IND =  NEW_REFERENCES.CLOSED_IND,
612       STEP_CODE =   NEW_REFERENCES.STEP_CODE,
613 	LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
614 	LAST_UPDATED_BY = X_LAST_UPDATED_BY,
615 	LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
616 	  where ROWID = X_ROWID;
617 	if (sql%notfound) then
618 		raise no_data_found;
619 	end if;
620 
621  After_DML (
622 	p_action => 'UPDATE' ,
623 	x_rowid => X_ROWID
624 	);
625 end UPDATE_ROW;
626  procedure ADD_ROW (
627       X_ROWID in out NOCOPY VARCHAR2,
628        x_CREDENTIAL_TYPE_ID IN OUT NOCOPY NUMBER,
629        x_CREDENTIAL_TYPE IN VARCHAR2,
630        x_SYSTEM_TYPE IN VARCHAR2,
631        x_DESCRIPTION IN VARCHAR2,
632        x_CLOSED_IND IN VARCHAR2,
633        x_STEP_CODE  IN VARCHAR2 DEFAULT NULL,
634       X_MODE in VARCHAR2 default 'R'
635   ) AS
636  /*************************************************************
637   Created By : Kamalakar N.
638   Date Created By : 15/May/2000
639   Purpose :
640   Know limitations, enhancements or remarks
641   Change History
642   Who             When            What
643 
644   (reverse chronological order - newest change first)
645   ***************************************************************/
646 
647     cursor c1 is select ROWID from IGS_AD_CRED_TYPES
648              where     CREDENTIAL_TYPE_ID= X_CREDENTIAL_TYPE_ID
649 ;
650 begin
651 	open c1;
652 		fetch c1 into X_ROWID;
653 	if (c1%notfound) then
654 	close c1;
655     INSERT_ROW (
656       X_ROWID,
657        X_CREDENTIAL_TYPE_ID,
658        X_CREDENTIAL_TYPE,
659        X_SYSTEM_TYPE,
660        X_DESCRIPTION,
661        X_CLOSED_IND,
662        X_STEP_CODE,
663      X_MODE );
664      return;
665 	end if;
666 	   close c1;
667 UPDATE_ROW (
668       X_ROWID,
669        X_CREDENTIAL_TYPE_ID,
670        X_CREDENTIAL_TYPE,
671        X_SYSTEM_TYPE,
672        X_DESCRIPTION,
673        X_CLOSED_IND,
674        X_STEP_CODE,
675       X_MODE );
676 end ADD_ROW;
677 procedure DELETE_ROW (
678   X_ROWID in VARCHAR2
679 ) AS
680 /*************************************************************
681   Created By : Kamalakar N.
682   Date Created By : 15/May/2000
683   Purpose :
684   Know limitations, enhancements or remarks
685   Change History
686   Who             When            What
687 
688   (reverse chronological order - newest change first)
689   ***************************************************************/
690 
691 begin
692 Before_DML (
693 p_action => 'DELETE',
694 x_rowid => X_ROWID
695 );
696  delete from IGS_AD_CRED_TYPES
697  where ROWID = X_ROWID;
698   if (sql%notfound) then
699     raise no_data_found;
700   end if;
701 After_DML (
702  p_action => 'DELETE',
703  x_rowid => X_ROWID
704 );
705 end DELETE_ROW;
706 END igs_ad_cred_types_pkg;