[Home] [Help]
PACKAGE BODY: APPS.IGS_FI_FEE_TRG_GRP_PKG
Source
1 package body IGS_FI_FEE_TRG_GRP_PKG AS
2 /* $Header: IGSSI36B.pls 115.5 2003/02/12 10:14:46 shtatiko ship $*/
3 l_rowid VARCHAR2(25);
4 old_references IGS_FI_FEE_TRG_GRP%RowType;
5 new_references IGS_FI_FEE_TRG_GRP%RowType;
6
7 PROCEDURE Set_Column_Values (
8
9 p_action IN VARCHAR2,
10
11 x_rowid IN VARCHAR2 DEFAULT NULL,
12
13 x_fee_trigger_group_number IN NUMBER DEFAULT NULL,
14
15 x_description IN VARCHAR2 DEFAULT NULL,
16
17 x_logical_delete_dt IN DATE DEFAULT NULL,
18
19 x_comments IN VARCHAR2 DEFAULT NULL,
20
21 x_fee_cat IN VARCHAR2 DEFAULT NULL,
22
23 x_fee_cal_type IN VARCHAR2 DEFAULT NULL,
24
25 x_fee_ci_sequence_number IN NUMBER DEFAULT NULL,
26
27 x_fee_type IN VARCHAR2 DEFAULT NULL,
28
29 x_creation_date IN DATE DEFAULT NULL,
30
31 x_created_by IN NUMBER DEFAULT NULL,
32
33 x_last_update_date IN DATE DEFAULT NULL,
34
35 x_last_updated_by IN NUMBER DEFAULT NULL,
36
37 x_last_update_login IN NUMBER DEFAULT NULL
38
39 ) AS
40
41
42
43 CURSOR cur_old_ref_values IS
44
45 SELECT *
46
47 FROM IGS_FI_FEE_TRG_GRP
48
49 WHERE rowid = x_rowid;
50
51
52
53 BEGIN
54
55
56
57 l_rowid := x_rowid;
58
59
60
61 -- Code for setting the Old and New Reference Values.
62
63 -- Populate Old Values.
64
65 Open cur_old_ref_values;
66
67 Fetch cur_old_ref_values INTO old_references;
68
69 IF (cur_old_ref_values%NOTFOUND) AND (p_action NOT IN ('INSERT', 'VALIDATE_INSERT')) THEN
70
71 Close cur_old_ref_values;
72 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
73 IGS_GE_MSG_STACK.ADD;
74 App_Exception.Raise_Exception;
75
76 Return;
77
78 END IF;
79
80 Close cur_old_ref_values;
81
82
83
84 -- Populate New Values.
85
86 new_references.fee_trigger_group_number := x_fee_trigger_group_number;
87
88 new_references.description := x_description;
89
90 new_references.logical_delete_dt := x_logical_delete_dt;
91
92 new_references.comments := x_comments;
93
94 new_references.fee_cat := x_fee_cat;
95
96 new_references.fee_cal_type := x_fee_cal_type;
97
98 new_references.fee_ci_sequence_number := x_fee_ci_sequence_number;
99
100 new_references.fee_type := x_fee_type;
101
102 IF (p_action = 'UPDATE') THEN
103
104 new_references.creation_date := old_references.creation_date;
105
106 new_references.created_by := old_references.created_by;
107
108 ELSE
109
110 new_references.creation_date := x_creation_date;
111
112 new_references.created_by := x_created_by;
113
114 END IF;
115
116 new_references.last_update_date := x_last_update_date;
117
118 new_references.last_updated_by := x_last_updated_by;
119
120 new_references.last_update_login := x_last_update_login;
121
122
123
124 END Set_Column_Values;
125
126
127
128 -- Trigger description :-
129
130 -- "OSS_TST".trg_ftg_br_iu
131
132 -- BEFORE INSERT OR UPDATE
133
134 -- ON IGS_FI_FEE_TRG_GRP
135
136 -- FOR EACH ROW
137
138
139
140 PROCEDURE BeforeRowInsertUpdate1(
141
142 p_inserting IN BOOLEAN DEFAULT FALSE,
143
144 p_updating IN BOOLEAN DEFAULT FALSE,
145
146 p_deleting IN BOOLEAN DEFAULT FALSE
147
148 ) AS
149
150 v_message_name varchar2(30);
151
152 BEGIN
153
154 IF p_inserting THEN
155
156 -- Validate fee trigger group can be inserted
157
158 IF IGS_FI_VAL_FTG.finp_val_ftg_ins (
159
160 new_references.fee_type,
161
162 v_message_name) = FALSE THEN
163
164 Fnd_Message.Set_Name('IGS',v_message_name);
165 IGS_GE_MSG_STACK.ADD;
166 App_Exception.Raise_Exception;
167
168 END IF;
169
170 END IF;
171
172 IF p_updating THEN
173
174 -- Validate fee trigger group can be logically deleted
175
176 IF (new_references.logical_delete_dt IS NOT NULL) THEN
177
178 IF IGS_FI_VAL_FTG.finp_val_ftg_lgl_del (
179
180 new_references.fee_cat,
181
182 new_references.fee_cal_type,
183
184 new_references.fee_ci_sequence_number,
185
186 new_references.fee_type,
187
188 new_references.fee_trigger_group_number,
189
190 v_message_name) = FALSE THEN
191
192 Fnd_Message.Set_Name('IGS',v_message_name);
193 IGS_GE_MSG_STACK.ADD;
194 App_Exception.Raise_Exception;
195
196 END IF;
197
198 END IF;
199
200 END IF;
201 END BeforeRowInsertUpdate1;
202
203 PROCEDURE Check_Constraints (
204 Column_Name IN VARCHAR2 DEFAULT NULL,
205 Column_Value IN VARCHAR2 DEFAULT NULL
206 ) AS
207 /*----------------------------------------------------------------------------
208 || Created By :
209 || Created On :
210 || Purpose :
211 || Known limitations, enhancements or remarks :
212 || Change History :
213 || Who When What
214 || (reverse chronological order - newest change first)
215 || vvutukur 17-May-2002 removed upper check on fee_type,fee_cat columns.bug#2344826.
216 ----------------------------------------------------------------------------*/
217
218 BEGIN
219 IF Column_Name is NULL THEN
220 NULL;
221 ELSIF upper(Column_Name) = 'FEE_CAL_TYPE' then
222 new_references.fee_cal_type := Column_Value;
223 ELSIF upper(Column_Name) = 'DESCRIPTION' then
224 new_references.description := Column_Value;
225 ELSIF upper(Column_Name) = 'FEE_CI_SEQUENCE_NUMBER' then
226 new_references.fee_ci_sequence_number := igs_ge_number.to_num(Column_Value);
227 ELSIF upper(Column_Name) = 'FEE_TRIGGER_GROUP_NUMBER' then
228 new_references.fee_trigger_group_number := igs_ge_number.to_num(Column_Value);
229 END IF;
230
231 IF upper(Column_Name) = 'FEE_CAL_TYPE' OR
232 column_name is NULL THEN
233 IF new_references.fee_cal_type <> UPPER(new_references.fee_cal_type) THEN
234 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
235 IGS_GE_MSG_STACK.ADD;
236 App_Exception.Raise_Exception;
237 END IF;
238 END IF;
239 IF upper(Column_Name) = 'FEE_CI_SEQUENCE_NUMBER' OR
240 column_name is NULL THEN
241 IF new_references.fee_ci_sequence_number < 1 OR
242 new_references.fee_ci_sequence_number > 999999 THEN
243 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
244 IGS_GE_MSG_STACK.ADD;
245
246 App_Exception.Raise_Exception;
247 END IF;
248 END IF;
249 IF upper(Column_Name) = 'FEE_TRIGGER_GROUP_NUMBER' OR
250 column_name is NULL THEN
251 IF new_references.fee_trigger_group_number < 1 OR
252 new_references.fee_trigger_group_number > 999999 THEN
253 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
254 IGS_GE_MSG_STACK.ADD;
255
256 App_Exception.Raise_Exception;
257 END IF;
258 END IF;
259 END Check_Constraints;
260
261 PROCEDURE Check_Parent_Existance AS
262 BEGIN
263 IF (((old_references.fee_cat = new_references.fee_cat) AND
264 (old_references.fee_cal_type = new_references.fee_cal_type) AND
265 (old_references.fee_ci_sequence_number = new_references.fee_ci_sequence_number) AND
266 (old_references.fee_type = new_references.fee_type)) OR
267 ((new_references.fee_cat IS NULL) OR
268 (new_references.fee_cal_type IS NULL) OR
269 (new_references.fee_ci_sequence_number IS NULL) OR
270 (new_references.fee_type IS NULL))) THEN
271 NULL;
272 ELSIF NOT IGS_FI_F_CAT_FEE_LBL_PKG.Get_PK_For_Validation (
273 new_references.fee_cat,
274 new_references.fee_cal_type,
275 new_references.fee_ci_sequence_number,
276 new_references.fee_type
277 ) THEN
278 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
279 IGS_GE_MSG_STACK.ADD;
280 App_Exception.Raise_Exception;
281 END IF;
282 END Check_Parent_Existance;
283
284
285 PROCEDURE Check_Child_Existance AS
286
287 BEGIN
288 IGS_PS_FEE_TRG_PKG.GET_FK_IGS_FI_FEE_TRG_GRP (
289 OLD_references.fee_cat,
290 OLD_references.fee_cal_type,
291 OLD_references.fee_ci_sequence_number,
292 OLD_references.fee_type,
293 OLD_references.fee_trigger_group_number
294 );
295
296 IGS_FI_UNIT_FEE_TRG_PKG.GET_FK_IGS_FI_FEE_TRG_GRP (
297 OLD_references.fee_cat,
298 OLD_references.fee_cal_type,
299 OLD_references.fee_ci_sequence_number,
300 OLD_references.fee_type,
301 OLD_references.fee_trigger_group_number
302 );
303
304 IGS_EN_UNITSETFEETRG_PKG.GET_FK_IGS_FI_FEE_TRG_GRP (
305 OLD_references.fee_cat,
306 OLD_references.fee_cal_type,
307 old_references.fee_ci_sequence_number,
308 OLD_references.fee_type,
309 OLD_references.fee_trigger_group_number
310 );
311 END Check_Child_Existance;
312
313
314
315 FUNCTION Get_PK_For_Validation (
316 x_fee_cat IN VARCHAR2,
317 x_fee_cal_type IN VARCHAR2,
318 x_fee_ci_sequence_number IN NUMBER,
319 x_fee_type IN VARCHAR2,
320 x_fee_trigger_group_number IN NUMBER
321 ) RETURN BOOLEAN AS
322
323 CURSOR cur_rowid IS
324 SELECT rowid
325 FROM IGS_FI_FEE_TRG_GRP
326 WHERE fee_cat = x_fee_cat
327 AND fee_cal_type = x_fee_cal_type
328 AND fee_ci_sequence_number = x_fee_ci_sequence_number
329 AND fee_type = x_fee_type
330 AND fee_trigger_group_number = x_fee_trigger_group_number
331 FOR UPDATE NOWAIT;
332
333 lv_rowid cur_rowid%RowType;
334
335 BEGIN
336 Open cur_rowid;
337 Fetch cur_rowid INTO lv_rowid;
338 IF (cur_rowid%FOUND) THEN
339 Close cur_rowid;
340 Return (TRUE);
341 ELSE
342 Close cur_rowid;
343 Return (FALSE);
344 END IF;
345 END Get_PK_For_Validation;
346
347
348
349 PROCEDURE Before_DML (
350
351 p_action IN VARCHAR2,
352
353 x_rowid IN VARCHAR2 DEFAULT NULL,
354
355 x_fee_trigger_group_number IN NUMBER DEFAULT NULL,
356
357 x_description IN VARCHAR2 DEFAULT NULL,
358
359 x_logical_delete_dt IN DATE DEFAULT NULL,
360
361 x_comments IN VARCHAR2 DEFAULT NULL,
362
363 x_fee_cat IN VARCHAR2 DEFAULT NULL,
364
365 x_fee_cal_type IN VARCHAR2 DEFAULT NULL,
366
367 x_fee_ci_sequence_number IN NUMBER DEFAULT NULL,
368
369 x_fee_type IN VARCHAR2 DEFAULT NULL,
370
371 x_creation_date IN DATE DEFAULT NULL,
372
373 x_created_by IN NUMBER DEFAULT NULL,
374
375 x_last_update_date IN DATE DEFAULT NULL,
376
377 x_last_updated_by IN NUMBER DEFAULT NULL,
378
379 x_last_update_login IN NUMBER DEFAULT NULL
380
381 ) AS
382
383 BEGIN
384
385
386
387 Set_Column_Values (
388
389 p_action,
390
391 x_rowid,
392
393 x_fee_trigger_group_number,
394
395 x_description,
396
397 x_logical_delete_dt,
398
399 x_comments,
400
401 x_fee_cat,
402
403 x_fee_cal_type,
404
405 x_fee_ci_sequence_number,
406
407 x_fee_type,
408
409 x_creation_date,
410
411 x_created_by,
412
413 x_last_update_date,
414
415 x_last_updated_by,
416
417 x_last_update_login
418
419 );
420
421
422
423 IF (p_action = 'INSERT') THEN
424
425 -- Call all the procedures related to Before Insert.
426
427 BeforeRowInsertUpdate1 ( p_inserting => TRUE );
428 IF Get_PK_For_Validation (
429 new_references.fee_cat,
430 new_references.fee_cal_type,
431 new_references.fee_ci_sequence_number,
432 new_references.fee_type,
433 new_references.fee_trigger_group_number ) THEN
434
435 Fnd_Message.Set_Name ('IGS', 'IGS_GE_RECORD_ALREADY_EXISTS');
436 IGS_GE_MSG_STACK.ADD;
437 App_Exception.Raise_Exception;
438 END IF;
439 Check_Constraints;
440 Check_Parent_Existance;
441 ELSIF (p_action = 'UPDATE') THEN
442 -- Call all the procedures related to Before Update.
443 BeforeRowInsertUpdate1 ( p_updating => TRUE );
444 Check_Parent_Existance;
445 ELSIF (p_action = 'DELETE') THEN
446 -- Call all the procedures related to Before Delete.
447 Check_Child_Existance;
448 ELSIF (p_action = 'VALIDATE_INSERT') THEN
449 -- Call all the procedures related to Before Insert.
450 IF Get_PK_For_Validation (
451 new_references.fee_cat,
452 new_references.fee_cal_type,
453 new_references.fee_ci_sequence_number,
454 new_references.fee_type,
455 new_references.fee_trigger_group_number ) THEN
456
457 Fnd_Message.Set_Name ('IGS', 'IGS_GE_RECORD_ALREADY_EXISTS');
458 IGS_GE_MSG_STACK.ADD;
459
460 App_Exception.Raise_Exception;
461 END IF;
462 Check_Constraints;
463 ELSIF (p_action = 'VALIDATE_UPDATE') THEN
464 Check_Constraints;
465 ELSIF (p_action = 'VALIDATE_DELETE') THEN
466 Check_Child_Existance;
467 END IF;
468 END Before_DML;
469
470 procedure INSERT_ROW (
471 X_ROWID in out NOCOPY VARCHAR2,
472 X_FEE_CAT in VARCHAR2,
473 X_FEE_TRIGGER_GROUP_NUMBER in NUMBER,
474 X_FEE_CAL_TYPE in VARCHAR2,
475 X_FEE_CI_SEQUENCE_NUMBER in NUMBER,
476 X_FEE_TYPE in VARCHAR2,
477 X_DESCRIPTION in VARCHAR2,
478 X_LOGICAL_DELETE_DT in DATE,
479 X_COMMENTS in VARCHAR2,
480 X_MODE in VARCHAR2 default 'R'
481 ) AS
482 cursor C is select ROWID from IGS_FI_FEE_TRG_GRP
483 where FEE_CAT = X_FEE_CAT
484 and FEE_TRIGGER_GROUP_NUMBER = X_FEE_TRIGGER_GROUP_NUMBER
485 and FEE_CAL_TYPE = X_FEE_CAL_TYPE
486 and FEE_CI_SEQUENCE_NUMBER = X_FEE_CI_SEQUENCE_NUMBER
487 and FEE_TYPE = X_FEE_TYPE;
488 X_LAST_UPDATE_DATE DATE;
489 X_LAST_UPDATED_BY NUMBER;
490 X_LAST_UPDATE_LOGIN NUMBER;
491 begin
492 X_LAST_UPDATE_DATE := SYSDATE;
493 if(X_MODE = 'I') then
494 X_LAST_UPDATED_BY := 1;
495 X_LAST_UPDATE_LOGIN := 0;
496 elsif (X_MODE = 'R') then
497 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
498 if X_LAST_UPDATED_BY is NULL then
499 X_LAST_UPDATED_BY := -1;
500 end if;
501 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
502 if X_LAST_UPDATE_LOGIN is NULL then
503 X_LAST_UPDATE_LOGIN := -1;
504 end if;
505 else
506 FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
507 IGS_GE_MSG_STACK.ADD;
508 app_exception.raise_exception;
509 end if;
510
511
512
513 Before_DML(
514
515 p_action=>'INSERT',
516
517 x_rowid=>X_ROWID,
518
519 x_comments=>X_COMMENTS,
520
521 x_description=>X_DESCRIPTION,
522
523 x_fee_cal_type=>X_FEE_CAL_TYPE,
524
525 x_fee_cat=>X_FEE_CAT,
526
527 x_fee_ci_sequence_number=>X_FEE_CI_SEQUENCE_NUMBER,
528
529 x_fee_trigger_group_number=>X_FEE_TRIGGER_GROUP_NUMBER,
530
531 x_fee_type=>X_FEE_TYPE,
532
533 x_logical_delete_dt=>X_LOGICAL_DELETE_DT,
534
535 x_creation_date=>X_LAST_UPDATE_DATE,
536
537 x_created_by=>X_LAST_UPDATED_BY,
538
539 x_last_update_date=>X_LAST_UPDATE_DATE,
540
541 x_last_updated_by=>X_LAST_UPDATED_BY,
542
543 x_last_update_login=>X_LAST_UPDATE_LOGIN
544
545 );
546
547
548
549 insert into IGS_FI_FEE_TRG_GRP (
550 FEE_CAT,
551 FEE_CAL_TYPE,
552 FEE_CI_SEQUENCE_NUMBER,
553 FEE_TYPE,
554 FEE_TRIGGER_GROUP_NUMBER,
555 DESCRIPTION,
556 LOGICAL_DELETE_DT,
557 COMMENTS,
558 CREATION_DATE,
559 CREATED_BY,
560 LAST_UPDATE_DATE,
561 LAST_UPDATED_BY,
562 LAST_UPDATE_LOGIN
563 ) values (
564 NEW_REFERENCES.FEE_CAT,
565 NEW_REFERENCES.FEE_CAL_TYPE,
566 NEW_REFERENCES.FEE_CI_SEQUENCE_NUMBER,
567 NEW_REFERENCES.FEE_TYPE,
568 NEW_REFERENCES.FEE_TRIGGER_GROUP_NUMBER,
569 NEW_REFERENCES.DESCRIPTION,
570 NEW_REFERENCES.LOGICAL_DELETE_DT,
571 NEW_REFERENCES.COMMENTS,
572 X_LAST_UPDATE_DATE,
573 X_LAST_UPDATED_BY,
574 X_LAST_UPDATE_DATE,
575 X_LAST_UPDATED_BY,
576 X_LAST_UPDATE_LOGIN
577 );
578
579 open c;
580 fetch c into X_ROWID;
581 if (c%notfound) then
582 close c;
583 raise no_data_found;
584 end if;
585 close c;
586
587 end INSERT_ROW;
588
589 procedure LOCK_ROW (
590 X_ROWID in VARCHAR2,
591 X_FEE_CAT in VARCHAR2,
592 X_FEE_TRIGGER_GROUP_NUMBER in NUMBER,
593 X_FEE_CAL_TYPE in VARCHAR2,
594 X_FEE_CI_SEQUENCE_NUMBER in NUMBER,
595 X_FEE_TYPE in VARCHAR2,
596 X_DESCRIPTION in VARCHAR2,
597 X_LOGICAL_DELETE_DT in DATE,
598 X_COMMENTS in VARCHAR2
599 ) AS
600 cursor c1 is select
601 DESCRIPTION,
602 LOGICAL_DELETE_DT,
603 COMMENTS
604 from IGS_FI_FEE_TRG_GRP
605 where ROWID = X_ROWID
606 for update nowait;
607 tlinfo c1%rowtype;
608
609 begin
610 open c1;
611 fetch c1 into tlinfo;
612 if (c1%notfound) then
613 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
614 IGS_GE_MSG_STACK.ADD;
615 app_exception.raise_exception;
616 close c1;
617 return;
618 end if;
619 close c1;
620
621 if ( (tlinfo.DESCRIPTION = X_DESCRIPTION)
622 AND ((tlinfo.LOGICAL_DELETE_DT = X_LOGICAL_DELETE_DT)
623 OR ((tlinfo.LOGICAL_DELETE_DT is null)
624 AND (X_LOGICAL_DELETE_DT is null)))
625 AND ((tlinfo.COMMENTS = X_COMMENTS)
626 OR ((tlinfo.COMMENTS is null)
627 AND (X_COMMENTS is null)))
628 ) then
629 null;
630 else
631 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
632 IGS_GE_MSG_STACK.ADD;
633 app_exception.raise_exception;
634 end if;
635 return;
636 end LOCK_ROW;
637
638 procedure UPDATE_ROW (
639 X_ROWID in VARCHAR2,
640 X_FEE_CAT in VARCHAR2,
641 X_FEE_TRIGGER_GROUP_NUMBER in NUMBER,
642 X_FEE_CAL_TYPE in VARCHAR2,
643 X_FEE_CI_SEQUENCE_NUMBER in NUMBER,
644 X_FEE_TYPE in VARCHAR2,
645 X_DESCRIPTION in VARCHAR2,
646 X_LOGICAL_DELETE_DT in DATE,
647 X_COMMENTS in VARCHAR2,
648 X_MODE in VARCHAR2 default 'R'
649 ) AS
650 X_LAST_UPDATE_DATE DATE;
651 X_LAST_UPDATED_BY NUMBER;
652 X_LAST_UPDATE_LOGIN NUMBER;
653 begin
654 X_LAST_UPDATE_DATE := SYSDATE;
655 if(X_MODE = 'I') then
656 X_LAST_UPDATED_BY := 1;
657 X_LAST_UPDATE_LOGIN := 0;
658 elsif (X_MODE = 'R') then
659 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
660 if X_LAST_UPDATED_BY is NULL then
661 X_LAST_UPDATED_BY := -1;
662 end if;
663 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
664 if X_LAST_UPDATE_LOGIN is NULL then
665 X_LAST_UPDATE_LOGIN := -1;
666 end if;
667 else
668 FND_MESSAGE.SET_NAME('FND', 'SYSTEM-INVALID ARGS');
669 IGS_GE_MSG_STACK.ADD;
670 app_exception.raise_exception;
671 end if;
672
673
674
675 Before_DML(
676
677 p_action=>'UPDATE',
678
679 x_rowid=>X_ROWID,
680
681 x_comments=>X_COMMENTS,
682
683 x_description=>X_DESCRIPTION,
684
685 x_fee_cal_type=>X_FEE_CAL_TYPE,
686
687 x_fee_cat=>X_FEE_CAT,
688
689 x_fee_ci_sequence_number=>X_FEE_CI_SEQUENCE_NUMBER,
690
691 x_fee_trigger_group_number=>X_FEE_TRIGGER_GROUP_NUMBER,
692
693 x_fee_type=>X_FEE_TYPE,
694
695 x_logical_delete_dt=>X_LOGICAL_DELETE_DT,
696
697 x_creation_date=>X_LAST_UPDATE_DATE,
698
699 x_created_by=>X_LAST_UPDATED_BY,
700
701 x_last_update_date=>X_LAST_UPDATE_DATE,
702
703 x_last_updated_by=>X_LAST_UPDATED_BY,
704
705 x_last_update_login=>X_LAST_UPDATE_LOGIN
706
707 );
708
709
710
711
712 update IGS_FI_FEE_TRG_GRP set
713 DESCRIPTION = NEW_REFERENCES.DESCRIPTION,
714 LOGICAL_DELETE_DT = NEW_REFERENCES.LOGICAL_DELETE_DT,
715 COMMENTS = NEW_REFERENCES.COMMENTS,
716 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
717 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
718 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
719 where ROWID = X_ROWID;
720 if (sql%notfound) then
721 raise no_data_found;
722 end if;
723
724 end UPDATE_ROW;
725
726 procedure ADD_ROW (
727 X_ROWID in out NOCOPY VARCHAR2,
728 X_FEE_CAT in VARCHAR2,
729 X_FEE_TRIGGER_GROUP_NUMBER in NUMBER,
730 X_FEE_CAL_TYPE in VARCHAR2,
731 X_FEE_CI_SEQUENCE_NUMBER in NUMBER,
732 X_FEE_TYPE in VARCHAR2,
733 X_DESCRIPTION in VARCHAR2,
734 X_LOGICAL_DELETE_DT in DATE,
735 X_COMMENTS in VARCHAR2,
736 X_MODE in VARCHAR2 default 'R'
737 ) AS
738 cursor c1 is select rowid from IGS_FI_FEE_TRG_GRP
739 where FEE_CAT = X_FEE_CAT
740 and FEE_TRIGGER_GROUP_NUMBER = X_FEE_TRIGGER_GROUP_NUMBER
741 and FEE_CAL_TYPE = X_FEE_CAL_TYPE
742 and FEE_CI_SEQUENCE_NUMBER = X_FEE_CI_SEQUENCE_NUMBER
743 and FEE_TYPE = X_FEE_TYPE
744 ;
745 begin
746 open c1;
747 fetch c1 into X_ROWID;
748 if (c1%notfound) then
749 close c1;
750 INSERT_ROW (
751 X_ROWID,
752 X_FEE_CAT,
753 X_FEE_TRIGGER_GROUP_NUMBER,
754 X_FEE_CAL_TYPE,
755 X_FEE_CI_SEQUENCE_NUMBER,
756 X_FEE_TYPE,
757 X_DESCRIPTION,
758 X_LOGICAL_DELETE_DT,
759 X_COMMENTS,
760 X_MODE);
761 return;
762 end if;
763 close c1;
764 UPDATE_ROW (
765 X_ROWID,
766 X_FEE_CAT,
767 X_FEE_TRIGGER_GROUP_NUMBER,
768 X_FEE_CAL_TYPE,
769 X_FEE_CI_SEQUENCE_NUMBER,
770 X_FEE_TYPE,
771 X_DESCRIPTION,
772 X_LOGICAL_DELETE_DT,
773 X_COMMENTS,
774 X_MODE);
775 end ADD_ROW;
776
777 procedure DELETE_ROW (
778 X_ROWID in VARCHAR2
779 ) AS
780 begin
781 Before_DML (
782 p_action => 'DELETE',
783 x_rowid => X_ROWID
784 );
785 delete from IGS_FI_FEE_TRG_GRP
786 where ROWID = X_ROWID;
787 if (sql%notfound) then
788 raise no_data_found;
789 end if;
790 end DELETE_ROW;
791
792 end IGS_FI_FEE_TRG_GRP_PKG;