[Home] [Help]
PACKAGE BODY: APPS.IGS_FI_FEE_AS_PKG
Source
1 PACKAGE BODY igs_fi_fee_as_pkg AS
2 /* $Header: IGSSI18B.pls 115.25 2003/02/12 06:16:35 pathipat ship $ */
3
4 l_rowid VARCHAR2(25);
5 old_references IGS_FI_FEE_AS_ALL%RowType;
6 new_references IGS_FI_FEE_AS_ALL%RowType;
7 PROCEDURE Set_Column_Values (
8 p_action IN VARCHAR2,
9 x_rowid IN VARCHAR2 ,
10 x_person_id IN NUMBER ,
11 x_transaction_id IN NUMBER ,
12 x_fee_type IN VARCHAR2 ,
13 x_fee_cal_type IN VARCHAR2 ,
14 x_fee_ci_sequence_number IN NUMBER ,
15 x_fee_cat IN VARCHAR2 ,
16 x_s_transaction_type IN VARCHAR2 ,
17 x_transaction_dt IN DATE ,
18 x_transaction_amount IN NUMBER ,
19 x_currency_cd IN VARCHAR2 ,
20 x_exchange_rate IN NUMBER ,
21 x_chg_elements IN NUMBER ,
22 x_effective_dt IN DATE ,
23 x_course_cd IN VARCHAR2 ,
24 x_notification_dt IN DATE ,
25 x_logical_delete_dt IN DATE ,
26 x_comments IN VARCHAR2 ,
27 x_org_id IN NUMBER ,
28 x_creation_date IN DATE ,
29 x_created_by IN NUMBER ,
30 x_last_update_date IN DATE ,
31 x_last_updated_by IN NUMBER ,
32 x_last_update_login IN NUMBER
33 ) AS
34 /*----------------------------------------------------------------------------
35 || Created By :
36 || Created On :
37 || Purpose :
38 || Known limitations, enhancements or remarks :
39 || Change History :
40 || Who When What
41 || (reverse chronological order - newest change first)
42 || smvk 02-Sep-2002 Removed the Default value in the parameters to overcome File.Pkg.22 gscc warnings.
43 || As a part of Build SFCR005_Cleanup_Build (Enhancement Bug # 2531390)
44 ----------------------------------------------------------------------------*/
45
46 CURSOR cur_old_ref_values IS
47 SELECT *
48 FROM IGS_FI_FEE_AS_ALL
49 WHERE rowid = x_rowid;
50 BEGIN
51 l_rowid := x_rowid;
52 -- Code for setting the Old and New Reference Values.
53 -- Populate Old Values.
54 Open cur_old_ref_values;
55 Fetch cur_old_ref_values INTO old_references;
56 IF (cur_old_ref_values%NOTFOUND) AND (p_action NOT IN ('INSERT', 'VALIDATE_INSERT')) THEN
57 Close cur_old_ref_values;
58 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
59 IGS_GE_MSG_STACK.ADD;
60 App_Exception.Raise_Exception;
61 Return;
62 END IF;
63 Close cur_old_ref_values;
64 -- Populate New Values.
65 new_references.person_id := x_person_id;
66 new_references.transaction_id := x_transaction_id;
67 new_references.fee_type := x_fee_type;
68 new_references.fee_cal_type := x_fee_cal_type;
69 new_references.fee_ci_sequence_number := x_fee_ci_sequence_number;
70 new_references.fee_cat := x_fee_cat;
71 new_references.s_transaction_type := x_s_transaction_type;
72 new_references.transaction_dt := x_transaction_dt;
73 new_references.transaction_amount := x_transaction_amount;
74 new_references.currency_cd := x_currency_cd;
75 new_references.exchange_rate := x_exchange_rate;
76 new_references.chg_elements := x_chg_elements;
77 new_references.effective_dt := x_effective_dt;
78 new_references.course_cd := x_course_cd;
79 new_references.notification_dt := x_notification_dt;
80 new_references.logical_delete_dt := x_logical_delete_dt;
81 new_references.comments := x_comments;
82 new_references.org_id := x_org_id;
83 IF (p_action = 'UPDATE') THEN
84 new_references.creation_date := old_references.creation_date;
85 new_references.created_by := old_references.created_by;
86 ELSE
87 new_references.creation_date := x_creation_date;
88 new_references.created_by := x_created_by;
89 END IF;
90 new_references.last_update_date := x_last_update_date;
91 new_references.last_updated_by := x_last_updated_by;
92 new_references.last_update_login := x_last_update_login;
93 END Set_Column_Values;
94 -- Trigger description :-
95 -- "OSS_TST".trg_fas_br_iud
96 -- BEFORE INSERT OR DELETE OR UPDATE
97 -- ON IGS_FI_FEE_AS_ALL
98 -- FOR EACH ROW
99 PROCEDURE BeforeRowInsertUpdateDelete1(
100 p_inserting IN BOOLEAN ,
101 p_updating IN BOOLEAN ,
102 p_deleting IN BOOLEAN
103 ) AS
104 /*************************************************************
105 Created By :
106 Date Created By :
107 Purpose :
108 Know limitations, enhancements or remarks
109 Change History
110 Who When What
111 masehgal , IDC 10-JAN-2002 Enh # 2170429
112 Obsoletion of SPONSOR_CD
113 SCHODAVA 28-NOV-2001 Enh # 2122257
114 (SFCR015 : Change In Fee Category)
115 Changed the call to
116 IGS_FI_VAL_FAS.finp_val_fas_ass_ind function.
117 Added the params fee_cal_type
118 and fee_ci_sequence_number
119 (reverse chronological order - newest change first)
120 ***************************************************************/
121 v_message_name varchar2(30);
122
123 CURSOR c_sft IS
124 SELECT 'x'
125 FROM igs_fi_fee_type fft
126 WHERE fft.s_fee_type = 'EXTERNAL'
127 AND fft.fee_type = 'x_fee_type';
128
129 BEGIN
130 -- Validate Fee Assessment can be created.
131 /* IF p_inserting THEN
132 -- Validate current date not greater than Retrospective assessment period.
133 IF IGS_FI_VAL_FAS.finp_val_fas_retro (
134 new_references.fee_type,
135 new_references.fee_cal_type,
136 new_references.fee_ci_sequence_number,
137 new_references.fee_cat,
138 v_message_name) = FALSE THEN
139 Fnd_Message.Set_Name('IGS',v_message_name);
140 IGS_GE_MSG_STACK.ADD;
141 App_Exception.Raise_Exception;
142 END IF;
143 END IF; */
144 -- Validate that appropriate fields are set depending on the fee type.
145 IF p_inserting OR
146 (p_updating AND (new_references.course_cd <> old_references.course_cd OR
147 new_references.fee_cat <> old_references.fee_cat)) THEN
148 -- Validate that IGS_PS_COURSE code can be specified.
149 IF IGS_FI_VAL_FAS.finp_val_fas_create (
150 new_references.fee_type,
151 new_references.fee_cat,
152 new_references.course_cd,
153 v_message_name) = FALSE THEN
154 Fnd_Message.Set_Name('IGS',v_message_name);
155 IGS_GE_MSG_STACK.ADD;
156 App_Exception.Raise_Exception;
157 END IF;
158 -- Validate that course code can be specified.
159 -- Enh # 2122257 (SFCR015 : Change In Fee Category)
160 -- Changed the call to this function.
161 -- Added params fee_cal_type and fee_ci_sequence_number
162 IF IGS_FI_VAL_FAS.finp_val_fas_ass_ind (
163 new_references.person_id,
164 new_references.course_cd,
165 new_references.fee_cat,
166 new_references.effective_dt,
167 new_references.s_transaction_type,
168 new_references.fee_cal_type,
169 new_references.fee_ci_sequence_number,
170 v_message_name) = FALSE THEN
171 Fnd_Message.Set_Name('IGS',v_message_name);
172 IGS_GE_MSG_STACK.ADD;
173 App_Exception.Raise_Exception;
174 END IF;
175 END IF;
176 -- Validate effective date.
177 -- Only for fee types other than 'EXTERNAL' SYSTEM FEE TYPE
178 OPEN c_sft;
179 IF c_sft%FOUND THEN
180 CLOSE c_sft;
181 ELSIF c_sft%NOTFOUND THEN
182 CLOSE c_sft;
183 IF p_inserting OR
184 (new_references.effective_dt <> old_references.effective_dt) THEN
185 IF IGS_FI_VAL_FAS.finp_val_fas_eff_dt (
186 new_references.fee_type,
187 new_references.fee_cal_type,
188 new_references.fee_ci_sequence_number,
189 new_references.fee_cat,
190 new_references.effective_dt,
191 new_references.s_transaction_type,
192 v_message_name) = FALSE THEN
193 Fnd_Message.Set_Name('IGS',v_message_name);
194 IGS_GE_MSG_STACK.ADD;
195 App_Exception.Raise_Exception;
196 END IF;
197 END IF;
198 END IF; -- For External System Fee Type NOT FOUND
199 IF p_inserting OR p_updating THEN
200 -- Validate that course code is fee assessable for manual entries.
201 IF IGS_FI_VAL_FAS.finp_val_fas_com (
202 new_references.s_transaction_type,
203 new_references.comments,
204 v_message_name) = FALSE THEN
205 Fnd_Message.Set_Name('IGS',v_message_name);
206 IGS_GE_MSG_STACK.ADD;
207 App_Exception.Raise_Exception;
208 END IF;
209 END IF;
210 IF p_updating THEN
211 -- Validate the columns being changed are allowed to be
212 IF IGS_FI_VAL_FAS.finp_val_fas_upd (
213 new_references.person_id,
214 old_references.person_id,
215 new_references.transaction_id,
216 old_references.transaction_id,
217 new_references.fee_type,
218 old_references.fee_type,
219 new_references.fee_cal_type,
220 old_references.fee_cal_type,
221 new_references.fee_ci_sequence_number,
222 old_references.fee_ci_sequence_number,
223 new_references.fee_cat,
224 old_references.fee_cat,
225 new_references.s_transaction_type,
226 old_references.s_transaction_type,
227 new_references.transaction_dt,
228 old_references.transaction_dt,
229 new_references.transaction_amount,
230 old_references.transaction_amount,
231 new_references.currency_cd,
232 old_references.currency_cd,
233 new_references.exchange_rate,
234 old_references.exchange_rate,
235 new_references.chg_elements,
236 old_references.chg_elements,
237 new_references.effective_dt,
238 old_references.effective_dt,
239 new_references.course_cd,
240 old_references.course_cd,
241 new_references.notification_dt,
242 old_references.notification_dt,
243 new_references.logical_delete_dt,
244 old_references.logical_delete_dt,
245 v_message_name) = FALSE THEN
246 Fnd_Message.Set_Name('IGS',v_message_name);
247 IGS_GE_MSG_STACK.ADD;
248 App_Exception.Raise_Exception;
249 END IF;
250 END IF;
251 END BeforeRowInsertUpdateDelete1;
252
253 PROCEDURE Check_Uniqueness AS
254 Begin
255 IF Get_UK_For_Validation (
256 new_references.transaction_id
257 ) THEN
258 Fnd_Message.Set_Name ('IGS', 'IGS_GE_MULTI_ORG_DUP_REC');
259 IGS_GE_MSG_STACK.ADD;
260 App_Exception.Raise_Exception;
261 END IF;
262 End Check_Uniqueness;
263
264 PROCEDURE Check_Constraints (
265 Column_Name IN VARCHAR2,
266 Column_Value IN VARCHAR2
267 ) AS
268 /*----------------------------------------------------------------------------
269 || Created By :
270 || Created On :
271 || Purpose :
272 || Known limitations, enhancements or remarks :
273 || Change History :
274 || Who When What
275 || (reverse chronological order - newest change first)
276 || vvutukur 30-Aug-2002 Bug#2531390. Removed default values of parameters column_name,
277 || column_value to avoid gscc warnings.
278 || vvutukur 17-May-2002 removed upper check on fee_type,fee_cat columns.bug#2344826.
279 ----------------------------------------------------------------------------*/
280 BEGIN
281 IF column_name is null then
282 NULL;
283 ELSIF upper(Column_name) = 'TRANSACTION_ID' then
284 new_references.transaction_id := igs_ge_number.to_num(column_value);
285 ELSIF upper(Column_name) = 'COURSE_CD' then
286 new_references.course_cd := column_value;
287 ELSIF upper(Column_name) = 'CURRENCY_CD' then
288 new_references.currency_cd := column_value;
289 ELSIF upper(Column_name) = 'FEE_CAL_TYPE' then
290 new_references.fee_cal_type := column_value;
291 ELSIF upper(Column_name) = 'S_TRANSACTION_TYPE' then
292 new_references.s_transaction_type := column_value;
293 ELSIF upper(Column_name) = 'CHG_ELEMENTS' then
294 new_references.chg_elements := igs_ge_number.to_num(column_value);
295 ELSIF upper(Column_name) = 'EXCHANGE_RATE' then
296 new_references.exchange_rate := igs_ge_number.to_num(column_value);
297 ELSIF upper(Column_name) = 'TRANSACTION_AMOUNT' then
298 new_references.transaction_amount := igs_ge_number.to_num(column_value);
299 ELSIF upper(Column_name) = 'FEE_CI_SEQUENCE_NUMBER' then
300 new_references.fee_ci_sequence_number := igs_ge_number.to_num(column_value);
301 End if;
302
303 IF upper(column_name) = 'COURSE_CD' OR
304 column_name is null Then
305 IF new_references.COURSE_CD <>
306 UPPER(new_references.COURSE_CD) Then
307 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
308 IGS_GE_MSG_STACK.ADD;
309 App_Exception.Raise_Exception;
310 END IF;
311 END IF;
312 IF upper(column_name) = 'CURRENCY_CD' OR
313 column_name is null Then
314 IF new_references.CURRENCY_CD <>
315 UPPER(new_references.CURRENCY_CD) Then
316 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
317 IGS_GE_MSG_STACK.ADD;
318 App_Exception.Raise_Exception;
319 END IF;
320 END IF;
321 IF upper(column_name) = 'FEE_CAL_TYPE' OR
322 column_name is null Then
323 IF new_references.FEE_CAL_TYPE <>
324 UPPER(new_references.FEE_CAL_TYPE) Then
325 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
326 IGS_GE_MSG_STACK.ADD;
327 App_Exception.Raise_Exception;
328 END IF;
329 END IF;
330 IF upper(column_name) = 'S_TRANSACTION_TYPE' OR
331 column_name is null Then
332 IF new_references.S_TRANSACTION_TYPE <>
333 UPPER(new_references.S_TRANSACTION_TYPE) Then
334 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
335 IGS_GE_MSG_STACK.ADD;
336 App_Exception.Raise_Exception;
337 END IF;
338 END IF;
339
340 IF upper(column_name) = 'TRANSACTION_ID' OR
341 column_name is null Then
342 IF new_references.transaction_id < 1 OR
343 new_references.transaction_id > 999999 Then
344 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
345 IGS_GE_MSG_STACK.ADD;
346 App_Exception.Raise_Exception;
347 END IF;
348 END IF;
349 IF upper(column_name) = 'CHG_ELEMENTS' OR
350 column_name is null Then
351 IF new_references.chg_elements < 0 OR
352 new_references.chg_elements > 9999.999 Then
353 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
354 IGS_GE_MSG_STACK.ADD;
355 App_Exception.Raise_Exception;
356 END IF;
357 END IF;
358 IF upper(column_name) = 'EXCHANGE_RATE' OR
359 column_name is null Then
360 IF new_references.exchange_rate < 0.0001 OR
361 new_references.exchange_rate > 9999.9999 Then
362 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
363 IGS_GE_MSG_STACK.ADD;
364 App_Exception.Raise_Exception;
365 END IF;
366 END IF;
367 IF upper(column_name) = 'TRANSACTION_AMOUNT' OR
368 column_name is null Then
369 IF new_references.transaction_amount < -999990.00 OR
370 new_references.transaction_amount > 999990.00 Then
371 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
372 IGS_GE_MSG_STACK.ADD;
373 App_Exception.Raise_Exception;
374 END IF;
375 END IF;
376 IF upper(column_name) = 'FEE_CI_SEQUENCE_NUMBER' OR
377 column_name is null Then
378 IF new_references.fee_ci_sequence_number < 1 OR
379 new_references.fee_ci_sequence_number > 999999 Then
380 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
381 IGS_GE_MSG_STACK.ADD;
382 App_Exception.Raise_Exception;
383 END IF;
384 END IF;
385 END Check_CONSTRAINTS;
386
387 PROCEDURE Check_Child_Existance AS
388 BEGIN
389 IGS_FI_FEE_AS_ITEMS_PKG.GET_FK_IGS_FI_FEE_AS (
390 old_references.person_id,
391 old_references.transaction_id);
392
393 END Check_Child_Existance;
394
395
396 PROCEDURE check_parent_existance AS
397 ------------------------------------------------------------------
398 --Known limitations/enhancements and/or remarks:
399 --
400 --Change History:
401 --Who When What
402 --smadathi 06-Nov-2002 Enh. Bug 2584986. removed igs_fi_cur_pkg.get_pk_for_validation
403 -------------------------------------------------------------------
404 BEGIN
405 IF (((old_references.course_cd = new_references.course_cd)) OR
406 ((new_references.course_cd IS NULL))) THEN
407 NULL;
408 ELSE
409 IF NOT IGS_PS_COURSE_PKG.Get_PK_For_Validation (
410 new_references.course_cd
411 ) THEN
412 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
413 IGS_GE_MSG_STACK.ADD;
414 App_Exception.Raise_Exception;
415 END IF;
416 END IF;
417
418 IF (((old_references.fee_cat = new_references.fee_cat) AND
419 (old_references.fee_cal_type = new_references.fee_cal_type) AND
420 (old_references.fee_ci_sequence_number = new_references.fee_ci_sequence_number) AND
421 (old_references.fee_type = new_references.fee_type)) OR
422 ((new_references.fee_cat IS NULL) OR
423 (new_references.fee_cal_type IS NULL) OR
424 (new_references.fee_ci_sequence_number IS NULL) OR
425 (new_references.fee_type IS NULL))) THEN
426 NULL;
427 ELSE
428 IF NOT IGS_FI_F_CAT_FEE_LBL_PKG.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 ) THEN
434 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
435 IGS_GE_MSG_STACK.ADD;
436 App_Exception.Raise_Exception;
437 END IF;
438 END IF;
439 IF (((old_references.fee_type = new_references.fee_type) AND
440 (old_references.fee_cal_type = new_references.fee_cal_type) AND
441 (old_references.fee_ci_sequence_number = new_references.fee_ci_sequence_number)) OR
442 ((new_references.fee_type IS NULL) OR
443 (new_references.fee_cal_type IS NULL) OR
444 (new_references.fee_ci_sequence_number IS NULL))) THEN
445 NULL;
446 ELSE
447 IF NOT IGS_FI_F_TYP_CA_INST_PKG.Get_PK_For_Validation (
448 new_references.fee_type,
449 new_references.fee_cal_type,
450 new_references.fee_ci_sequence_number
451 ) THEN
452 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
453 IGS_GE_MSG_STACK.ADD;
454 App_Exception.Raise_Exception;
455 END IF;
456 END IF;
457 IF (((old_references.person_id = new_references.person_id)) OR
458 ((new_references.person_id IS NULL))) THEN
459 NULL;
460 ELSE
461 IF NOT IGS_PE_PERSON_PKG.Get_PK_For_Validation (
462 new_references.person_id
463 ) THEN
464 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
465 IGS_GE_MSG_STACK.ADD;
466 App_Exception.Raise_Exception;
467 END IF;
468 END IF;
469 IF (((old_references.s_transaction_type = new_references.s_transaction_type)) OR
470 ((new_references.s_transaction_type IS NULL))) THEN
471 NULL;
472 ELSE
473 IF NOT IGS_LOOKUPS_VIEW_PKG.Get_PK_For_Validation (
474 'TRANSACTION_TYPE',
475 new_references.s_transaction_type
476 ) THEN
477 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
478 IGS_GE_MSG_STACK.ADD;
479 App_Exception.Raise_Exception;
480 END IF;
481 END IF;
482 END check_parent_existance;
483
484 --removed local procedure check_uk_child_existance. Bug#2531390.
485
486 Function Get_PK_For_Validation (
487 x_person_id IN NUMBER,
488 x_transaction_id IN NUMBER
489 ) Return Boolean
490 AS
491 CURSOR cur_rowid IS
492 SELECT rowid
493 FROM IGS_FI_FEE_AS_ALL
494 WHERE person_id = x_person_id
495 AND transaction_id = x_transaction_id
496 FOR UPDATE NOWAIT;
497 lv_rowid cur_rowid%RowType;
498 BEGIN
499 Open cur_rowid;
500 Fetch cur_rowid INTO lv_rowid;
501 IF (cur_rowid%FOUND) THEN
502 Close cur_rowid;
503 Return (TRUE);
504 ELSE
505 Close cur_rowid;
506 Return (FALSE);
507 END IF;
508 END Get_PK_For_Validation;
509
510 FUNCTION Get_UK_For_Validation (
511 x_transaction_id IN NUMBER
512 ) RETURN BOOLEAN AS
513 CURSOR cur_rowid IS
514 SELECT rowid
515 FROM IGS_FI_FEE_AS_ALL
516 WHERE transaction_id = new_references.transaction_id
517 AND ((l_rowid IS NULL) OR (rowid <> l_rowid))
518 FOR UPDATE NOWAIT;
519 lv_rowid cur_rowid%RowType;
520 BEGIN
521 Open cur_rowid;
522 Fetch cur_rowid INTO lv_rowid;
523 IF (cur_rowid%FOUND) THEN
524 Close cur_rowid;
525 Return (TRUE);
526 ELSE
527 Close cur_rowid;
528 Return (FALSE);
529 END IF;
530 END Get_UK_For_Validation;
531
532 PROCEDURE GET_FK_IGS_PS_COURSE (
533 x_course_cd IN VARCHAR2
534 ) AS
535 CURSOR cur_rowid IS
536 SELECT rowid
537 FROM IGS_FI_FEE_AS_ALL
538 WHERE course_cd = x_course_cd ;
539 lv_rowid cur_rowid%RowType;
540 BEGIN
541 Open cur_rowid;
542 Fetch cur_rowid INTO lv_rowid;
543 IF (cur_rowid%FOUND) THEN
544 Close cur_rowid;
545 Fnd_Message.Set_Name ('IGS', 'IGS_FI_FAS_CRS_FK');
546 IGS_GE_MSG_STACK.ADD;
547 App_Exception.Raise_Exception;
548 Return;
549 END IF;
550 Close cur_rowid;
551 END GET_FK_IGS_PS_COURSE;
552
553
554 PROCEDURE GET_FK_IGS_PE_PERSON (
555 x_person_id IN NUMBER
556 ) AS
557 CURSOR cur_rowid IS
558 SELECT rowid
559 FROM IGS_FI_FEE_AS_ALL
560 WHERE person_id = x_person_id ;
561 lv_rowid cur_rowid%RowType;
562 BEGIN
563 Open cur_rowid;
564 Fetch cur_rowid INTO lv_rowid;
565 IF (cur_rowid%FOUND) THEN
566 Close cur_rowid;
567 Fnd_Message.Set_Name ('IGS', 'IGS_FI_FAS_PE_FK');
568 IGS_GE_MSG_STACK.ADD;
569 App_Exception.Raise_Exception;
570 Return;
571 END IF;
572 Close cur_rowid;
573 END GET_FK_IGS_PE_PERSON;
574
575 PROCEDURE GET_FK_IGS_LOOKUPS_VIEW(
576 x_s_transaction_type IN VARCHAR2
577 ) AS
578 CURSOR cur_rowid IS
579 SELECT rowid
580 FROM IGS_FI_FEE_AS_ALL
581 WHERE s_transaction_type = x_s_transaction_type ;
582 lv_rowid cur_rowid%RowType;
583 BEGIN
584 Open cur_rowid;
585 Fetch cur_rowid INTO lv_rowid;
586 IF (cur_rowid%FOUND) THEN
587 Close cur_rowid;
588 Fnd_Message.Set_Name ('IGS', 'IGS_FI_FAS_STRTY_FK');
589 IGS_GE_MSG_STACK.ADD;
590 App_Exception.Raise_Exception;
591 Return;
592 END IF;
593 Close cur_rowid;
594 END GET_FK_IGS_LOOKUPS_VIEW;
595
596 PROCEDURE Before_DML (
597 p_action IN VARCHAR2,
598 x_rowid IN VARCHAR2,
599 x_person_id IN NUMBER,
600 x_transaction_id IN NUMBER,
601 x_fee_type IN VARCHAR2,
602 x_fee_cal_type IN VARCHAR2,
603 x_fee_ci_sequence_number IN NUMBER,
604 x_fee_cat IN VARCHAR2,
605 x_s_transaction_type IN VARCHAR2,
606 x_transaction_dt IN DATE,
607 x_transaction_amount IN NUMBER,
608 x_currency_cd IN VARCHAR2,
609 x_exchange_rate IN NUMBER,
610 x_chg_elements IN NUMBER,
611 x_effective_dt IN DATE,
612 x_course_cd IN VARCHAR2,
613 x_notification_dt IN DATE,
614 x_logical_delete_dt IN DATE,
615 x_comments IN VARCHAR2,
616 x_org_id IN NUMBER,
617 x_creation_date IN DATE,
618 x_created_by IN NUMBER,
619 x_last_update_date IN DATE,
620 x_last_updated_by IN NUMBER,
621 x_last_update_login IN NUMBER
622 ) AS
623 /*----------------------------------------------------------------------------
624 || Created By :
625 || Created On :
626 || Purpose :
627 || Known limitations, enhancements or remarks :
628 || Change History :
629 || Who When What
630 || (reverse chronological order - newest change first)
631 || smvk 02-Sep-2002 Modified the call to beforerowinsertupdatedelete1 procedure as per apps standards.
632 || As a part of Build SFCR005_Cleanup_Build (Enhancement Bug # 2531390)
633 || vvutukur 30-Aug-2002 Bug#2531390.Removed calls to check_uk_child_existance local procedure
634 || as this procedure is removed as part of this bugfix.Also removed default
635 || null from before_dml procedure parameters to avoid gscc warnings.
636 ----------------------------------------------------------------------------*/
637 BEGIN
638 Set_Column_Values (
639 p_action,
640 x_rowid,
641 x_person_id,
642 x_transaction_id,
643 x_fee_type,
644 x_fee_cal_type,
645 x_fee_ci_sequence_number,
646 x_fee_cat,
647 x_s_transaction_type,
648 x_transaction_dt,
649 x_transaction_amount,
650 x_currency_cd,
651 x_exchange_rate,
652 x_chg_elements,
653 x_effective_dt,
654 x_course_cd,
655 x_notification_dt,
656 x_logical_delete_dt,
657 x_comments,
658 x_org_id,
659 x_creation_date,
660 x_created_by,
661 x_last_update_date,
662 x_last_updated_by,
663 x_last_update_login
664 );
665 IF (p_action = 'INSERT') THEN
666 -- Call all the procedures related to Before Insert.
667 BeforeRowInsertUpdateDelete1 (p_inserting => TRUE , p_updating =>FALSE , p_deleting =>FALSE);
668 IF Get_PK_For_Validation (
669 new_references.person_id ,
670 new_references.transaction_id
671 ) THEN
672 Fnd_Message.Set_Name ('IGS', 'IGS_GE_MULTI_ORG_DUP_REC');
673 IGS_GE_MSG_STACK.ADD;
674 App_Exception.Raise_Exception;
675 END IF;
676 Check_Constraints;
677 Check_Uniqueness;
678 Check_Parent_Existance;
679 ELSIF (p_action = 'UPDATE') THEN
680 -- Call all the procedures related to Before Update.
681 BeforeRowInsertUpdateDelete1 (p_inserting => FALSE, p_updating => TRUE, p_deleting =>FALSE);
682 Check_Constraints;
683 Check_Uniqueness;
684 Check_Parent_Existance;
685
686 ELSIF (p_action = 'DELETE') THEN
687 -- Call all the procedures related to Before Delete.
688 Check_Child_Existance;
689 BeforeRowInsertUpdateDelete1 (p_inserting => FALSE, p_updating => FALSE, p_deleting => TRUE);
690 ELSIF (p_action = 'VALIDATE_INSERT') THEN
691 IF Get_PK_For_Validation (
692 new_references.person_id ,
693 new_references.transaction_id
694 ) THEN
695 Fnd_Message.Set_Name ('IGS', 'IGS_GE_MULTI_ORG_DUP_REC');
696 IGS_GE_MSG_STACK.ADD;
697 App_Exception.Raise_Exception;
698 END IF;
699 Check_Constraints;
700 Check_Uniqueness;
701 ELSIF (p_action = 'VALIDATE_UPDATE') THEN
702 Check_Constraints;
703 Check_Uniqueness;
704 ELSIF (p_action = 'VALIDATE_DELETE') THEN
705 Check_Child_Existance;
706
707 END IF;
708 END Before_DML;
709
710 /****************ADDED BY SYAM ON 21_DEC_2000***************/
711
712 PROCEDURE After_DML (
713 p_action IN VARCHAR2,
714 x_rowid IN VARCHAR2
715 ) IS
716 /*************************************************************
717 Created By :
718 Date Created By :
719 Purpose :
720 Know limitations, enhancements or remarks
721 Change History
722 Who When What
723 masehgal 10-JAN-2002 Enh # 2170429
724 Obsoletion of SPONSOR_CD
725 (reverse chronological order - newest change first)
726 ***************************************************************/
727
728 BEGIN
729
730 l_rowid := x_rowid;
731
732 IF (p_action = 'INSERT') THEN
733 -- Call all the procedures related to After Insert.
734 Null;
735 ELSIF (p_action = 'UPDATE') THEN
736 -- Call all the procedures related to After Update.
737 Null;
738 ELSIF (p_action = 'DELETE') THEN
739 -- Call all the procedures related to After Delete.
740 Null;
741 END IF;
742
743 l_rowid := NULL;
744
745 END After_DML;
746
747 /****************ADDED BY SYAM ON 21_DEC_2000***************/
748 procedure INSERT_ROW (
749 X_ROWID in out NOCOPY VARCHAR2,
750 X_PERSON_ID in NUMBER,
751 X_TRANSACTION_ID in out NOCOPY NUMBER,
752 X_FEE_TYPE in VARCHAR2,
753 X_FEE_CAL_TYPE in VARCHAR2,
754 X_FEE_CI_SEQUENCE_NUMBER in NUMBER,
755 X_FEE_CAT in VARCHAR2,
756 X_S_TRANSACTION_TYPE in VARCHAR2,
757 X_TRANSACTION_DT in DATE,
758 X_TRANSACTION_AMOUNT in NUMBER,
759 X_CURRENCY_CD in VARCHAR2,
760 X_EXCHANGE_RATE in NUMBER,
761 X_CHG_ELEMENTS in NUMBER,
762 X_EFFECTIVE_DT in DATE,
763 X_COURSE_CD in VARCHAR2,
764 X_NOTIFICATION_DT in DATE,
765 X_LOGICAL_DELETE_DT in DATE,
766 X_COMMENTS in VARCHAR2,
767 x_org_id IN NUMBER,
768 X_MODE in VARCHAR2
769 ) AS
770 /*----------------------------------------------------------------------------
771 || Created By :
772 || Created On :
773 || Purpose :
774 || Known limitations, enhancements or remarks :
775 || Change History :
776 || Who When What
777 || (reverse chronological order - newest change first)
778 || vvutukur 30-Aug-2002 Bug#2531390.Removed default value of x_mode parameter to avoid gscc
779 || warnings.
780 ----------------------------------------------------------------------------*/
781 cursor C is select ROWID from IGS_FI_FEE_AS_ALL
782 where PERSON_ID = X_PERSON_ID
783 and TRANSACTION_ID = X_TRANSACTION_ID;
784 X_LAST_UPDATE_DATE DATE;
785 X_LAST_UPDATED_BY NUMBER;
786 X_LAST_UPDATE_LOGIN NUMBER;
787 X_REQUEST_ID NUMBER;
788 X_PROGRAM_ID NUMBER;
789 X_PROGRAM_APPLICATION_ID NUMBER;
790 X_PROGRAM_UPDATE_DATE DATE;
791 begin
792 X_LAST_UPDATE_DATE := SYSDATE;
793 if(X_MODE = 'I') then
794 X_LAST_UPDATED_BY := 1;
795 X_LAST_UPDATE_LOGIN := 0;
796 elsif (X_MODE = 'R') then
797 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
798 if X_LAST_UPDATED_BY is NULL then
799 X_LAST_UPDATED_BY := -1;
800 end if;
801 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
802 if X_LAST_UPDATE_LOGIN is NULL then
803 X_LAST_UPDATE_LOGIN := -1;
804 end if;
805 X_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
806 X_PROGRAM_ID := FND_GLOBAL.CONC_PROGRAM_ID;
807 X_PROGRAM_APPLICATION_ID := FND_GLOBAL.PROG_APPL_ID;
808 if (X_REQUEST_ID = -1) then
809 X_REQUEST_ID := NULL;
810 X_PROGRAM_ID := NULL;
811 X_PROGRAM_APPLICATION_ID := NULL;
812 X_PROGRAM_UPDATE_DATE := NULL;
813 else
814 X_PROGRAM_UPDATE_DATE := SYSDATE;
815 end if;
816 else
817 FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
818 IGS_GE_MSG_STACK.ADD;
819 app_exception.raise_exception;
820 end if;
821 ---added by syam on 23-aug-2000
822 SELECT igs_fi_fee_as_trn_id_s.nextval
823 INTO x_transaction_id
824 FROM DUAL;
825 ---added by syam on 23-aug-2000
826
827 Before_DML(
828 p_action => 'INSERT',
829 x_rowid => x_rowid,
830 x_person_id => x_person_id,
831 x_transaction_id => x_transaction_id,
832 x_fee_type => x_fee_type,
833 x_fee_cal_type => x_fee_cal_type,
834 x_fee_ci_sequence_number => x_fee_ci_sequence_number,
835 x_fee_cat => x_fee_cat,
836 x_s_transaction_type => x_s_transaction_type,
837 x_transaction_dt => x_transaction_dt,
838 x_transaction_amount => x_transaction_amount,
839 x_currency_cd => x_currency_cd,
840 x_exchange_rate => x_exchange_rate,
841 x_chg_elements => x_chg_elements,
842 x_effective_dt => x_effective_dt,
843 x_course_cd => x_course_cd,
844 x_notification_dt => x_notification_dt,
845 x_logical_delete_dt => x_logical_delete_dt,
846 x_comments => x_comments,
847 x_org_id => igs_ge_gen_003.get_org_id,
848 x_creation_date => X_LAST_UPDATE_DATE,
849 x_created_by => X_LAST_UPDATED_BY,
850 x_last_update_date => X_LAST_UPDATE_DATE,
851 x_last_updated_by => X_LAST_UPDATED_BY,
852 x_last_update_login => X_LAST_UPDATE_LOGIN
853 );
854 insert into IGS_FI_FEE_AS_ALL (
855 PERSON_ID,
856 TRANSACTION_ID,
857 FEE_TYPE,
858 FEE_CAL_TYPE,
859 FEE_CI_SEQUENCE_NUMBER,
860 FEE_CAT,
861 S_TRANSACTION_TYPE,
862 TRANSACTION_DT,
863 TRANSACTION_AMOUNT,
864 CURRENCY_CD,
865 EXCHANGE_RATE,
866 CHG_ELEMENTS,
867 EFFECTIVE_DT,
868 COURSE_CD,
869 NOTIFICATION_DT,
870 LOGICAL_DELETE_DT,
871 COMMENTS,
872 ORG_ID,
873 CREATION_DATE,
874 CREATED_BY,
875 LAST_UPDATE_DATE,
876 LAST_UPDATED_BY,
877 LAST_UPDATE_LOGIN,
878 REQUEST_ID,
879 PROGRAM_ID,
880 PROGRAM_APPLICATION_ID,
881 PROGRAM_UPDATE_DATE
882 ) values (
883 NEW_REFERENCES.PERSON_ID,
884 NEW_REFERENCES.TRANSACTION_ID,
885 NEW_REFERENCES.FEE_TYPE,
886 NEW_REFERENCES.FEE_CAL_TYPE,
887 NEW_REFERENCES.FEE_CI_SEQUENCE_NUMBER,
888 NEW_REFERENCES.FEE_CAT,
889 NEW_REFERENCES.S_TRANSACTION_TYPE,
890 NEW_REFERENCES.TRANSACTION_DT,
891 NEW_REFERENCES.TRANSACTION_AMOUNT,
892 NEW_REFERENCES.CURRENCY_CD,
893 NEW_REFERENCES.EXCHANGE_RATE,
894 NEW_REFERENCES.CHG_ELEMENTS,
895 NEW_REFERENCES.EFFECTIVE_DT,
896 NEW_REFERENCES.COURSE_CD,
897 NEW_REFERENCES.NOTIFICATION_DT,
898 NEW_REFERENCES.LOGICAL_DELETE_DT,
899 NEW_REFERENCES.COMMENTS,
900 NEW_REFERENCES.ORG_ID,
901 X_LAST_UPDATE_DATE,
902 X_LAST_UPDATED_BY,
903 X_LAST_UPDATE_DATE,
904 X_LAST_UPDATED_BY,
905 X_LAST_UPDATE_LOGIN,
906 X_REQUEST_ID,
907 X_PROGRAM_ID,
908 X_PROGRAM_APPLICATION_ID,
909 X_PROGRAM_UPDATE_DATE
910 );
911 open c;
912 fetch c into X_ROWID;
913 if (c%notfound) then
914 close c;
915 raise no_data_found;
916 end if;
917 close c;
918 /****************ADDED BY SYAM ON 21_DEC_2000***************/
919 After_DML (
920 p_action => 'INSERT' ,
921 x_rowid => X_ROWID );
922 /****************ADDED BY SYAM ON 21_DEC_2000***************/
923 end INSERT_ROW;
924 procedure LOCK_ROW (
925 X_ROWID in VARCHAR2,
926 X_PERSON_ID in NUMBER,
927 X_TRANSACTION_ID in NUMBER,
928 X_FEE_TYPE in VARCHAR2,
929 X_FEE_CAL_TYPE in VARCHAR2,
930 X_FEE_CI_SEQUENCE_NUMBER in NUMBER,
931 X_FEE_CAT in VARCHAR2,
932 X_S_TRANSACTION_TYPE in VARCHAR2,
933 X_TRANSACTION_DT in DATE,
934 X_TRANSACTION_AMOUNT in NUMBER,
935 X_CURRENCY_CD in VARCHAR2,
936 X_EXCHANGE_RATE in NUMBER,
937 X_CHG_ELEMENTS in NUMBER,
938 X_EFFECTIVE_DT in DATE,
939 X_COURSE_CD in VARCHAR2,
940 X_NOTIFICATION_DT in DATE,
941 X_LOGICAL_DELETE_DT in DATE,
942 X_COMMENTS in VARCHAR2
943 ) AS
944 cursor c1 is select
945 FEE_TYPE,
946 FEE_CAL_TYPE,
947 FEE_CI_SEQUENCE_NUMBER,
948 FEE_CAT,
949 S_TRANSACTION_TYPE,
950 TRANSACTION_DT,
951 TRANSACTION_AMOUNT,
952 CURRENCY_CD,
953 EXCHANGE_RATE,
954 CHG_ELEMENTS,
955 EFFECTIVE_DT,
956 COURSE_CD,
957 NOTIFICATION_DT,
958 LOGICAL_DELETE_DT,
959 COMMENTS
960 from IGS_FI_FEE_AS_ALL
961 where ROWID = X_ROWID
962 for update nowait;
963 tlinfo c1%rowtype;
964 begin
965 open c1;
966 fetch c1 into tlinfo;
967 if (c1%notfound) then
968 close c1;
969 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
970 IGS_GE_MSG_STACK.ADD;
971 app_exception.raise_exception;
972 return;
973 end if;
974 close c1;
975 if (
976 ((tlinfo.FEE_TYPE = X_FEE_TYPE)
977 OR ((tlinfo.FEE_TYPE is null)
978 AND (X_FEE_TYPE is null)))
979 AND ((tlinfo.FEE_CAL_TYPE = X_FEE_CAL_TYPE)
980 OR ((tlinfo.FEE_CAL_TYPE is null)
981 AND (X_FEE_CAL_TYPE is null)))
982 AND ((tlinfo.FEE_CI_SEQUENCE_NUMBER = X_FEE_CI_SEQUENCE_NUMBER)
983 OR ((tlinfo.FEE_CI_SEQUENCE_NUMBER is null)
984 AND X_FEE_CI_SEQUENCE_NUMBER is null))
985 AND ( (tlinfo.FEE_CAT = X_FEE_CAT)
986 OR ( (tlinfo.FEE_CAT is null)
987 AND X_FEE_CAT is null ) )
988 AND ((tlinfo.S_TRANSACTION_TYPE = X_S_TRANSACTION_TYPE)
989 OR( (tlinfo.S_TRANSACTION_TYPE is null)
990 AND X_S_TRANSACTION_TYPE is null))
991 AND (( Trunc(tlinfo.TRANSACTION_DT) = trunc(X_TRANSACTION_DT) )
992 OR (( tlinfo.TRANSACTION_DT is null)
993 AND X_TRANSACTION_DT is null ))
994 AND ( (tlinfo.TRANSACTION_AMOUNT = X_TRANSACTION_AMOUNT)
995 OR( (tlinfo.TRANSACTION_AMOUNT is null)
996 AND
997 ( X_TRANSACTION_AMOUNT is null)
998 )
999 )
1000 AND ( (tlinfo.CURRENCY_CD = X_CURRENCY_CD)
1001 OR ( (tlinfo.CURRENCY_CD is null )
1002 AND
1003 (X_CURRENCY_CD is null)
1004 )
1005 )
1006 AND ( (tlinfo.EXCHANGE_RATE = X_EXCHANGE_RATE)
1007 OR( (tlinfo.EXCHANGE_RATE is null )
1008 AND
1009 (X_EXCHANGE_RATE is null )
1010 )
1011 )
1012 AND ((tlinfo.CHG_ELEMENTS = X_CHG_ELEMENTS)
1013 OR ((tlinfo.CHG_ELEMENTS is null)
1014 AND (X_CHG_ELEMENTS is null)))
1015 AND ((Trunc(tlinfo.EFFECTIVE_DT) = Trunc(X_EFFECTIVE_DT) )
1016 OR ((tlinfo.EFFECTIVE_DT is null)
1017 AND (X_EFFECTIVE_DT is null)))
1018 AND ((tlinfo.COURSE_CD = X_COURSE_CD)
1019 OR ((tlinfo.COURSE_CD is null)
1020 AND (X_COURSE_CD is null)))
1021 AND ((Trunc(tlinfo.NOTIFICATION_DT) = Trunc(X_NOTIFICATION_DT))
1022 OR ((tlinfo.NOTIFICATION_DT is null)
1023 AND (X_NOTIFICATION_DT is null)))
1024 AND ((tlinfo.LOGICAL_DELETE_DT = X_LOGICAL_DELETE_DT)
1025 OR ((tlinfo.LOGICAL_DELETE_DT is null)
1026 AND (X_LOGICAL_DELETE_DT is null)))
1027 AND ((tlinfo.COMMENTS = X_COMMENTS)
1028 OR ((tlinfo.COMMENTS is null)
1029 AND (X_COMMENTS is null)))
1030 ) then
1031 null;
1032 else
1033 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
1034 IGS_GE_MSG_STACK.ADD;
1035 app_exception.raise_exception;
1036 end if;
1037 return;
1038 end LOCK_ROW;
1039 procedure UPDATE_ROW (
1040 X_ROWID in VARCHAR2,
1041 X_PERSON_ID in NUMBER,
1042 X_TRANSACTION_ID in NUMBER,
1043 X_FEE_TYPE in VARCHAR2,
1044 X_FEE_CAL_TYPE in VARCHAR2,
1045 X_FEE_CI_SEQUENCE_NUMBER in NUMBER,
1046 X_FEE_CAT in VARCHAR2,
1047 X_S_TRANSACTION_TYPE in VARCHAR2,
1048 X_TRANSACTION_DT in DATE,
1049 X_TRANSACTION_AMOUNT in NUMBER,
1050 X_CURRENCY_CD in VARCHAR2,
1051 X_EXCHANGE_RATE in NUMBER,
1052 X_CHG_ELEMENTS in NUMBER,
1053 X_EFFECTIVE_DT in DATE,
1054 X_COURSE_CD in VARCHAR2,
1055 X_NOTIFICATION_DT in DATE,
1056 X_LOGICAL_DELETE_DT in DATE,
1057 X_COMMENTS in VARCHAR2,
1058 X_MODE in VARCHAR2
1059 ) AS
1060 /*----------------------------------------------------------------------------
1061 || Created By :
1062 || Created On :
1063 || Purpose :
1064 || Known limitations, enhancements or remarks :
1065 || Change History :
1066 || Who When What
1067 || (reverse chronological order - newest change first)
1068 || vvutukur 30-Aug-2002 Bug#2531390.Removed default value of x_mode parameter to avoid gscc
1069 || warnings.
1070 ----------------------------------------------------------------------------*/
1071
1072 X_LAST_UPDATE_DATE DATE;
1073 X_LAST_UPDATED_BY NUMBER;
1074 X_LAST_UPDATE_LOGIN NUMBER;
1075 X_REQUEST_ID NUMBER;
1076 X_PROGRAM_ID NUMBER;
1077 X_PROGRAM_APPLICATION_ID NUMBER;
1078 X_PROGRAM_UPDATE_DATE DATE;
1079 begin
1080 X_LAST_UPDATE_DATE := SYSDATE;
1081 if(X_MODE = 'I') then
1082 X_LAST_UPDATED_BY := 1;
1083 X_LAST_UPDATE_LOGIN := 0;
1084 elsif (X_MODE = 'R') then
1085 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
1086 if X_LAST_UPDATED_BY is NULL then
1087 X_LAST_UPDATED_BY := -1;
1088 end if;
1089 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
1090 if X_LAST_UPDATE_LOGIN is NULL then
1091 X_LAST_UPDATE_LOGIN := -1;
1092 end if;
1093 Before_DML(
1094 p_action => 'UPDATE',
1095 x_rowid => x_rowid,
1096 x_person_id => x_person_id,
1097 x_transaction_id => x_transaction_id,
1098 x_fee_type => x_fee_type,
1099 x_fee_cal_type => x_fee_cal_type,
1100 x_fee_ci_sequence_number => x_fee_ci_sequence_number,
1101 x_fee_cat => x_fee_cat,
1102 x_s_transaction_type => x_s_transaction_type,
1103 x_transaction_dt => x_transaction_dt,
1104 x_transaction_amount => x_transaction_amount,
1105 x_currency_cd => x_currency_cd,
1106 x_exchange_rate => x_exchange_rate,
1107 x_chg_elements => x_chg_elements,
1108 x_effective_dt => x_effective_dt,
1109 x_course_cd => x_course_cd,
1110 x_notification_dt => x_notification_dt,
1111 x_logical_delete_dt => x_logical_delete_dt,
1112 x_comments => x_comments,
1113 x_creation_date => X_LAST_UPDATE_DATE,
1114 x_created_by => X_LAST_UPDATED_BY,
1115 x_last_update_date => X_LAST_UPDATE_DATE,
1116 x_last_updated_by => X_LAST_UPDATED_BY,
1117 x_last_update_login => X_LAST_UPDATE_LOGIN
1118 );
1119 X_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
1120 X_PROGRAM_ID := FND_GLOBAL.CONC_PROGRAM_ID;
1121 X_PROGRAM_APPLICATION_ID := FND_GLOBAL.PROG_APPL_ID;
1122 if (X_REQUEST_ID = -1) then
1123 X_REQUEST_ID := OLD_REFERENCES.REQUEST_ID;
1124 X_PROGRAM_ID := OLD_REFERENCES.PROGRAM_ID;
1125 X_PROGRAM_APPLICATION_ID := OLD_REFERENCES.PROGRAM_APPLICATION_ID;
1126 X_PROGRAM_UPDATE_DATE := OLD_REFERENCES.PROGRAM_UPDATE_DATE;
1127 else
1128 X_PROGRAM_UPDATE_DATE := SYSDATE;
1129 end if;
1130 else
1131 FND_MESSAGE.SET_NAME('FND', 'SYSTEM-INVALID ARGS');
1132 IGS_GE_MSG_STACK.ADD;
1133 app_exception.raise_exception;
1134 end if;
1135 update IGS_FI_FEE_AS_ALL set
1136 FEE_TYPE = NEW_REFERENCES.FEE_TYPE,
1137 FEE_CAL_TYPE = NEW_REFERENCES.FEE_CAL_TYPE,
1138 FEE_CI_SEQUENCE_NUMBER = NEW_REFERENCES.FEE_CI_SEQUENCE_NUMBER,
1139 FEE_CAT = NEW_REFERENCES.FEE_CAT,
1140 S_TRANSACTION_TYPE = NEW_REFERENCES.S_TRANSACTION_TYPE,
1141 TRANSACTION_DT = NEW_REFERENCES.TRANSACTION_DT,
1142 TRANSACTION_AMOUNT = NEW_REFERENCES.TRANSACTION_AMOUNT,
1143 CURRENCY_CD = NEW_REFERENCES.CURRENCY_CD,
1144 EXCHANGE_RATE = NEW_REFERENCES.EXCHANGE_RATE,
1145 CHG_ELEMENTS = NEW_REFERENCES.CHG_ELEMENTS,
1146 EFFECTIVE_DT = NEW_REFERENCES.EFFECTIVE_DT,
1147 COURSE_CD = NEW_REFERENCES.COURSE_CD,
1148 NOTIFICATION_DT = NEW_REFERENCES.NOTIFICATION_DT,
1149 LOGICAL_DELETE_DT = NEW_REFERENCES.LOGICAL_DELETE_DT,
1150 COMMENTS = NEW_REFERENCES.COMMENTS,
1151 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
1152 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
1153 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
1154 REQUEST_ID = X_REQUEST_ID,
1155 PROGRAM_ID = X_PROGRAM_ID,
1156 PROGRAM_APPLICATION_ID = X_PROGRAM_APPLICATION_ID,
1157 PROGRAM_UPDATE_DATE = X_PROGRAM_UPDATE_DATE
1158 where ROWID = X_ROWID;
1159 if (sql%notfound) then
1160 raise no_data_found;
1161 end if;
1162
1163 /****************ADDED BY SYAM ON 21_DEC_2000***************/
1164 After_DML (
1165 p_action => 'UPDATE' ,
1166 x_rowid => X_ROWID
1167 );
1168 /****************ADDED BY SYAM ON 21_DEC_2000***************/
1169 end UPDATE_ROW;
1170 procedure ADD_ROW (
1171 X_ROWID in out NOCOPY VARCHAR2,
1172 X_PERSON_ID in NUMBER,
1173 X_TRANSACTION_ID in out NOCOPY NUMBER,
1174 X_FEE_TYPE in VARCHAR2,
1175 X_FEE_CAL_TYPE in VARCHAR2,
1176 X_FEE_CI_SEQUENCE_NUMBER in NUMBER,
1177 X_FEE_CAT in VARCHAR2,
1178 X_S_TRANSACTION_TYPE in VARCHAR2,
1179 X_TRANSACTION_DT in DATE,
1180 X_TRANSACTION_AMOUNT in NUMBER,
1181 X_CURRENCY_CD in VARCHAR2,
1182 X_EXCHANGE_RATE in NUMBER,
1183 X_CHG_ELEMENTS in NUMBER,
1184 X_EFFECTIVE_DT in DATE,
1185 X_COURSE_CD in VARCHAR2,
1186 X_NOTIFICATION_DT in DATE,
1187 X_LOGICAL_DELETE_DT in DATE,
1188 X_COMMENTS in VARCHAR2,
1189 X_MODE in VARCHAR2,
1190 X_ORG_ID in NUMBER
1191 ) AS
1192 /*----------------------------------------------------------------------------
1193 || Created By :
1194 || Created On :
1195 || Purpose :
1196 || Known limitations, enhancements or remarks :
1197 || Change History :
1198 || Who When What
1199 || (reverse chronological order - newest change first)
1200 || vvutukur 30-Aug-2002 Bug#2531390.Removed default value of x_mode parameter to avoid gscc
1201 || warnings.
1202 ----------------------------------------------------------------------------*/
1203
1204 cursor c1 is select rowid from IGS_FI_FEE_AS_ALL
1205 where PERSON_ID = X_PERSON_ID
1206 and TRANSACTION_ID = X_TRANSACTION_ID
1207 ;
1208 begin
1209 open c1;
1210 fetch c1 into X_ROWID;
1211 if (c1%notfound) then
1212 close c1;
1213 INSERT_ROW (
1214 X_ROWID,
1215 X_PERSON_ID,
1216 X_TRANSACTION_ID,
1217 X_FEE_TYPE,
1218 X_FEE_CAL_TYPE,
1219 X_FEE_CI_SEQUENCE_NUMBER,
1220 X_FEE_CAT,
1221 X_S_TRANSACTION_TYPE,
1222 X_TRANSACTION_DT,
1223 X_TRANSACTION_AMOUNT,
1224 X_CURRENCY_CD,
1225 X_EXCHANGE_RATE,
1226 X_CHG_ELEMENTS,
1227 X_EFFECTIVE_DT,
1228 X_COURSE_CD,
1229 X_NOTIFICATION_DT,
1230 X_LOGICAL_DELETE_DT,
1231 X_COMMENTS,
1232 X_MODE,
1233 X_ORG_ID);
1234 return;
1235 end if;
1236 close c1;
1237 UPDATE_ROW (
1238 X_ROWID,
1239 X_PERSON_ID,
1240 X_TRANSACTION_ID,
1241 X_FEE_TYPE,
1242 X_FEE_CAL_TYPE,
1243 X_FEE_CI_SEQUENCE_NUMBER,
1244 X_FEE_CAT,
1245 X_S_TRANSACTION_TYPE,
1246 X_TRANSACTION_DT,
1247 X_TRANSACTION_AMOUNT,
1248 X_CURRENCY_CD,
1249 X_EXCHANGE_RATE,
1250 X_CHG_ELEMENTS,
1251 X_EFFECTIVE_DT,
1252 X_COURSE_CD,
1253 X_NOTIFICATION_DT,
1254 X_LOGICAL_DELETE_DT,
1255 X_COMMENTS,
1256 X_MODE);
1257 end ADD_ROW;
1258 procedure DELETE_ROW (
1259 X_ROWID in VARCHAR2
1260 ) AS
1261 begin
1262 Before_DML (
1263 p_action => 'DELETE',
1264 x_rowid => X_ROWID
1265 );
1266 delete from IGS_FI_FEE_AS_ALL
1267 where ROWID = X_ROWID;
1268 if (sql%notfound) then
1269 raise no_data_found;
1270 end if;
1271 /****************ADDED BY SYAM ON 21_DEC_2000***************/
1272 After_DML (
1273 p_action => 'DELETE',
1274 x_rowid => X_ROWID
1275
1276 );
1277 /****************ADDED BY SYAM ON 21_DEC_2000***************/
1278 end DELETE_ROW;
1279 end IGS_FI_FEE_AS_PKG;