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