Oracle APPS Borçlar Muhasebesi Ödeme Yaratma API
Merhaba,
Bu yazıda Oracle EBS Borçlar Muhasebesi modülünde ödeme yaratma yöntemini paylaşacağım.
Borçlar Muhasebesi modülünde PUBLIC bir ödeme yaratma API’si bulunmamaktadır. Fakat AP_PAY_SINGLE_INVOICE_PKG paketinde bulunan AP_Pay_Invoice_In_Full prosedürüne ufak bir ekleme ile içerisindeki BUG’ı yok ederek, ödeme oluşturup, faturaları ödeyebiliyoruz.
Prosedür içerisinde yer alan l_next_check_number değişkeni boş değer alınca ödeme oluşturmamaktadır. Boş değer yerine -1 gönderince API sağlam şekilde çalışmaktadır. Dolayısıyla yeni bir XX ile başlayan paket oluşturup aşağıdaki kod parçasını prosedür içerisine ekliyoruz.
1 2 3 4 5 |
if l_next_check_number is null and l_seq_num_profile in ('P') and p_doc_category_code is null then l_next_check_number := -1; end if; |
Değiştirilmiş paketi aşağıdaki linke tıklayarak indirebilirsiniz.
Prosedürü çağırmak için aşağıdaki kodu kullanabilirsiniz. Dikkat edilmesi gereken bir diğer önemli nokta ise, bu yöntem sadece p_payment_type_flag parametresi “A” olan ödemeler için çalışmaktadır.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
xx_ap_pay_single_invoice_pkg.ap_pay_invoice_in_full ( p_api_version => 1.0, p_init_msg_list => fnd_api.g_true, p_invoice_id => l_invoice_id, p_payment_type_flag => 'A', p_internal_bank_acct_id => l_bank_account_id, p_payment_method_code => l_payment_method_code, p_payment_profile_id => l_payment_profile_id, p_payment_document_id => null, p_take_discount => 'N', p_check_date => trunc(sysdate), p_doc_category_code => null, p_exchange_rate_type => null, p_exchange_rate => null, p_exchange_date => null, x_return_status => l_return_status, x_msg_count => l_msg_count, x_msg_data => l_msg_data, x_errorids => l_error_ids ); |