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;