Only Vendor Create
Only Vendor Create
(
SUPP_ID VARCHAR2 (200),
SUPP_NAME VARCHAR2 (200),
STATUS VARCHAR2 (10),
N_VENDOR_ID NUMBER (5),
ERROR_MSG VARCHAR2 (600)
);
CURSOR vendor_int_cur IS
SELECT *
FROM Ap_Suppliers_Int
WHERE import_request_id = l_request_id
AND vendor_interface_id IS NOT NULL
ORDER BY segment1;
vendor_int_rec vendor_int_cur%ROWTYPE;
vendor_rec r_vendor_rec_type;
SELECT *
FROM ap_suppliers
WHERE vendor_id IN (SELECT n_vendor_id FROM supp_basic_data);
DECLARE
v_api_error VARCHAR2 (500);
v_error_msg VARCHAR2 (500) := NULL;
l_vendor_rec ap_vendor_pub_pkg.r_vendor_rec_type;
l_return_status VARCHAR2 (10);
l_msg_count NUMBER;
l_msg_data VARCHAR2 (1000);
l_vendor_id NUMBER;
l_party_id NUMBER;
CURSOR xx_supp
IS
SELECT * FROM supp_basic_data;
BEGIN
FOR supp_data IN xx_supp
LOOP
BEGIN
l_vendor_rec.vendor_name := supp_data.supp_name; -- Required
pos_vendor_pub_pkg.create_vendor (
-- -------------------------
-- Input Parameters
-- -------------------------
p_vendor_rec => l_vendor_rec
, -- ----------------------------
-- Output Parameters
-- ----------------------------
x_return_status => l_return_status
,x_msg_count => l_msg_count
,x_msg_data => l_msg_data
,x_vendor_id => l_vendor_id
,x_party_id => l_party_id);
COMMIT;
dbms_output.put_line (l_vendor_id);
--To ensure that the data inserted successfully
BEGIN
UPDATE supp_basic_data
SET status = 'Done', n_vendor_id = l_vendor_id, error_msg = NULL
WHERE supp_id = supp_data.supp_id;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
-- To handle unexpected errors and unsuccessful data insertion
EXCEPTION
WHEN OTHERS THEN
v_api_error := sqlerrm;
v_error_msg := v_error_msg || ' ' || v_api_error;
UPDATE supp_basic_data
SET error_msg = v_error_msg, status = 'Error'
WHERE supp_id = supp_data.supp_id;
COMMIT;
END;
END LOOP;
END;
CURSOR vendor_int_cur IS
SELECT *
FROM Ap_Suppliers_Int
WHERE import_request_id = l_request_id
AND vendor_interface_id IS NOT NULL
ORDER BY segment1;
vendor_int_rec vendor_int_cur%ROWTYPE;
vendor_rec r_vendor_rec_type;
SELECT *
FROM ap_suppliers
WHERE vendor_id IN (SELECT n_vendor_id FROM XXSD_STG_VENDOR_CREATE);