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