DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGS_PS_UNIT_FLD_STDY_PKG

Source


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