DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGF_SL_DL_PRINT_MANIFEST

Source


1 PACKAGE BODY igf_sl_dl_print_manifest AS
2 /* $Header: IGFSL17B.pls 120.1 2006/04/18 04:21:46 akomurav noship $ */
3 /*****************************************************************
4   Created By :      rboddu
5   Date Created On : 2001/05/14
6 -------------------------------------------------------------------------------------
7 -- akomurav     28-Jan-2006    Build FA161 and FA162.
8                                TBH Impact change done in process_manifest().
9 --------------------------------------------------------------------------------------
10 -- svuppala     4-Nov-2004      #3416936 FA 134 TBH impacts for newly added columns
11 
12 --  bkkumar    06-oct-2003     Bug 3104228 FA 122 Loans Enhancements
13 --                             a) Impact of adding the relationship_cd
14 --                             in igf_sl_lor_all table and obsoleting
15 --                             BORW_LENDER_ID, DUNS_BORW_LENDER_ID,
16 --                             GUARANTOR_ID, DUNS_GUARNT_ID,
17 --                             LENDER_ID, DUNS_LENDER_ID
18 --                             LEND_NON_ED_BRC_ID, RECIPIENT_ID
19 --                             RECIPIENT_TYPE,DUNS_RECIP_ID
20 --                             RECIP_NON_ED_BRC_ID columns.
21 --------------------------------------------------------------------------------------
22   veramach   23-SEP-2003     Bug 3104228: Obsoleted lend_apprv_denied_code,lend_apprv_denied_date,cl_rec_status_last_update,
23                                         cl_rec_status,mpn_confirm_code,appl_loan_phase_code_chg,appl_loan_phase_code,
24                                         p_ssn_chg_date,p_dob_chg_date,s_ssn_chg_date,s_dob_chg_date,s_local_addr_chg_date,
25                                         chg_batch_id,appl_send_error_codes from igf_sl_lor
26   Purpose : Bug :- 2426609 SSN Format Incorrect in Output File
27   Who             When            What
28   mesriniv        21-jun-2002     While inserting Student SSN/Parent SSN
29                                   formatting and substr of 9 chars is done.
30   Know limitations, enhancements or remarks
31   Change History:
32   Who             When            What
33   adhawan         20-nov-2002     gscc fix removing the default
34   2669341
35   adhawan         20-feb-2002     added elec_mpn_ind,
36   2216956                         borr_sign_ind,stud_sign_ind,
37                                   borr_credit_auth_code in the call to update row of igf_sl_lor tbh
38                                   changed the parameter in the process_manifest to receive base_id instead of student id and then
39                                   deriving the student id value
40    (reverse chronological order - newest change first)
41   *****************************************************************/
42 
43   PROCEDURE  process_manifest(
44                                         ERRBUF          OUT NOCOPY    VARCHAR2,
45                                         RETCODE         OUT NOCOPY    NUMBER,
46                                         p_award_year    IN     VARCHAR2,
47                                         p_loan_catg     IN     igf_lookups_view.lookup_code%TYPE,
48                                         p_base_id       IN     igf_aw_award.base_id%TYPE,  -- modified to receive base_id instead of student id
49                                         p_loan_number   IN     igf_sl_loans_v.loan_number%TYPE,
50                                         p_org_id        IN     NUMBER
51                              )
52   AS
53   /*****************************************************************
54   Created By :      rboddu
55   Date Created On : 2001/05/14
56   Purpose :
57   Know limitations, enhancements or remarks
58   Change History
59   Who        When            What
60   akomurav   28-Feb-2006     Build FA161 and FA162.
61                              TBH Impact change done in igf_sl_lor_pkg.update_row().
62 
63   veramach   23-SEP-2003     Bug 3104228: Obsoleted lend_apprv_denied_code,lend_apprv_denied_date,cl_rec_status_last_update,
64                                         cl_rec_status,mpn_confirm_code,appl_loan_phase_code_chg,appl_loan_phase_code,
65                                         p_ssn_chg_date,p_dob_chg_date,s_ssn_chg_date,s_dob_chg_date,s_local_addr_chg_date,
66                                         chg_batch_id,appl_send_error_codes from igf_sl_lor
67    (reverse chronological order - newest change first)
68   *****************************************************************/
69 
70  /* Local Variable Declaration */
71 
72   l_ci_cal_type          igf_sl_dl_setup.ci_cal_type%TYPE;
73   l_ci_sequence_number   igf_sl_dl_setup.ci_sequence_number%TYPE;
74   l_print_option         igf_sl_dl_setup_v.pnote_print_ind%TYPE;
75   l_batch_seq_num        NUMBER;
76   l_id                   igf_sl_dl_manifest.pnmn_id%TYPE;
77   l_row_id               igf_sl_dl_manifest.row_id%TYPE;
78   l_log_mesg             VARCHAR2(2000);
79   l_total_pnote          NUMBER := 0;
80   l_awd_year             igf_sl_dl_setup_v.ci_alternate_code%TYPE;
81   l_person_num           igf_aw_award_v.person_number%TYPE;
82   l_alternate_code       igs_ca_inst.alternate_code%TYPE;
83   l_heading              VARCHAR2(2000);
84 
85   /* get the print configuration status of the school for the given award year */
86   CURSOR c_prnt_ind(l_cal igf_sl_dl_setup.ci_cal_type%TYPE, l_seq igf_sl_dl_setup.ci_sequence_number%TYPE) IS
87   SELECT pnote_print_ind, ci_alternate_code
88   FROM   igf_sl_dl_setup_v
89   WHERE  ci_cal_type        = l_cal
90   AND    ci_sequence_number = l_seq;
91 
92   /* get all the records which have the pnote_status set as 'Signed' for the given award year,loan_category etc */
93   CURSOR c_lor_signed(l_cal igf_sl_dl_setup.ci_cal_type%TYPE,
94                       l_seq igf_sl_dl_setup.ci_sequence_number%TYPE,
95                       cp_person_id igf_ap_fa_base_rec.person_id%TYPE) IS
96   SELECT  lor.student_id,
97           lor.p_person_id,
98           lor.loan_id,
99           lor.loan_number,
100           per.api_person_id,
101           per.given_names,
102           per.surname,
103           per.middle_name
104   FROM  igf_sl_lor_v     lor,
105         igf_ap_person_v  per
106   WHERE lor.pnote_status = 'S' /* Check for pnote_status  'Signed' */
107   AND  lor.fed_fund_code IN   (SELECT DISTINCT lookup_code
108                                FROM igf_lookups_view
109                                WHERE lookup_type = DECODE(p_loan_catg,'DL_STAFFORD','IGF_SL_DL_STAFFORD','DL_PLUS','IGF_SL_DL_PLUS')
110                                )
111   AND  lor.ci_cal_type        =  l_cal  /* Check for given Award Year */
112   AND  lor.ci_sequence_number =  l_seq
113   AND  lor.student_id          = NVL(cp_person_id, lor.student_id)
114   AND  lor.loan_number        =  NVL(p_loan_number, lor.loan_number)
115   AND  per.person_id          =  DECODE(p_loan_catg,'DL_STAFFORD',lor.student_id,lor.p_person_id);
116 
117   /* get all records from igf_sl_lor for the given loan_id */
118   CURSOR c_lor_rec(lor_loan_id igf_sl_lor.loan_id%TYPE) IS
119   SELECT igf_sl_lor.*
120   FROM   igf_sl_lor
121   WHERE  loan_id = lor_loan_id FOR UPDATE OF igf_sl_lor.pnote_status NOWAIT;
122 
123 
124 
125   r_lor_signed           c_lor_signed%ROWTYPE;
126   r_dl_lor_rec           c_lor_rec%ROWTYPE;
127 
128   TYPE get_student_ref IS REF CURSOR;
129     get_student_rec  get_student_ref;
130     l_person_id      igf_ap_fa_base_rec.person_id%TYPE;
131 
132   BEGIN
133 
134    RETCODE := 0;
135    igf_aw_gen.set_org_id(p_org_id);
136 
137 
138     l_ci_cal_type         := ltrim(rtrim(SUBSTR(p_award_year,1,10)));
139     l_ci_sequence_number  := ltrim(rtrim(SUBSTR(p_award_year,11)));
140 
141     l_alternate_code :=igf_gr_gen.get_alt_code(l_ci_cal_type,l_ci_sequence_number);
142     l_heading :=igf_aw_gen.lookup_desc('IGF_SL_LOAN_FIELDS','LOAN_NUMBER');
143 
144     l_log_mesg :=igf_aw_gen.lookup_desc('IGF_GE_PARAMETERS','PARAMETER_PASS');
145     FND_FILE.PUT_LINE(FND_FILE.LOG, l_log_mesg);
146 
147     l_log_mesg := RPAD(igf_aw_gen.lookup_desc('IGF_SL_LOAN_FIELDS','CI_ALTERNATE_CODE'),80,' ') ||':'||RPAD(' ',4,' ')||l_alternate_code ;
148     FND_FILE.PUT_LINE(FND_FILE.LOG, l_log_mesg);
149 
150     l_log_mesg := RPAD(igf_aw_gen.lookup_desc('IGF_GE_PARAMETERS','LOAN_CATG'),80,' ')||':'||RPAD(' ',4,' ')||
151                                                               igf_aw_gen.lookup_desc('IGF_SL_DL_LOAN_CATG',p_loan_catg) ;
152     FND_FILE.PUT_LINE(FND_FILE.LOG, l_log_mesg);
153 
154     --Display the Person Number for the Base ID
155     l_person_num :=NULL;
156     IF l_person_id IS NOT NULL  THEN
157        l_person_num:=igf_gr_gen.get_per_num_oss(l_person_id);
158     END IF;
159      l_log_mesg := RPAD(igf_aw_gen.lookup_desc('IGF_GE_PARAMETERS','PERSON_NUMBER'),80,' ')||':'||RPAD(' ',4,' ')||l_person_num ;
160     FND_FILE.PUT_LINE(FND_FILE.LOG, l_log_mesg);
161 
162     l_log_mesg := RPAD(igf_aw_gen.lookup_desc('IGF_SL_LOAN_FIELDS','LOAN_NUMBER'),80)||':'||p_loan_number;
163     FND_FILE.PUT_LINE(FND_FILE.LOG, l_log_mesg);
164 
165     FND_FILE.PUT_LINE(FND_FILE.LOG, ' ');
166 
167    OPEN get_student_rec FOR
168               select person_id  from igf_ap_fa_base_rec
169               where base_id = p_base_id and  person_id  IS NOT NULL;
170    FETCH get_student_rec INTO l_person_id ;
171    CLOSE get_student_rec;
172 
173 
174    OPEN c_prnt_ind(l_ci_cal_type,l_ci_sequence_number);
175        FETCH c_prnt_ind INTO l_print_option,l_awd_year;
176        IF c_prnt_ind%NOTFOUND THEN
177            CLOSE c_prnt_ind;
178            FND_MESSAGE.SET_NAME('IGF', 'IGF_SL_NO_DL_SETUP');
179            FND_FILE.PUT_LINE(FND_FILE.LOG, FND_MESSAGE.GET);
180            RAISE NO_DATA_FOUND;
181        END IF;
182     CLOSE c_prnt_ind;
183 
184 
185       /* Check whether the School is configured to Print and Process Promissory Note or not. If not then display valid message in log file */
186 
187       IF ( l_print_option <> 'F' ) THEN
188           FND_MESSAGE.SET_NAME('IGF', 'IGF_SL_PNOTE_SCH_NOPRNT');
189           FND_MESSAGE.SET_TOKEN('AWD_YR', l_awd_year );
190           FND_FILE.PUT_LINE(FND_FILE.LOG, FND_MESSAGE.GET);
191           RETURN;
192       END IF;
193 
194 
195      /* For each 'Signed' Loan record in the current Batch, insert corresponding Student or Parent information into Manifest table
196        Depending on whetner the Loan type is 'STAFFORD' or 'PLUS', respectively. This set of records is identified by a single Batch Sequence Number.*/
197 
198 
199        /* insert the student(parent) details into igf_sl_manifest table with status as N (Not manifested) */
200   FOR r_lor_signed IN c_lor_signed(l_ci_cal_type, l_ci_sequence_number,l_person_id)
201    LOOP
202    BEGIN
203 
204            IF l_batch_seq_num IS NULL THEN
205 
206          /* Get the unique sequence number to be assigned to the entire batch of records */
207            SELECT igf_sl_dl_pnote_bth_s.nextval  INTO l_batch_seq_num     FROM DUAL;
208 
209            END IF;
210 
211             SAVEPOINT sp_prom_manifest;
212 
213             igf_sl_dl_manifest_pkg.insert_row(
214                x_rowid                             => l_row_id,
215                x_pnmn_id                           => l_id,
216                x_batch_seq_num                     => l_batch_seq_num,
217                x_loan_id                           => r_lor_signed.loan_id,
218                x_loan_number                       => r_lor_signed.loan_number,
219                x_b_ssn                             => SUBSTR(igf_ap_matching_process_pkg.remove_spl_chr(r_lor_signed.api_person_id),1,9),
220                x_b_first_name                      => r_lor_signed.given_names,
221                x_b_last_name                       => r_lor_signed.surname,
222                x_b_middle_name                     => r_lor_signed.middle_name,
223                x_status                            => 'N',
224                x_mode                              => 'R'
225                                               );
226 
227 
228      /* Set the PNote Status for this loan ID as 'Printed' in igf_sl_lor table */
229       FOR r_dl_lor_rec IN c_lor_rec( r_lor_signed.loan_id )
230 
231       LOOP
232           igf_sl_lor_pkg.update_row (
233             X_mode                              => 'R',
234             x_rowid                             => r_dl_lor_rec.row_id,
235             x_origination_id                    => r_dl_lor_rec.origination_id,
236             x_loan_id                           => r_dl_lor_rec.loan_id,
237             x_sch_cert_date                     => r_dl_lor_rec.sch_cert_date,
238             x_orig_status_flag                  => r_dl_lor_rec.orig_status_flag,
239             x_orig_batch_id                     => r_dl_lor_rec.orig_batch_id,
240             x_orig_batch_date                   => r_dl_lor_rec.orig_batch_date,
241             x_chg_batch_id                      => NULL,
242             x_orig_ack_date                     => r_dl_lor_rec.orig_ack_date,
243             x_credit_override                   => r_dl_lor_rec.credit_override,
244             x_credit_decision_date              => r_dl_lor_rec.credit_decision_date,
245             x_req_serial_loan_code              => r_dl_lor_rec.req_serial_loan_code,
246             x_act_serial_loan_code              => r_dl_lor_rec.act_serial_loan_code,
247             x_pnote_delivery_code               => r_dl_lor_rec.pnote_delivery_code,
248             x_pnote_status                      => 'P',
249             x_pnote_status_date                 => TRUNC(SYSDATE),
250             x_pnote_id                          => r_dl_lor_rec.pnote_id,
251             x_pnote_print_ind                   => r_dl_lor_rec.pnote_print_ind,
252             x_pnote_accept_amt                  => r_dl_lor_rec.pnote_accept_amt,
253             x_pnote_accept_date                 => r_dl_lor_rec.pnote_accept_date,
254             x_unsub_elig_for_heal               => r_dl_lor_rec.unsub_elig_for_heal,
255             x_disclosure_print_ind              => r_dl_lor_rec.disclosure_print_ind,
256             x_orig_fee_perct                    => r_dl_lor_rec.orig_fee_perct,
257             x_borw_confirm_ind                  => r_dl_lor_rec.borw_confirm_ind,
258             x_borw_interest_ind                 => r_dl_lor_rec.borw_interest_ind,
259             x_borw_outstd_loan_code             => r_dl_lor_rec.borw_outstd_loan_code,
260             x_unsub_elig_for_depnt              => r_dl_lor_rec.unsub_elig_for_depnt,
261             x_guarantee_amt                     => r_dl_lor_rec.guarantee_amt,
262             x_guarantee_date                    => r_dl_lor_rec.guarantee_date,
263             x_guarnt_amt_redn_code              => r_dl_lor_rec.guarnt_amt_redn_code,
264             x_guarnt_status_code                => r_dl_lor_rec.guarnt_status_code,
265             x_guarnt_status_date                => r_dl_lor_rec.guarnt_status_date,
266             x_lend_apprv_denied_code            => NULL,
267             x_lend_apprv_denied_date            => NULL,
268             x_lend_status_code                  => r_dl_lor_rec.lend_status_code,
269             x_lend_status_date                  => r_dl_lor_rec.lend_status_date,
270             x_guarnt_adj_ind                    => r_dl_lor_rec.guarnt_adj_ind,
271             x_grade_level_code                  => r_dl_lor_rec.grade_level_code,
272             x_enrollment_code                   => r_dl_lor_rec.enrollment_code,
273             x_anticip_compl_date                => r_dl_lor_rec.anticip_compl_date,
274             x_borw_lender_id                    => NULL,
275             x_duns_borw_lender_id               => NULL,
276             x_guarantor_id                      => NULL,
277             x_duns_guarnt_id                    => NULL,
278             x_prc_type_code                     => r_dl_lor_rec.prc_type_code,
279             x_cl_seq_number                     => r_dl_lor_rec.cl_seq_number,
280             x_last_resort_lender                => r_dl_lor_rec.last_resort_lender,
281             x_lender_id                         => NULL,
282             x_duns_lender_id                    => NULL,
283             x_lend_non_ed_brc_id                => NULL,
284             x_recipient_id                      => NULL,
285             x_recipient_type                    => NULL,
286             x_duns_recip_id                     => NULL,
287             x_recip_non_ed_brc_id               => NULL,
288             x_rec_type_ind                      => r_dl_lor_rec.rec_type_ind,
289             x_cl_loan_type                      => r_dl_lor_rec.cl_loan_type,
290             x_cl_rec_status                     => NULL,
291             x_cl_rec_status_last_update         => NULL,
292             x_alt_prog_type_code                => r_dl_lor_rec.alt_prog_type_code,
293             x_alt_appl_ver_code                 => r_dl_lor_rec.alt_appl_ver_code,
294             x_mpn_confirm_code                  => NULL,
295             x_resp_to_orig_code                 => r_dl_lor_rec.resp_to_orig_code,
296             x_appl_loan_phase_code              => NULL,
297             x_appl_loan_phase_code_chg          => NULL,
298             x_appl_send_error_codes             => NULL,
299             x_tot_outstd_stafford               => r_dl_lor_rec.tot_outstd_stafford,
300             x_tot_outstd_plus                   => r_dl_lor_rec.tot_outstd_plus,
301             x_alt_borw_tot_debt                 => r_dl_lor_rec.alt_borw_tot_debt,
302             x_act_interest_rate                 => r_dl_lor_rec.act_interest_rate,
303             x_service_type_code                 => r_dl_lor_rec.service_type_code,
304             x_rev_notice_of_guarnt              => r_dl_lor_rec.rev_notice_of_guarnt,
305             x_sch_refund_amt                    => r_dl_lor_rec.sch_refund_amt,
306             x_sch_refund_date                   => r_dl_lor_rec.sch_refund_date,
307             x_uniq_layout_vend_code             => r_dl_lor_rec.uniq_layout_vend_code,
308             x_uniq_layout_ident_code            => r_dl_lor_rec.uniq_layout_ident_code,
309             x_p_person_id                       => r_dl_lor_rec.p_person_id,
310             x_p_ssn_chg_date                    => NULL,
311             x_p_dob_chg_date                    => NULL,
312             x_p_permt_addr_chg_date             => r_dl_lor_rec.p_permt_addr_chg_date,
313             x_p_default_status                  => r_dl_lor_rec.p_default_status,
314             x_p_signature_code                  => r_dl_lor_rec.p_signature_code,
315             x_p_signature_date                  => r_dl_lor_rec.p_signature_date,
316             x_s_ssn_chg_date                    => NULL,
317             x_s_dob_chg_date                    => NULL,
318             x_s_permt_addr_chg_date             => r_dl_lor_rec.s_permt_addr_chg_date,
319             x_s_local_addr_chg_date             => NULL,
320             x_s_default_status                  => r_dl_lor_rec.s_default_status,
321             x_s_signature_code                  => r_dl_lor_rec.s_signature_code,
322             x_pnote_batch_id                    => r_dl_lor_rec.pnote_batch_id,
323             x_pnote_ack_date                    => r_dl_lor_rec.pnote_ack_date,
324             x_pnote_mpn_ind                     => r_dl_lor_rec.pnote_mpn_ind ,
325             x_elec_mpn_ind	                => r_dl_lor_rec.elec_mpn_ind,         -- added as part of 2216956
326             x_borr_sign_ind	                => r_dl_lor_rec.borr_sign_ind,
327             x_stud_sign_ind	                => r_dl_lor_rec.stud_sign_ind,
328             x_borr_credit_auth_code             => r_dl_lor_rec.borr_credit_auth_code, -- added as part of 2216956
329             x_relationship_cd                   => r_dl_lor_rec.relationship_cd,
330             x_interest_rebate_percent_num       => r_dl_lor_rec.interest_rebate_percent_num,
331             x_cps_trans_num                     => r_dl_lor_rec.cps_trans_num,
332             x_atd_entity_id_txt                 => r_dl_lor_rec.atd_entity_id_txt ,
333             x_rep_entity_id_txt                 => r_dl_lor_rec.rep_entity_id_txt,
334             x_crdt_decision_status              => r_dl_lor_rec.crdt_decision_status,
335             x_note_message                      => r_dl_lor_rec.note_message,
336               x_book_loan_amt                     => r_dl_lor_rec.book_loan_amt ,
337             x_book_loan_amt_date                => r_dl_lor_rec.book_loan_amt_date,
338             x_pymt_servicer_amt                 => r_dl_lor_rec.pymt_servicer_amt,
339             x_pymt_servicer_date                => r_dl_lor_rec.pymt_servicer_date,
340             x_requested_loan_amt                => r_dl_lor_rec.requested_loan_amt,
341             x_eft_authorization_code            => r_dl_lor_rec.eft_authorization_code,
342             x_external_loan_id_txt              => r_dl_lor_rec.external_loan_id_txt,
343             x_deferment_request_code            => r_dl_lor_rec.deferment_request_code ,
344             x_actual_record_type_code           => r_dl_lor_rec.actual_record_type_code,
345             x_reinstatement_amt                 => r_dl_lor_rec.reinstatement_amt,
346             x_school_use_txt                    => r_dl_lor_rec.school_use_txt,
347             x_lender_use_txt                    => r_dl_lor_rec.lender_use_txt,
348             x_guarantor_use_txt                 => r_dl_lor_rec.guarantor_use_txt,
349             x_fls_approved_amt                  => r_dl_lor_rec.fls_approved_amt,
350             x_flu_approved_amt                  => r_dl_lor_rec.flu_approved_amt,
351             x_flp_approved_amt                  => r_dl_lor_rec.flp_approved_amt,
352             x_alt_approved_amt                  => r_dl_lor_rec.alt_approved_amt,
353             x_loan_app_form_code                => r_dl_lor_rec.loan_app_form_code,
354             x_override_grade_level_code         => r_dl_lor_rec.override_grade_level_code,
355             x_b_alien_reg_num_txt               => r_dl_lor_rec.b_alien_reg_num_txt,
356             x_esign_src_typ_cd                  => r_dl_lor_rec.esign_src_typ_cd,
357             x_acad_begin_date                   => r_dl_lor_rec.acad_begin_date,
358             x_acad_end_date                     => r_dl_lor_rec.acad_end_date
359           );
360 
361         END LOOP;  -- End of r_dl_lor_rec loop (i.e) end of update lor rec loop
362 
363         -- Number of promissory notes processed currently
364        l_total_pnote := l_total_pnote+1;
365 
366 
367      EXCEPTION
368       WHEN app_exception.record_lock_exception THEN
369 
370       fnd_file.put_line(fnd_file.log,' ');
371       fnd_message.set_name('IGF','IGF_GE_LOCK_ERROR');
372       fnd_file.put_line(fnd_file.log,fnd_message.get);
373       fnd_file.put_line(fnd_file.log,l_heading||':    '||r_lor_signed.loan_number);
374       fnd_message.set_name('IGF','IGF_SL_SKIPPING');
375       fnd_file.put_line(fnd_file.log,fnd_message.get);
376       fnd_file.put_line(fnd_file.log,' ');
377       ROLLBACK TO sp_prom_manifest;
378 
379       END;
380 
381       END LOOP;   -- End of r_lor_signed loop (i.e) main loop
382 
383      /* Display the details in the Log file */
384     FND_FILE.PUT_LINE(FND_FILE.LOG, ' ');
385     FND_FILE.PUT_LINE(FND_FILE.LOG, ' ');
386 
387 
388     FND_MESSAGE.SET_NAME('IGF', 'IGF_SL_NO_OF_PNOTES');
389     FND_MESSAGE.SET_TOKEN('NO_OF_PNOTES', l_total_pnote );
390     FND_FILE.PUT_LINE(FND_FILE.LOG, FND_MESSAGE.GET);
391 
392     IF l_total_pnote = 0 THEN
393        --There are no Signed Promissory Notes.Promissory Note Manifest has not been created.
394        fnd_message.set_name('IGF','IGF_SL_NO_SIGN_PROMNOTE');
395        fnd_file.put_line(fnd_file.log,fnd_message.get);
396     END IF;
397 
398     IF l_batch_seq_num IS NOT NULL THEN
399 
400     FND_MESSAGE.SET_NAME('IGF', 'IGF_SL_PNOTE_BATCH_SEQNO');
401     FND_MESSAGE.SET_TOKEN('PNOTE_BATCH_SEQNO', NVL( l_batch_seq_num, NULL) );
402     FND_FILE.PUT_LINE(FND_FILE.LOG, FND_MESSAGE.GET);
403 
404     END IF;
405 
406 
407   EXCEPTION
408     WHEN NO_DATA_FOUND THEN
409      NULL;
410     WHEN app_exception.record_lock_exception THEN
411       ROLLBACK;
412       RETCODE := 2;
413       ERRBUF := FND_MESSAGE.GET_STRING('IGF','IGF_GE_LOCK_ERROR');
414       IGS_GE_MSG_STACK.CONC_EXCEPTION_HNDL;
415 
416     WHEN OTHERS THEN
417       ROLLBACK;
418       RETCODE :=2;
419       FND_MESSAGE.SET_NAME('IGS','IGS_GE_UNHANDLED_EXP');
420       FND_MESSAGE.SET_TOKEN('NAME','igf_sl_dl_print_manifest.process_manifest');
421       ERRBUF := FND_MESSAGE.GET;
422       IGS_GE_MSG_STACK.CONC_EXCEPTION_HNDL;
423 
424   END process_manifest;
425 
426 END igf_sl_dl_print_manifest;