[Home] [Help]
PACKAGE BODY: APPS.IGF_AW_RULE
Source
1 PACKAGE BODY IGF_AW_RULE AS
2 /* $Header: IGFAW04B.pls 120.1 2006/02/08 23:39:01 ridas noship $ */
3 --
4 -- History :
5 -- ridas 29-Nov-04 Bug # 3021287 Skip the student if award is locked at the student level
6 --
7 -- svuppala 14-Oct-04 Bug # 3416936 Modified TBH call to addeded field
8 -- Eligible for Additional Unsubsidized Loans
9 -- ugummall 26-SEP-2003 FA 126 - Multiple FA Offices
10 -- added new parameter assoc_org_num to TBH call
11 -- igf_ap_fa_base_rec_pkg.update_row w.r.t. FA 126
12 --
13 --
14 -- Bug ID :2613546
15 -- adhawan 28-OCT-2002 The Run procedure has been modified with the new parameters
16 -- p_grp_code for Target Group assignment
17 -- p_pergrp_id for processing of all students belonging to the Person ID Group
18 -- p_base_id has been removed
19 -- The process RUN would be used for Assignment of Target Groups and not Cost of attendace groups
20 -- The process tgroup_rule has been modified to have p_pergrp_id instead of p_base_id and p_grp_code added
21 -- All the processing associated with the Rules has been obsoleted.
22
23 -- Bug ID : 1818617
24 -- who when what
25 --
26 -- masehgal 25-Sep-2002 FA 104 - To Do Enhancements
27 -- Added manual_disb_hold in FA Base update
28 ------------------------------------------------------------------------
29
30 -- sjadhav 24-jul-2001 added parameter p_get_recent_info
31 -- adhawan
32 -- 2313791 22-apr-2002 Added messages when the Group or the Cost of Attendance is assigned to the Student
33 -- | gvarapra 14-sep-2004 FA138 - ISIR Enhancements |
34 -- | Changed arguments in call to |
35 -- | IGF_AP_FA_BASE_RECORD_PKG. |
36 ------------------------------------------------------------------------
37 --
38
39
40 lv_get_recent_info VARCHAR2(10) := 'N';
41 l_ci_cal_type igf_aw_target_grp.cal_type%TYPE ;
42 l_ci_sequence_number igf_aw_target_grp.sequence_number%TYPE ;
43
44
45 --This process would assign the Award Group to the students for an award year or the students belonging to Person ID Group
46 PROCEDURE run ( errbuf OUT NOCOPY VARCHAR2,
47 retcode OUT NOCOPY NUMBER,
48 l_award_year IN VARCHAR2 ,
49 p_grp_code IN igf_aw_target_grp.group_cd%TYPE,
50 p_pergrp_id IN igs_pe_prsid_grp_mem_all.group_id%TYPE,
51 p_org_id IN NUMBER
52 )
53
54 IS
55 /*
56 || Created By : cdcruz
57 || Created On : 14-NOV-2000
58 || Purpose :
59 || Known limitations, enhancements or remarks :
60 || Change History :
61 || Who When What
62 || (reverse chronological order - newest change first)
63 */
64
65
66 --Cursor to find the User Parameter Award Year (which is same as Alternate Code) to display in the Log
67 CURSOR c_alternate_code(cp_ci_cal_type igs_ca_inst.cal_type%TYPE,
68 cp_ci_sequence_NUMBER igs_ca_inst.sequence_NUMBER%TYPE) IS
69 SELECT alternate_code
70 FROM igs_ca_inst
71 WHERE cal_type = cp_ci_cal_type AND
72 sequence_NUMBER = cp_ci_sequence_NUMBER;
73
74 CURSOR c_get_parameters IS
75 SELECT meaning, lookup_code FROM igf_lookups_view
76 WHERE lookup_type='IGF_GE_PARAMETERS' AND
77 lookup_code IN ('AWARD_YEAR','PERSON_ID_GROUP','PARAMETER_PASS');
78
79 --get person group description
80 CURSOR get_grp_desc(lp_per_id igs_pe_persid_group_all.group_id%TYPE) IS
81 SELECT description
82 FROM igs_pe_persid_group_all
83 WHERE group_id = lp_per_id;
84
85 lv_desc igs_pe_persid_group_all.description%TYPE;
86
87
88 parameter_rec c_get_parameters%ROWTYPE;
89 l_award_years igf_lookups_view.meaning%TYPE;
90 l1_person_number igf_lookups_view.meaning%TYPE;
91 l_run_types igf_lookups_view.meaning%TYPE;
92 l_para_pass igf_lookups_view.meaning%TYPE;
93 l_alternate_code igs_ca_inst.alternate_code%TYPE;
94
95 BEGIN
96
97 igf_aw_gen.set_org_id(p_org_id);
98
99 lv_get_recent_info := 'N';
100
101 --Get the Award Year
102 l_ci_cal_type := ltrim(rtrim(substr(l_award_year,1,10))) ;
103 l_ci_sequence_number := TO_NUMBER(substr(l_award_year,11)) ;
104
105 --Get the Alternate code for the award year
106 OPEN c_alternate_code(l_ci_cal_type,l_ci_sequence_NUMBER);
107 FETCH c_alternate_code INTO l_alternate_code;
108 CLOSE c_alternate_code;
109
110
111
112
113 --Preparing the variables for the Parameters passed
114 OPEN c_get_parameters;
115 LOOP
116 FETCH c_get_parameters INTO parameter_rec;
117 EXIT WHEN c_get_parameters%NOTFOUND;
118 IF parameter_rec.lookup_code ='AWARD_YEAR' THEN
119 l_award_years := parameter_rec.meaning;
120 ELSIF parameter_rec.lookup_code ='PERSON_ID_GROUP' THEN
121 l1_person_number := parameter_rec.meaning;
122 ELSIF parameter_rec.lookup_code ='PARAMETER_PASS' THEN
123 l_para_pass := parameter_rec.meaning;
124 END IF;
125 END LOOP;
126 CLOSE c_get_parameters;
127
128 --get group description
129 OPEN get_grp_desc(p_pergrp_id);
130 FETCH get_grp_desc INTO lv_desc;
131 CLOSE get_grp_desc;
132
133
134 /* Print the Parameters Passed */
135
136 FND_FILE.PUT_LINE(FND_FILE.LOG,' ');
137 FND_FILE.PUT_LINE(FND_FILE.LOG,l_para_pass);-- -----------Parameters Passed--------------
138 FND_FILE.PUT_LINE(FND_FILE.LOG,RPAD(l_award_years,35) || ' :'||l_alternate_code);
139 FND_FILE.PUT_LINE(FND_FILE.LOG,RPAD(igf_aw_gen.lookup_desc('IGF_GE_PARAMETERS','AWD_GRP'),35) || ' :'||p_grp_code);
140 FND_FILE.PUT_LINE(FND_FILE.LOG,RPAD(l1_person_number,35) || ' :'||lv_desc);
141 FND_FILE.PUT_LINE(FND_FILE.LOG,'');
142
143 FND_MESSAGE.SET_NAME('IGF','IGF_AW_PROC_AWD');
144 FND_MESSAGE.SET_TOKEN('AWD_YR',l_alternate_code);
145 FND_FILE.PUT_LINE(FND_FILE.LOG,FND_MESSAGE.GET);
146
147 tgroup_rule(l_ci_cal_type ,
148 l_ci_sequence_NUMBER ,
149 p_pergrp_id ,
150 p_grp_code) ;
151 END run;
152
153 PROCEDURE tgroup_rule( p_ci_cal_type in igf_aw_target_grp.cal_type%TYPE ,
154 p_ci_sequence_NUMBER in igf_aw_target_grp.sequence_number%TYPE,
155 p_pergrp_id in igs_pe_prsid_grp_mem_all.group_id%TYPE,
156 p_grp_code IN igf_aw_target_grp.group_cd%TYPE)
157
158 IS
159 /*
160 || Created By : cdcruz
161 || Created On : 14-NOV-2000
162 || Purpose :
163 || Known limitations, enhancements or remarks :
164 || Change History :
165 || Who When What
166 || (reverse chronological order - newest change first)
167 || ridas 08-FEB-2006 Bug #5021084. Added new parameter 'lv_group_type' in
168 || call to igf_ap_ss_pkg.get_pid
169 || rasahoo 17-NOV-2003 FA 128 - ISIR update 2004-05
170 || added new parameter award_fmly_contribution_type to
171 || igf_ap_fa_base_rec_pkg.update_row
172 || ugummall 26-SEP-2003 FA 126 - Multiple FA Offices
173 || added new parameter assoc_org_num to TBH call
174 || igf_ap_fa_base_rec_pkg.update_row w.r.t. FA 126
175 ||
176 || rasahoo 27-aug-2003 Removed the call to IGF_AP_OSS_PROCESS.GET_OSS_DETAILS
177 || as part of obsoletion of FA base record history
178 || masehgal 11-Nov-2002 FA 101 - SAP Obsoletion
179 || removed packaging hold
180 */
181 --Cursor to find the User Parameter Award Year (which is same as Alternate Code) to display in the Log
182 CURSOR c_alternate_code(cp_ci_cal_type igs_ca_inst.cal_type%TYPE,
183 cp_ci_sequence_NUMBER igs_ca_inst.sequence_NUMBER%TYPE) IS
184 SELECT alternate_code
185 FROM igs_ca_inst
186 WHERE cal_type = cp_ci_cal_type AND
187 sequence_NUMBER = cp_ci_sequence_NUMBER;
188 l_alternate_code igs_ca_inst.alternate_code%TYPE;
189
190 CURSOR c_year ( x_ci_cal_type igf_ap_fa_base_rec.ci_cal_type%type ,
191 x_ci_sequence_NUMBER igf_ap_fa_base_rec.ci_sequence_NUMBER%type )
192 IS
193 SELECT
194 fa.base_id ,
195 fa.person_id,
196 hz.party_number
197 FROM
198 igf_ap_fa_base_rec fa,
199 hz_parties hz
200 WHERE
201 fa.ci_cal_type = x_ci_cal_type AND
202 fa.ci_sequence_NUMBER = x_ci_sequence_NUMBER AND
203 hz.party_id = fa.person_id;
204
205 l_year c_year%rowtype ;
206
207 CURSOR c_rule_cd(cp_cal_type igf_aw_target_grp.cal_type%TYPE ,
208 cp_sequence_number igf_aw_target_grp.sequence_number%TYPE,
209 cp_group_cd igf_aw_target_grp.group_cd%TYPE)
210
211 IS
212 SELECT
213 tgrp.group_cd R_code
214 FROM
215 igf_aw_target_grp tgrp
216 WHERE cal_type =cp_cal_type AND
217 sequence_number =cp_sequence_number AND
218 group_cd = cp_group_cd;
219
220 l_rule_cd c_rule_cd%rowtype ;
221
222 CURSOR c_fabase ( x_base_id igf_ap_fa_base_rec.base_id%type )
223 IS
224 SELECT
225 fabase.*
226 FROM
227 igf_ap_fa_base_rec fabase
228 WHERE
229 fabase.base_id = x_base_id ;
230
231 --Cursor below retrieves all the person belonging to a person id group
232
233 /* Variables for the dynamic person id group */
234 lv_status VARCHAR2(1) := 'S'; /*Defaulted to 'S' and the function will return 'F' in case of failure */
235 lv_group_type igs_pe_persid_group_v.group_type%TYPE;
236 lv_sql_stmt VARCHAR(32767) := igf_ap_ss_pkg.get_pid(p_pergrp_id,lv_status,lv_group_type);
237
238
239 TYPE CstudCurTyp IS REF CURSOR ;
240 c_stud CstudCurTyp ;
241 TYPE CstudTyp IS RECORD ( party_id hz_parties.party_id%TYPE, party_number hz_parties.party_number%TYPE);
242 l_stud CstudTyp ;
243
244
245 CURSOR c_check_group(p_base_id igf_ap_fa_base_rec.base_id%type ) IS
246 SELECT target_group from igf_ap_fa_base_rec
247 WHERE base_id=p_base_id;
248 l_check_group c_check_group%ROWTYPE;
249
250
251 l_fabase c_fabase%rowtype ;
252
253 l_stud_proc BOOLEAN ;
254 l_curr_base_id igf_ap_fa_base_rec.base_id%type ;
255
256 ln_person_id igs_ad_ps_appl_inst.person_id%TYPE;
257 l_person_NUMBER igf_ap_fa_con_v.person_NUMBER%TYPE;
258
259 -- Get
260 CURSOR get_grp_desc(lp_per_id igs_pe_persid_group_all.group_id%TYPE) IS
261 SELECT description
262 FROM igs_pe_persid_group_all
263 WHERE group_id = lp_per_id;
264 lv_desc igs_pe_persid_group_all.description%TYPE;
265
266 -- Get
267 CURSOR c_get_base_id(lp_ci_cal_type igf_ap_fa_base_rec.ci_cal_type%TYPE, lp_ci_seq_num igf_ap_fa_base_rec.ci_sequence_number%TYPE, lp_person_id igf_ap_fa_base_rec.person_id%TYPE) IS
268 SELECT fa.base_id
269 FROM igf_ap_fa_base_rec fa
270 WHERE fa.ci_cal_type = lp_ci_cal_type
271 AND fa.ci_sequence_number = lp_ci_seq_num
272 AND fa.person_id = lp_person_id;
273 l_get_base_id c_get_base_id%ROWTYPE;
274
275 ln_counter NUMBER := 0;
276
277 BEGIN
278 IF p_pergrp_id is NULL THEN
279 l_stud_proc := FALSE ;
280 ELSE
281 l_stud_proc := TRUE ;
282 OPEN get_grp_desc(p_pergrp_id);
283 FETCH get_grp_desc into lv_desc;
284 FND_MESSAGE.SET_NAME('IGF','IGF_AW_PERSON_ID_GROUP');
285 FND_MESSAGE.SET_TOKEN('P_PER_GRP',lv_desc);
286 FND_FILE.PUT_LINE(FND_FILE.LOG,FND_MESSAGE.GET);
287 FND_FILE.PUT_LINE(FND_FILE.LOG,'');
288 CLOSE get_grp_desc;
289 END IF;
290
291
292 IF l_stud_proc THEN
293 --Bug #5021084. Passing Group ID if the group type is STATIC.
294 IF lv_group_type = 'STATIC' THEN
295 OPEN c_stud FOR 'SELECT hz.party_id , hz.party_number FROM
296 hz_parties hz
297 WHERE
298 hz.party_id in ( '||lv_sql_stmt||' ) ' USING p_pergrp_id;
299 ELSIF lv_group_type = 'DYNAMIC' THEN
300 OPEN c_stud FOR 'SELECT hz.party_id , hz.party_number FROM
301 hz_parties hz
302 WHERE
303 hz.party_id in ( '||lv_sql_stmt||' ) ';
304 END IF;
305
306 ELSE
307 OPEN c_year ( l_ci_cal_type,
308 l_ci_sequence_NUMBER ) ;
309 END IF;
310
311 LOOP
312
313 IF l_stud_proc THEN
314
315 FETCH c_stud INTO l_stud ;
316 IF c_stud%NOTFOUND AND c_stud%ROWCOUNT = 0 THEN
317 FND_MESSAGE.SET_NAME('IGF','IGF_DB_NO_PER_GRP');
318 FND_FILE.PUT_LINE(fnd_file.log,fnd_message.get());
319 FND_FILE.PUT_LINE(FND_FILE.LOG,'');
320 CLOSE c_stud;
321 RETURN ;
322 ELSE
323 EXIT WHEN c_stud%notfound ;
324 END IF;
325
326 OPEN c_get_base_id(p_ci_cal_type, p_ci_sequence_number, l_stud.party_id);
327 FETCH c_get_base_id INTO l_get_base_id;
328 IF c_get_base_id%NOTFOUND THEN
329
330 --Get the Alternate code for the award year
331 OPEN c_alternate_code(p_ci_cal_type,p_ci_sequence_number);
332 FETCH c_alternate_code INTO l_alternate_code;
333 CLOSE c_alternate_code;
334
335 FND_MESSAGE.SET_NAME('IGF','IGF_GR_LI_PER_INVALID');
336 FND_MESSAGE.SET_TOKEN('PERSON_NUMBER',l_stud.party_number);
337 FND_MESSAGE.SET_TOKEN('AWD_YR',l_alternate_code);
338 FND_FILE.PUT_LINE(fnd_file.log,fnd_message.get());
339 FND_FILE.PUT_LINE(FND_FILE.LOG,'');
340
341 ln_counter := 1;
342 END IF;
343 CLOSE c_get_base_id;
344
345 l_curr_base_id := l_get_base_id.base_id ;
346 ln_person_id := l_stud.party_id ;
347 l_person_number := l_stud.party_number ;
348
349 ELSE
350
351 FETCH c_year INTO l_year ;
352 EXIT WHEN c_year%notfound ;
353
354 l_curr_base_id := l_year.base_id ;
355 ln_person_id := l_year.person_id ;
356 l_person_number := l_year.party_number;
357
358 END IF;
359
360
361 IF ln_counter = 0 THEN
362 -- Process Target Group Code
363
364 OPEN c_rule_cd(l_ci_cal_type,
365 l_ci_sequence_NUMBER,
366 p_grp_code);
367 LOOP
368
369
370 FETCH c_rule_cd INTO l_rule_cd ;
371 EXIT WHEN c_rule_cd%notfound ;
372
373 OPEN c_fabase(l_curr_base_id);
374 FETCH c_fabase INTO l_fabase ;
375 CLOSE c_fabase ;
376
377 OPEN c_check_group(l_curr_base_id);
378 FETCH c_check_group INTO l_check_group;
379 CLOSE c_check_group;
380
381 IF l_check_group.target_group = p_grp_code THEN
382 FND_MESSAGE.SET_NAME('IGF','IGF_AW_PROC_GRP_CD_ALRDY_ASGND');
383 FND_MESSAGE.SET_TOKEN('GRP_CODE',p_grp_code);
384 FND_MESSAGE.SET_TOKEN('PERSON_NUMBER',l_person_number);
385 FND_FILE.PUT_LINE(FND_FILE.LOG,FND_MESSAGE.GET);
386 FND_FILE.PUT_LINE(FND_FILE.LOG,'');
387 ELSE
388 FND_MESSAGE.SET_NAME('IGF','IGF_AW_PROCESS_GRP_CODE');
389 FND_MESSAGE.SET_TOKEN('PERSON_NUMBER',l_person_number);
390 FND_FILE.PUT_LINE(FND_FILE.LOG,FND_MESSAGE.GET);
391
392 IF NVL(l_fabase.lock_awd_flag,'N') = 'N' THEN
393 igf_ap_fa_base_rec_pkg.update_row(
394 x_rowid => l_fabase.row_id,
395 x_base_id => l_fabase.base_id,
396 x_ci_cal_type => l_fabase.ci_cal_type,
397 x_person_id => l_fabase.person_id,
398 x_ci_sequence_NUMBER => l_fabase.ci_sequence_NUMBER,
399 x_org_id => l_fabase.org_id,
400 x_coa_pending => l_fabase.coa_pending,
401 x_verification_process_run => l_fabase.verification_process_run,
402 x_inst_verif_status_date => l_fabase.inst_verif_status_date,
403 x_manual_verif_flag => l_fabase.manual_verif_flag,
404 x_fed_verif_status => l_fabase.fed_verif_status,
405 x_fed_verif_status_date => l_fabase.fed_verif_status_date,
406 x_inst_verif_status => l_fabase.inst_verif_status,
407 x_nslds_eligible => l_fabase.nslds_eligible,
408 x_ede_correction_batch_id => l_fabase.ede_correction_batch_id,
409 x_fa_process_status_date => l_fabase.fa_process_status_date,
410 x_isir_corr_status => l_fabase.isir_corr_status,
411 x_isir_corr_status_date => l_fabase.isir_corr_status_date,
412 x_isir_status => l_fabase.isir_status,
413 x_isir_status_date => l_fabase.isir_status_date,
414 x_coa_code_f => l_fabase.coa_code_f,
415 x_coa_code_i => l_fabase.coa_code_i,
416 x_coa_f => l_fabase.coa_f,
417 x_coa_i => l_fabase.coa_i,
418 x_disbursement_hold => l_fabase.disbursement_hold,
419 x_fa_process_status => l_fabase.fa_process_status,
420 x_notification_status => l_fabase.notification_status,
421 x_notification_status_date => l_fabase.notification_status_date,
422 x_packaging_status => l_fabase.packaging_status,
423 x_packaging_status_date => l_fabase.packaging_status_date,
424 x_total_package_accepted => l_fabase.total_package_accepted,
425 x_total_package_offered => l_fabase.total_package_offered,
426 x_admstruct_id => l_fabase.admstruct_id,
427 x_admsegment_1 => l_fabase.admsegment_1,
428 x_admsegment_2 => l_fabase.admsegment_2,
429 x_admsegment_3 => l_fabase.admsegment_3,
430 x_admsegment_4 => l_fabase.admsegment_4,
431 x_admsegment_5 => l_fabase.admsegment_5,
432 x_admsegment_6 => l_fabase.admsegment_6,
433 x_admsegment_7 => l_fabase.admsegment_7,
434 x_admsegment_8 => l_fabase.admsegment_8,
435 x_admsegment_9 => l_fabase.admsegment_9,
436 x_admsegment_10 => l_fabase.admsegment_10,
437 x_admsegment_11 => l_fabase.admsegment_11,
438 x_admsegment_12 => l_fabase.admsegment_12,
439 x_admsegment_13 => l_fabase.admsegment_13,
440 x_admsegment_14 => l_fabase.admsegment_14,
441 x_admsegment_15 => l_fabase.admsegment_15,
442 x_admsegment_16 => l_fabase.admsegment_16,
443 x_admsegment_17 => l_fabase.admsegment_17,
444 x_admsegment_18 => l_fabase.admsegment_18,
445 x_admsegment_19 => l_fabase.admsegment_19,
446 x_admsegment_20 => l_fabase.admsegment_20,
447 x_packstruct_id => l_fabase.packstruct_id,
448 x_packsegment_1 => l_fabase.packsegment_1,
449 x_packsegment_2 => l_fabase.packsegment_2,
450 x_packsegment_3 => l_fabase.packsegment_3,
451 x_packsegment_4 => l_fabase.packsegment_4,
452 x_packsegment_5 => l_fabase.packsegment_5,
453 x_packsegment_6 => l_fabase.packsegment_6,
454 x_packsegment_7 => l_fabase.packsegment_7,
455 x_packsegment_8 => l_fabase.packsegment_8,
456 x_packsegment_9 => l_fabase.packsegment_9,
457 x_packsegment_10 => l_fabase.packsegment_10,
458 x_packsegment_11 => l_fabase.packsegment_11,
459 x_packsegment_12 => l_fabase.packsegment_12,
460 x_packsegment_13 => l_fabase.packsegment_13,
461 x_packsegment_14 => l_fabase.packsegment_14,
462 x_packsegment_15 => l_fabase.packsegment_15,
463 x_packsegment_16 => l_fabase.packsegment_16,
464 x_packsegment_17 => l_fabase.packsegment_17,
465 x_packsegment_18 => l_fabase.packsegment_18,
466 x_packsegment_19 => l_fabase.packsegment_19,
467 x_packsegment_20 => l_fabase.packsegment_20,
468 x_miscstruct_id => l_fabase.miscstruct_id,
469 x_miscsegment_1 => l_fabase.miscsegment_1,
470 x_miscsegment_2 => l_fabase.miscsegment_2,
471 x_miscsegment_3 => l_fabase.miscsegment_3,
472 x_miscsegment_4 => l_fabase.miscsegment_4,
473 x_miscsegment_5 => l_fabase.miscsegment_5,
474 x_miscsegment_6 => l_fabase.miscsegment_6,
475 x_miscsegment_7 => l_fabase.miscsegment_7,
476 x_miscsegment_8 => l_fabase.miscsegment_8,
477 x_miscsegment_9 => l_fabase.miscsegment_9,
478 x_miscsegment_10 => l_fabase.miscsegment_10,
479 x_miscsegment_11 => l_fabase.miscsegment_11,
480 x_miscsegment_12 => l_fabase.miscsegment_12,
481 x_miscsegment_13 => l_fabase.miscsegment_13,
482 x_miscsegment_14 => l_fabase.miscsegment_14,
483 x_miscsegment_15 => l_fabase.miscsegment_15,
484 x_miscsegment_16 => l_fabase.miscsegment_16,
485 x_miscsegment_17 => l_fabase.miscsegment_17,
486 x_miscsegment_18 => l_fabase.miscsegment_18,
487 x_miscsegment_19 => l_fabase.miscsegment_19,
488 x_miscsegment_20 => l_fabase.miscsegment_20,
489 x_prof_judgement_flg => l_fabase.prof_judgement_flg,
490 x_nslds_data_override_flg => l_fabase.nslds_data_override_flg ,
491 x_target_group => p_grp_code,
492 x_coa_fixed => l_fabase.coa_fixed,
493 x_coa_pell => l_fabase.coa_pell,
494 x_profile_status => l_fabase.profile_status,
495 x_profile_status_date => l_fabase.profile_status_date,
496 x_profile_fc => l_fabase.profile_fc,
497 x_manual_disb_hold => l_fabase.manual_disb_hold,
498 x_tolerance_amount => l_fabase.tolerance_amount,
499 x_pell_alt_expense => l_fabase.pell_alt_expense,
500 x_mode => 'R',
501 x_assoc_org_num => l_fabase.assoc_org_num,
502 x_award_fmly_contribution_type => l_fabase.award_fmly_contribution_type,
503 x_isir_locked_by => l_fabase.isir_locked_by,
504 x_adnl_unsub_loan_elig_flag => l_fabase.adnl_unsub_loan_elig_flag,
505 x_lock_awd_flag => l_fabase.lock_awd_flag,
506 x_lock_coa_flag => l_fabase.lock_coa_flag
507 );
508
509 FND_MESSAGE.SET_NAME('IGF','IGF_AW_GRP_ASSIGN_STUD');
510 FND_MESSAGE.SET_TOKEN('GRP_CODE',p_grp_code);
511 FND_MESSAGE.SET_TOKEN('PERSON',l_person_number);
512 FND_FILE.PUT_LINE(FND_FILE.LOG,FND_MESSAGE.GET);
513
514 FND_MESSAGE.SET_NAME('IGF','IGF_AW_GRP_ASSIGN_COMP');
515 FND_MESSAGE.SET_TOKEN('PERSON_NUMBER',l_person_number);
516 FND_FILE.PUT_LINE(FND_FILE.LOG,FND_MESSAGE.GET);
517 FND_FILE.PUT_LINE(FND_FILE.LOG,'');
518 ELSE
519 FND_MESSAGE.SET_NAME('IGF','IGF_AW_LOCK');
520 FND_FILE.PUT_LINE(FND_FILE.LOG,FND_MESSAGE.GET);
521 FND_FILE.PUT_LINE(FND_FILE.LOG,'');
522 END IF;
523 END IF;
524
525 EXIT ;
526
527 END LOOP ;
528 CLOSE c_rule_cd ;
529 END IF;
530
531 ln_counter := 0;
532
533 END LOOP ;
534
535 IF l_stud_proc THEN
536 CLOSE c_stud ;
537 ELSE
538 CLOSE c_year ;
539 END IF;
540
541 EXCEPTION
542 WHEN OTHERS THEN
543 FND_MESSAGE.SET_NAME('IGS','IGS_GE_UNHANDLED_EXP');
544 FND_MESSAGE.SET_TOKEN('NAME','IGF_AW_RULE.tgroup_rule' || SQLERRM);
545 IF fnd_log.level_exception >= fnd_log.g_current_runtime_level THEN
546 fnd_log.string(fnd_log.level_exception,'igf.plsql.igf_aw_rule.tgroup_rule.exception','sql error:'||SQLERRM);
547 END IF;
548 FND_FILE.PUT_LINE(FND_FILE.LOG,FND_MESSAGE.GET);
549
550 END tgroup_rule ;
551 END IGF_AW_RULE;