DBA Data[Home] [Help]

PACKAGE BODY: APPS.AP_PAYMENT_PUBLIC_PKG

Source


1 PACKAGE BODY AP_PAYMENT_PUBLIC_PKG AS
2 /* $Header: appaypkb.pls 120.2.12010000.2 2009/01/12 19:34:28 bgoyal ship $ */
3 
4   PROCEDURE Create_Netting_Payment(
5             P_Check_Rec                 IN
6             AP_CHECKS_ALL%ROWTYPE,
7             P_Invoice_Payment_Info_Tab  IN
8             AP_PAYMENT_PUBLIC_PKG.Invoice_Payment_Info_Tab,
9             P_Check_ID                  OUT NOCOPY   NUMBER,
10             P_Curr_Calling_Sequence     IN VARCHAR2,
11             p_gl_date                   IN  DATE DEFAULT NULL/* p_gl_date Added for bug#7663371 */) IS
12 
13     l_debug_info               VARCHAR2(1000);
14     l_curr_calling_sequence    VARCHAR2(2000);
15 
16     -- Check Record Related Variables
17     l_rowid                    VARCHAR2(18);
18     l_seq_num_profile          VARCHAR2(100);
19     l_dbseqnm                  FND_DOCUMENT_SEQUENCES.DB_SEQUENCE_NAME%TYPE;
20     l_dbseqid                  FND_DOCUMENT_SEQUENCES.DOC_SEQUENCE_ID%TYPE;
21     l_set_of_books_id          NUMBER(15);
22     l_return_code              NUMBER;
23     l_doc_category_code        VARCHAR2(100);
24     l_doc_sequence_value       NUMBER;
25     l_check_id                 NUMBER;
26     l_payment_method_code      VARCHAR2(100);
27     l_payment_type             VARCHAR2(1);
28     l_payment_status           VARCHAR2(30);
29     l_base_currency_code       VARCHAR2(15);
30 
31     l_accounting_event_id      NUMBER;
32     l_period_name              gl_period_statuses.period_name%TYPE;
33 
34     -- Package Related Variables
35     Netting_Exception EXCEPTION;
36     l_gl_date       DATE; /* Added for bug#7663371 */
37 
38   BEGIN
39 
40     ---------------------------------------------------------------------------
41     l_debug_info := 'Begin Create_Netting_Payment';
42     l_curr_calling_sequence := 'AP_PAYMENT_PUBLIC_PKG.Create_Netting_Payment'||
43                                ' <-- '||P_Curr_Calling_Sequence;
44 
45 
46     ---------------------------------------------------------------------------
47     l_debug_info := 'Initialize Variables';
48 
49     l_doc_category_code := 'NETTING';
50     l_payment_method_code := 'NETTING';
51     l_payment_Type        := 'N';
52     l_payment_status      := 'NEGOTIABLE';
53 
54     /* Added for bug#7663371 Start */
55     IF p_gl_date IS NULL OR p_gl_date = ''
56     THEN
57       l_gl_date  := p_check_rec.check_date;
58     ELSE
59       l_gl_date  := p_gl_date;
60     END IF;
61     /* Added for bug#7663371 End */
62 
63     ---------------------------------------------------------------------------
64     l_debug_info := 'Get Set of Books/Currency Information';
65     BEGIN
66        SELECT set_of_books_id,
67               base_currency_code
68        INTO   l_set_of_books_id,
69               l_base_currency_code
70        FROM   ap_system_parameters
71        WHERE  org_id = p_check_rec.org_id;
72     EXCEPTION
73     WHEN OTHERS THEN
74        RAISE Netting_Exception;
75     END;
76 
77     ---------------------------------------------------------------------------
78     l_debug_info := 'Get Period Name';
79 
80     l_period_name := ap_utilities_pkg.Get_current_gl_date
81                      (/*p_check_rec.check_date, Commented for bug#7663371 */
82                       l_gl_date, /* Added for bug#7663371*/
83                       p_check_rec.org_id);
84 
85 
86     ---------------------------------------------------------------------------
87     l_debug_info := 'Get Document Sequencing Information';
88 
89     FND_PROFILE.GET('UNIQUE:SEQ_NUMBERS',l_seq_num_profile);
90     IF (l_seq_num_profile IN ('A','P')) Then
91           BEGIN
92             SELECT SEQ.DB_SEQUENCE_NAME,
93                    SEQ.DOC_SEQUENCE_ID
94             INTO   l_dbseqnm, l_dbseqid
95             FROM   FND_DOCUMENT_SEQUENCES SEQ,
96                    FND_DOC_SEQUENCE_ASSIGNMENTS SA
97             WHERE  SEQ.DOC_SEQUENCE_ID        = SA.DOC_SEQUENCE_ID
98             AND    SA.APPLICATION_ID          = 200
99             AND    SA.CATEGORY_CODE           = 'NETTING'
100             AND    NVL(SA.METHOD_CODE,'A') = 'A'
101             AND    SA.SET_OF_BOOKS_ID = l_set_of_books_id
102             AND    nvl(p_check_rec.check_date, sysdate) BETWEEN SA.START_DATE
103                    AND nvl(SA.END_DATE, TO_DATE('31/12/4712','DD/MM/YYYY'));
104           EXCEPTION
105             WHEN NO_DATA_FOUND THEN
106   		  FND_Message.set_name('SQLAP', 'AP_SEQ_DOC_CAT_NO_FOUND');
107               APP_EXCEPTION.RAISE_EXCEPTION;
108           END;
109 
110       -------------------------------------------------------------------------
111       l_debug_info := 'Get Doc Sequence Next Val';
112       l_return_code := FND_SEQNUM.GET_SEQ_VAL(
113                              200,
114                              'NETTING',
115                              l_set_of_books_id,
116                              'A',
117                              nvl(trunc(p_check_rec.check_date), trunc(sysdate)),
118                              l_doc_sequence_value,
119                              l_dbseqid,
120                              'N',
121                              'N');
122           IF ((l_doc_sequence_value IS NULL) OR (l_return_code <> 0)) THEN
123              FND_MESSAGE.SET_NAME('SQLAP', 'AP_SEQ_CREATE_ERROR');
124              APP_EXCEPTION.RAISE_EXCEPTION;
125           END IF;
126       END IF;
127 
128     ---------------------------------------------------------------------------
129     l_debug_info := 'Get Check ID';
130     BEGIN
131        SELECT ap_checks_s.nextval
132        INTO   l_check_id
133        FROM   DUAL;
134     EXCEPTION
135     WHEN OTHERS THEN
136        RAISE Netting_Exception;
137     END;
138 
139     ---------------------------------------------------------------------------
140     l_debug_info := 'Create AP_CHECKS_ALL Record';
141     AP_AC_TABLE_HANDLER_PKG.Insert_Row(
142               l_rowid,
143               p_check_rec.amount,
144               p_check_rec.ce_bank_acct_use_id,
145               p_check_rec.bank_account_name,
146               p_check_rec.check_date,
147               l_check_id,
148               p_check_rec.check_number,
149               p_check_rec.currency_code,
150               p_check_rec.last_updated_by,
151               p_check_rec.last_update_date,
152               l_payment_type,
153               p_check_rec.address_line1,
154               p_check_rec.address_line2,
155               p_check_rec.address_line3,
156               p_check_rec.checkrun_name,
157               p_check_rec.check_format_id,
158               p_check_rec.check_stock_id,
159               p_check_rec.city,
160               p_check_rec.country,
161               p_check_rec.created_by,
162               p_check_rec.creation_date,
163               p_check_rec.last_update_login,
164               l_payment_status,
165               p_check_rec.vendor_name,
166               p_check_rec.vendor_site_code,
167               p_check_rec.external_bank_account_id,
168               p_check_rec.zip,
169               p_check_rec.bank_account_num,
170               p_check_rec.bank_account_type,
171               p_check_rec.bank_num,
172               p_check_rec.check_voucher_num,
173               p_check_rec.cleared_amount,
174               p_check_rec.cleared_date,
175               l_doc_category_code,
176               l_dbseqid,
177               l_doc_sequence_value,
178               p_check_rec.province,
179               p_check_rec.released_date,
180               p_check_rec.released_by,
181               p_check_rec.state,
182               p_check_rec.stopped_date,
183               p_check_rec.stopped_by,
184               p_check_rec.void_date,
185               p_check_rec.attribute1,
186               p_check_rec.attribute10,
187               p_check_rec.attribute11,
188               p_check_rec.attribute12,
189               p_check_rec.attribute13,
190               p_check_rec.attribute14,
191               p_check_rec.attribute15,
192               p_check_rec.attribute2,
193               p_check_rec.attribute3,
194               p_check_rec.attribute4,
195               p_check_rec.attribute5,
196               p_check_rec.attribute6,
197               p_check_rec.attribute7,
198               p_check_rec.attribute8,
199               p_check_rec.attribute9,
200               p_check_rec.attribute_category,
201               p_check_rec.future_pay_due_date,
202               p_check_rec.treasury_pay_date,
203               p_check_rec.treasury_pay_number,
204               p_check_rec.withholding_status_lookup_code,
205               p_check_rec.reconciliation_batch_id,
206               p_check_rec.cleared_base_amount,
207               p_check_rec.cleared_exchange_rate,
208               p_check_rec.cleared_exchange_date,
209               p_check_rec.cleared_exchange_rate_type,
210               p_check_rec.address_line4,
211               p_check_rec.county,
212               p_check_rec.address_style,
213               p_check_rec.org_id,
214               p_check_rec.vendor_id,
215               p_check_rec.vendor_site_id,
216               p_check_rec.exchange_rate,
217               p_check_rec.exchange_date,
218               p_check_rec.exchange_rate_type,
219               p_check_rec.base_amount,
220               p_check_rec.checkrun_id,
221               p_check_rec.global_attribute_category,
222               p_check_rec.global_attribute1,
223               p_check_rec.global_attribute2,
224               p_check_rec.global_attribute3,
225               p_check_rec.global_attribute4,
226               p_check_rec.global_attribute5,
227               p_check_rec.global_attribute6,
228               p_check_rec.global_attribute7,
229               p_check_rec.global_attribute8,
230               p_check_rec.global_attribute9,
231               p_check_rec.global_attribute10,
232               p_check_rec.global_attribute11,
233               p_check_rec.global_attribute12,
234               p_check_rec.global_attribute13,
235               p_check_rec.global_attribute14,
236               p_check_rec.global_attribute15,
237               p_check_rec.global_attribute16,
238               p_check_rec.global_attribute17,
239               p_check_rec.global_attribute18,
240               p_check_rec.global_attribute19,
241               p_check_rec.global_attribute20,
242               p_check_rec.transfer_priority,
243               p_check_rec.maturity_exchange_rate_type,
244               p_check_rec.maturity_exchange_date,
245               p_check_rec.maturity_exchange_rate,
246               p_check_rec.description,
247               p_check_rec.anticipated_value_date,
248               p_check_rec.actual_value_date,
249               l_payment_method_code,
250               p_check_rec.payment_profile_id,
251               p_check_rec.bank_charge_bearer,
252               p_check_rec.settlement_priority,
253               p_check_rec.payment_document_id,
254               p_check_rec.party_id,
255               p_check_rec.party_site_id,
256               p_check_rec.legal_entity_id,
257               p_check_rec.payment_id,
258               l_curr_calling_sequence);
259 
260     ---------------------------------------------------------------------------
261     l_debug_info := 'Create Accounting Events';
262     AP_ACCOUNTING_EVENTS_PKG.CREATE_EVENTS
263       (
264         p_event_type          => 'PAYMENT',
265         p_doc_type            => l_payment_type,
266         p_doc_id              => l_check_id,
267         p_accounting_date     => l_gl_date,          /* SYSDATE, Changed Sysdate to l_gl_date for bug#7663371 */
268         p_accounting_event_id => l_accounting_event_id,
269         p_checkrun_name       => NULL,
270         p_calling_sequence    => 'l_curr_calling_sequence'
271       );
272 
273     ---------------------------------------------------------------------------
274     l_debug_info := 'Create Payment History for Payment Creation';
275     AP_RECONCILIATION_PKG.insert_payment_history
276      (
277       x_check_id                => l_check_id,
278       x_transaction_type        => 'PAYMENT CREATED',
279       x_accounting_date         => l_gl_date,          /* SYSDATE, Changed Sysdate to l_gl_date for bug#7663371 */
280       x_trx_bank_amount         => NULL,
281       x_errors_bank_amount      => NULL,
282       x_charges_bank_amount     => NULL,
283       x_bank_currency_code      => NULL,
284       x_bank_to_base_xrate_type => NULL,
285       x_bank_to_base_xrate_date => NULL,
286       x_bank_to_base_xrate      => NULL,
287       x_trx_pmt_amount          => p_check_rec.amount,
288       x_errors_pmt_amount       => NULL,
289       x_charges_pmt_amount      => NULL,
290       x_pmt_currency_code       => p_check_rec.currency_code,
291       x_pmt_to_base_xrate_type  => p_check_rec.exchange_rate_type,
292       x_pmt_to_base_xrate_date  => p_check_Rec.exchange_date,
293       x_pmt_to_base_xrate       => p_check_Rec.exchange_rate,
294       x_trx_base_amount         => p_check_rec.base_amount,
295       x_errors_base_amount      => NULL,
296       x_charges_base_amount     => NULL,
297       x_matched_flag            => NULL,
298       x_rev_pmt_hist_id         => NULL,
299       x_org_id                  => p_check_rec.org_id,
300       x_creation_date           => p_check_rec.creation_date,
301       x_created_by              => p_check_rec.created_by,
302       x_last_update_date        => p_check_rec.last_update_date,
303       x_last_updated_by         => p_check_rec.last_updated_by,
304       x_last_update_login       => p_check_rec.last_update_login,
305       x_program_update_date     => NULL,
306       x_program_application_id  => NULL,
307       x_program_id              => NULL,
308       x_request_id              => NULL,
309       x_calling_sequence        => l_curr_calling_sequence,
310       x_accounting_event_id     => l_accounting_event_id
311       );
312 
313 
314     ---------------------------------------------------------------------------
315     l_debug_info := 'Create Invoice Payments';
316     AP_PAYMENT_PUBLIC_PKG.Create_Netting_Inv_Payment
317             (P_Invoice_Payment_Info_Tab  =>  P_Invoice_Payment_Info_Tab,
318              P_check_id                  =>  l_check_id,
319              P_payment_type_flag         =>  l_payment_type,
320              P_payment_method            =>  l_payment_method_code,
321              P_ce_bank_acct_use_id       =>  p_check_rec.ce_bank_acct_use_id,
322              P_bank_account_num          =>  p_check_rec.bank_account_num,
323              P_bank_account_type         =>  p_check_rec.bank_account_type,
324              P_bank_num                  =>  p_check_rec.bank_num,
325              P_check_date                =>  l_gl_date,               /* p_check_rec.check_date,    Added l_gl_date for bug#7663371 */
326              P_period_name               =>  l_period_name,
327              P_currency_code             =>  p_check_rec.currency_code,
328              P_base_currency_code        =>  l_base_currency_code,
329              P_checkrun_id               =>  p_check_rec.checkrun_id,
330              P_exchange_rate             =>  p_check_rec.exchange_rate,
331              P_exchange_rate_type        =>  p_check_rec.exchange_rate_type,
332              P_exchange_date             =>  p_check_rec.exchange_date,
333              P_set_of_books_id           =>  l_set_of_books_id,
334              P_last_updated_by           =>  p_check_Rec.last_updated_by,
335              P_last_update_login         =>  p_check_Rec.last_update_login,
336              P_accounting_event_id       =>  l_accounting_event_id,
337              P_org_id                    =>  p_check_rec.org_id,
338              P_calling_sequence          =>  l_curr_calling_sequence
339              );
340 
341     ---------------------------------------------------------------------------
342     l_debug_info := 'Insert Clearing Records';
343     AP_RECONCILIATION_PKG.Recon_Payment_History
344             (X_CHECKRUN_ID             =>  NULL,
345              X_CHECK_ID                =>  l_check_id,
346              X_ACCOUNTING_DATE         =>  l_gl_date,          /* SYSDATE, Changed Sysdate to p_gl_date for bug#7663371 */
347              X_CLEARED_DATE            =>  SYSDATE,
348              X_TRANSACTION_AMOUNT      =>  p_check_rec.amount,
349              X_TRANSACTION_TYPE        =>  'PAYMENT CLEARING',
350              X_ERROR_AMOUNT            =>  NULL,
351              X_CHARGE_AMOUNT           =>  NULL,
352              X_CURRENCY_CODE           =>  p_check_rec.currency_code,
353              X_EXCHANGE_RATE_TYPE      =>  p_check_rec.exchange_rate_type,
354              X_EXCHANGE_RATE_DATE      =>  p_check_Rec.exchange_date,
355              X_EXCHANGE_RATE           =>  p_check_Rec.exchange_rate,
356              X_MATCHED_FLAG            =>  'N',
357              X_ACTUAL_VALUE_DATE       =>  NULL,
358              X_LAST_UPDATE_DATE        =>  SYSDATE,
359              X_LAST_UPDATED_BY         =>  p_check_rec.created_by,
360              X_LAST_UPDATE_LOGIN       =>  p_check_rec.last_update_login,
361              X_CREATED_BY              =>  p_check_rec.created_by,
362              X_CREATION_DATE           =>  SYSDATE,
363              X_PROGRAM_UPDATE_DATE     =>  NULL,
364              X_PROGRAM_APPLICATION_ID  =>  NULL,
365              X_PROGRAM_ID              =>  NULL,
366              X_REQUEST_ID              =>  NULL,
367              X_CALLING_SEQUENCE        =>  l_curr_calling_sequence);
368 
369 
370     ---------------------------------------------------------------------------
371     l_debug_info := 'Assign the OUT Variable';
372     P_Check_ID := l_check_id;
373 
374   EXCEPTION
375     WHEN OTHERS THEN
376       IF (SQLCODE <> -20001) THEN
377         FND_MESSAGE.SET_NAME('SQLAP','AP_DEBUG');
378         FND_MESSAGE.SET_TOKEN('ERROR',SQLERRM);
379         FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE',l_curr_calling_sequence);
380         FND_MESSAGE.SET_TOKEN('DEBUG_INFO',l_debug_info);
381       END IF;
382       APP_EXCEPTION.RAISE_EXCEPTION;
383   END Create_Netting_Payment;
384 
385   --
386   PROCEDURE Create_Netting_Inv_Payment
387             (P_Invoice_Payment_Info_Tab  IN
388              AP_PAYMENT_PUBLIC_PKG.Invoice_Payment_Info_Tab,
389              P_check_id                  IN  NUMBER,
390              P_payment_type_flag         IN  VARCHAR2,
391              P_payment_method            IN  VARCHAR2,
392              P_ce_bank_acct_use_id       IN  NUMBER,
393              P_bank_account_num          IN  VARCHAR2,
394              P_bank_account_type         IN  VARCHAR2,
395              P_bank_num                  IN  VARCHAR2,
396              P_check_date                IN  DATE,
397              P_period_name               IN  VARCHAR2,
398              P_currency_code             IN  VARCHAR2,
399              P_base_currency_code        IN  VARCHAR2,
400              P_checkrun_id               IN  NUMBER,
401              P_exchange_rate             IN  NUMBER,
402              P_exchange_rate_type        IN  VARCHAR2,
403              P_exchange_date             IN  DATE,
404              P_set_of_books_id           IN  NUMBER,
405              P_last_updated_by           IN  NUMBER,
406              P_last_update_login         IN  NUMBER,
407              P_accounting_event_id       IN  NUMBER,
408              P_org_id                    IN  NUMBER,
409              P_calling_sequence          IN  VARCHAR2
410             )
411   IS
412     l_debug_info    VARCHAR2(240);
413     l_curr_calling_sequence VARCHAR2(2000);
414 
415     l_invoice_payment_id  NUMBER;
416     l_payment_num   NUMBER;
417     l_invoice_type    VARCHAR2(25);
418     l_invoice_num   VARCHAR2(50);
419     l_vendor_id     NUMBER;
420     l_vendor_site_id    NUMBER;
421     l_exclusive_payment_flag  VARCHAR2(1);
422     l_future_pay_posted_flag  VARCHAR2(1);
423     l_accts_pay_ccid    NUMBER;
424     l_amount      NUMBER;
425     l_amount_remaining    NUMBER;
426     l_discount_available  NUMBER;
427     l_discount_taken    NUMBER;
428     l_interest_invoice_id NUMBER;
429     l_interest_invoice_pay_id   NUMBER;
430     l_interest_amount   NUMBER;
431     l_payment_amount            NUMBER;
432     l_due_date      DATE;
433     l_interest_invoice_num  VARCHAR2(50);
434     l_invoice_description       VARCHAR2(240);
435     l_attribute1    VARCHAR2(150);
436     l_attribute2    VARCHAR2(150);
437     l_attribute3    VARCHAR2(150);
438     l_attribute4    VARCHAR2(150);
439     l_attribute5    VARCHAR2(150);
440     l_attribute6    VARCHAR2(150);
441     l_attribute7    VARCHAR2(150);
442     l_attribute8    VARCHAR2(150);
443     l_attribute9    VARCHAR2(150);
444     l_attribute10   VARCHAR2(150);
445     l_attribute11   VARCHAR2(150);
446     l_attribute12   VARCHAR2(150);
447     l_attribute13   VARCHAR2(150);
448     l_attribute14   VARCHAR2(150);
449     l_attribute15   VARCHAR2(150);
450     l_attribute_category  VARCHAR2(150);
451 
452   BEGIN
453     l_curr_calling_sequence :=
454              'AP_PAYMENT_PUBLIC_PKG.Create_Netting_Inv_Payment<-' ||
455              P_calling_sequence;
456 
457    --
458    -- Create Invoice Payments Start
459    --
460    l_debug_info := 'Create Invoice Payments Start';
461 
462 
463     FOR i IN
464           P_Invoice_Payment_Info_Tab.FIRST ..
465           P_Invoice_Payment_Info_Tab.LAST
466     LOOP
467 
468      --
469      -- Get Payment Schedules information
470      --
471      l_debug_info := 'Get Payment Schedules Information';
472 
473      SELECT APS.payment_num,
474        AIRP.invoice_type_lookup_code,
475        AIRP.invoice_num,
476        AIRP.vendor_id,
477        AIRP.vendor_site_id,
478        AIRP.exclusive_payment_flag,
479        AIRP.accts_pay_code_combination_id,
480        APS.amount_remaining,
481        APS.attribute1,
482        APS.attribute2,
483        APS.attribute3,
484        APS.attribute4,
485        APS.attribute5,
486        APS.attribute6,
487        APS.attribute7,
488        APS.attribute8,
489        APS.attribute9,
490        APS.attribute10,
491        APS.attribute11,
492        APS.attribute12,
493        APS.attribute13,
494        APS.attribute14,
495        APS.attribute15,
496        APS.attribute_category
497      INTO
498       l_payment_num,
499       l_invoice_type,
500       l_invoice_num,
501       l_vendor_id,
502       l_vendor_site_id,
503       l_exclusive_payment_flag,
504       l_accts_pay_ccid,
505       l_amount_remaining,
506       l_attribute1,
507       l_attribute2,
508       l_attribute3,
509       l_attribute4,
510       l_attribute5,
511       l_attribute6,
512       l_attribute7,
513       l_attribute8,
514       l_attribute9,
515       l_attribute10,
516       l_attribute11,
517       l_attribute12,
518       l_attribute13,
519       l_attribute14,
520       l_attribute15,
521       l_attribute_category
522      FROM   ap_invoices AIRP,
523             ap_payment_schedules       APS
524      WHERE  AIRP.invoice_id = P_Invoice_Payment_Info_Tab(i).invoice_id
525      AND    APS.payment_num = P_Invoice_Payment_Info_Tab(i).payment_schedule_num
526      AND    APS.checkrun_id = P_checkrun_id
527      AND    APS.invoice_id = AIRP.invoice_id;
528 
529      l_amount := P_Invoice_Payment_Info_Tab(i).amount_to_pay;
530      l_payment_amount := l_amount;
531 
532      --
533      -- Get next invoice_payment_id
534      --
535      l_debug_info := 'Get next invoice_payment_id';
536 
537      SELECT ap_invoice_payments_s.nextval
538      INTO   l_invoice_payment_id
539      FROM   sys.dual;
540 
541     l_debug_info := 'Create invoice payment for invoice_id:' ||
542         to_char(P_Invoice_Payment_Info_Tab(i).invoice_id) || ' payment_num:' ||
543         to_char(P_Invoice_Payment_Info_Tab(i).Payment_Schedule_num);
544 
545       AP_PAY_INVOICE_PKG.AP_PAY_INVOICE(
546           P_invoice_id              =>    P_Invoice_Payment_Info_Tab(i).invoice_id,
547           P_check_id                =>    P_check_id,
548           P_payment_num             =>    P_Invoice_Payment_Info_Tab(i).Payment_Schedule_num,
549           P_invoice_payment_id      =>    l_invoice_payment_id,
550           P_old_invoice_payment_id  =>    NULL,
551           P_period_name             =>    P_period_name,
552           P_invoice_type            =>    l_invoice_type,
553           P_accounting_date         =>    P_check_date,
554           P_amount                  =>    l_amount,
555           P_discount_taken          =>    NULL,
556           P_discount_lost           =>    NULL,
557           P_invoice_base_amount     =>    NULL,
558           P_payment_base_amount     =>    NULL,
559           P_accrual_posted_flag     =>    'N',
560           P_cash_posted_flag        =>    'N',
561           P_posted_flag             =>    'N',
562           P_set_of_books_id         =>    P_set_of_books_id,
563           P_last_updated_by         =>    P_last_updated_by,
564           P_last_update_login       =>    P_last_update_login,
565           P_currency_code           =>    P_currency_code,
566           P_base_currency_code      =>    P_base_currency_code,
567           P_exchange_rate           =>    P_exchange_rate,
568           P_exchange_rate_type      =>    P_exchange_rate_type,
569           P_exchange_date           =>    P_exchange_date,
570           P_ce_bank_acct_use_id     =>    P_ce_bank_acct_use_id,
571           P_bank_account_num        =>    P_bank_account_num,
572           P_bank_account_type       =>    P_bank_account_type,
573           P_bank_num                =>    P_bank_num,
574           P_future_pay_posted_flag  =>    l_future_pay_posted_flag,
575           P_exclusive_payment_flag  =>    l_exclusive_payment_flag,
576           P_accts_pay_ccid          =>    l_accts_pay_ccid,
577           P_gain_ccid               =>    NULL,
578           P_loss_ccid               =>    NULL,
579           P_future_pay_ccid         =>    NULL,
580           P_asset_ccid              =>    NULL,
581           P_payment_dists_flag      =>    'N',
582           P_payment_mode            =>    'PAY',
583           P_replace_flag            =>    'N',
584           P_attribute1              =>    l_attribute1,
585           P_attribute2              =>    l_attribute2,
586           P_attribute3              =>    l_attribute3,
587           P_attribute4              =>    l_attribute4,
588           P_attribute5              =>    l_attribute5,
589           P_attribute6              =>    l_attribute6,
590           P_attribute7              =>    l_attribute7,
591           P_attribute8              =>    l_attribute8,
592           P_attribute9              =>    l_attribute9,
593           P_attribute10             =>    l_attribute10,
594           P_attribute11             =>    l_attribute11,
595           P_attribute12             =>    l_attribute12,
596           P_attribute13             =>    l_attribute13,
597           P_attribute14             =>    l_attribute14,
598           P_attribute15             =>    l_attribute15,
599           P_attribute_category      =>    l_attribute_category,
600           P_calling_sequence        =>    l_curr_calling_sequence,
601           P_accounting_event_id     =>    P_accounting_event_id,
602           P_org_id                  =>    P_org_id);
603 
604     END LOOP;
605 
606   EXCEPTION
607     WHEN OTHERS THEN
608       IF (SQLCODE <> -20001) THEN
609         FND_MESSAGE.SET_NAME('SQLAP','AP_DEBUG');
610         FND_MESSAGE.SET_TOKEN('ERROR',SQLERRM);
611         FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE',l_curr_calling_sequence);
612         FND_MESSAGE.SET_TOKEN('PARAMETERS',
613     ' P_check_id = '                || P_check_id        ||
614     ' P_payment_type_flag = '   || P_payment_type_flag     ||
615     ' P_payment_method = '    || P_payment_method    ||
616     ' P_bank_account_id = '   || P_ce_bank_acct_use_id   ||
617     ' P_bank_account_num = '  || P_bank_account_num      ||
618     ' P_bank_account_type = '   || P_bank_account_type     ||
619     ' P_bank_num = '    || P_bank_num      ||
620     ' P_check_date = '    || P_check_date      ||
621     ' P_period_name = '     || P_period_name     ||
622     ' P_currency_code = '     || P_currency_code       ||
623     ' P_base_currency_code = '  || P_base_currency_code    ||
624     ' P_checkrun_id = '     || P_checkrun_id     ||
625     ' P_exchange_rate = '     || P_exchange_rate     ||
626     ' P_exchange_rate_type = '  || P_exchange_rate_type    ||
627     ' P_exchange_date = '     || P_exchange_date     ||
628     ' P_set_of_books_id = '   || P_set_of_books_id     ||
629     ' P_last_updated_by = '   || P_last_updated_by     ||
630     ' P_last_update_login = '   || P_last_update_login
631     );
632   FND_MESSAGE.SET_TOKEN('DEBUG_INFO',l_debug_info);
633       END IF;
634       APP_EXCEPTION.RAISE_EXCEPTION;
635   END Create_Netting_Inv_Payment;
636 
637 END AP_PAYMENT_PUBLIC_PKG;