DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGS_OR_ORG_ALT_IDTYP_PKG

Source


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