DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGS_AD_NOTE_TYPES_PKG

Source


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