DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGS_PS_USEC_RPT_FMLY_PKG

Source


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