Thursday, June 4, 2015

AP_VENDOR_PUB_PKG.UPDATE_VENDOR - API to update Vendor/Supplier in Oracle Apps R12

 

 

 

 

 

 

 

 

 

 

Script:

SET serveroutput on;

 

DECLARE

  p_api_version          NUMBER;

  p_init_msg_list        VARCHAR2(200);

  p_commit               VARCHAR2(200);

  p_validation_level     NUMBER;

  x_return_status        VARCHAR2(200);

  x_msg_count            NUMBER;

  x_msg_data             VARCHAR2(200);

  lr_vendor_rec          apps.ap_vendor_pub_pkg.r_vendor_rec_type;

  lr_existing_vendor_rec ap_suppliers%ROWTYPE;

  l_msg                  VARCHAR2(200);

  p_vendor_id            NUMBER;

BEGIN

 

  -- Initialize apps session

  fnd_global.apps_initialize(1234, 50833, 200);

  mo_global.init('SQLAP');

  fnd_client_info.set_org_context(101);

 

  -- Assign Basic Values

  p_api_version      := 1.0;

  p_init_msg_list    := fnd_api.g_true;

  p_commit           := fnd_api.g_true;

  p_validation_level := fnd_api.g_valid_level_full;

  p_vendor_id        := 484772;

 

  -- gather vendor details

  BEGIN

    SELECT *

      INTO lr_existing_vendor_rec

      FROM ap_suppliers asa

     WHERE asa.vendor_id = p_vendor_id;

  EXCEPTION

    WHEN OTHERS THEN

      DBMS_OUTPUT.put_line('Unable to derive the supplier  information for vendor id:' ||

                           p_vendor_id);

  END;

 

  --Deactivate Vendor

  lr_vendor_rec.vendor_id       := lr_existing_vendor_rec.vendor_id;

  lr_vendor_rec.end_date_active := SYSDATE;

  lr_vendor_rec.enabled_flag    := 'N';

 

  ap_vendor_pub_pkg.update_vendor(p_api_version      => p_api_version,

                                  p_init_msg_list    => p_init_msg_list,

                                  p_commit           => p_commit,

                                  p_validation_level => p_validation_level,

                                  x_return_status    => x_return_status,

                                  x_msg_count        => x_msg_count,

                                  x_msg_data         => x_msg_data,

                                  p_vendor_rec       => lr_vendor_rec,

                                  p_vendor_id        => p_vendor_id);

                                 

  DBMS_OUTPUT.put_line('X_RETURN_STATUS = ' || x_return_status);

  DBMS_OUTPUT.put_line('X_MSG_COUNT = ' || x_msg_count);

  DBMS_OUTPUT.put_line('X_MSG_DATA = ' || x_msg_data);

 

  IF (x_return_status <> fnd_api.g_ret_sts_success) THEN

    FOR i IN 1 .. fnd_msg_pub.count_msg LOOP

      l_msg := fnd_msg_pub.get(p_msg_index => i,

                               p_encoded   => fnd_api.g_false);

      DBMS_OUTPUT.put_line('The API call failed with error ' || l_msg);

    END LOOP;

  ELSE

    DBMS_OUTPUT.put_line('The API call ended with SUCESSS status');

  END IF;

END;

/

 

Test Results:

 

clip_image002

2 Responses to “AP_VENDOR_PUB_PKG.UPDATE_VENDOR - API to update Vendor/Supplier in Oracle Apps R12”

Krishna said...
October 5, 2017 at 3:13 AM

is there any field that cannot be updated via API??


Suresh said...
March 12, 2019 at 7:00 AM

i need to update vendor name. could you please any one upload the script.

it's really helpful me.

thank you.


Post a Comment

Disclaimer

The ideas, thoughts and concepts expressed here are my own. They, in no way reflect those of my employer or any other organization/client that I am associated. The articles presented doesn't imply to any particular organization or client and are meant only for knowledge Sharing purpose. The articles can't be reproduced or copied without the Owner's knowledge or permission.