You are on page 1of 2

CREATE OR REPLACE PROCEDURE XX_GLO_CREDIT_NOTE_PRC

AS
l_return_status VARCHAR2 (1);
l_msg_count NUMBER;
l_msg_data VARCHAR2 (240);
l_cr_id NUMBER;
l_attrib Ar_Receipt_Api_Pub.attribute_rec_type;
BEGIN
l_attrib.attribute3 :='Credit Note only';
for j in ( SELECT CUST_ACCOUNT_ID CUSTOMER_ID,ACCOUNT_NUMBER CUSTOMER_NUMBER,P
ARTY_NAME CUSTOMER_NAME,xcn.AMOUNT,XCN.REMARKS,NVL(XCN.GL_DATE,TRUNC(SYSDATE)) G
L_DATE
,NVL(XCN.GL_DATE,TRUNC(SYSDATE)) receipt_date,( SELECT receipt_method_id
FROM ar_receipt_methods
WHERE name = 'CREDIT NOTE' AND ROWNUM=1) receipt_method_id,xcn.RE
CEIPT_NUMBER --,HP.ATTRIBUTE2,hca.party_id
-- INTO V_CUSTOMER_ID, V_CUSTOMER_NUMBER, V_CUSTOMER_NAME,V_AMOUNT,V_REMARKS,V
_GL_DATE,V_RECEIPT_DATE,V_RECEIPT_METHOD_ID
FROM hz_cust_accounts hca, hz_parties hp,XXGLO_CRED_NOTE xcn
WHERE hca.party_id = hp.party_id
AND HP.ATTRIBUTE2=xcn.dealer_code
-- AND ROWNUM=1
AND hp.STATUS='A'
AND hca.STATUS='A'
and receipt_number not in ( SELECT distinct receipt_number FROM AR_CASH_RECEIPT
S_ALL )
) LOOP
ar_receipt_api_pub.create_cash
(p_api_version => 1.0,
p_init_msg_list => fnd_api.g_false,
p_commit => fnd_api.g_false,
p_validation_level => fnd_api.g_valid_level_full,
x_return_status => l_return_status,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data,
p_currency_code => 'NGN',
p_amount => j.AMOUNT,
p_receipt_number => j.RECEIPT_NUMBER,
p_receipt_date => SYSDATE,
p_gl_date => SYSDATE,
p_customer_id => j.CUSTOMER_ID ,
p_attribute_rec => l_attrib,
p_receipt_method_id => j.receipt_method_id,
--p_customer_bank_account_id => ,
--p_customer_site_use_id => ,
p_cr_id => l_cr_id );
--
DBMS_OUTPUT.put_line ('Message count '||l_msg_count);
DBMS_OUTPUT.put_line ('Status '||l_return_status);
--
IF l_msg_count = 1
THEN
DBMS_OUTPUT.put_line ('l_msg_data '|| l_msg_data);
ELSIF
l_msg_count > 1
THEN LOOP
l_msg_data := fnd_msg_pub.get (fnd_msg_pub.g_next, fnd_api.g_false);
IF l_msg_data IS NULL
THEN EXIT;
END IF;
DBMS_OUTPUT.put_line ('Message'||'---'|| ' ---'||l_msg_data);
END LOOP;
END IF;
arp_standard.disable_debug;
END LOOP;
END;

You might also like