Tuesday, October 1, 2024

API To Update Vendor Site Inactive Date Based On Vendor Site Code

 API To Update Vendor Site Inactive Date Based On Vendor Site Code


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_site_rec           apps.ap_vendor_pub_pkg.r_vendor_site_rec_type;

    lr_existing_vendor_site_rec  ap_supplier_sites_all%rowtype;

    p_vendor_site_id             NUMBER;

    p_calling_prog               VARCHAR2(200);

    CURSOR c1 IS

    SELECT

        assa.*

        /*asup.SEGMENT1 Supplier_Number,

       asup.vendor_id,

       asup.vendor_name Supplier_Name,

        asup.START_DATE_ACTIVE supplier_start_date,

       asup.END_DATE_ACTIVE supplier_end_date,

       assa.vendor_site_code SITE_ADDRESS,

       assa.INACTIVE_DATE SITE_INACTIVE_DATE*/

    FROM

        ap_suppliers           asup,

        ap_supplier_sites_all  assa

    WHERE

            asup.vendor_id = assa.vendor_id

        AND assa.vendor_site_code IN ( 'HOME', 'OFFICE' )

        AND asup.vendor_id = 24205

--and assa.VENDOR_SITE_ID=102079

        ;


BEGIN

    FOR i IN c1 LOOP

 

  -- Initialize apps session


        fnd_global.apps_initialize(5155, 20639, 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_site_id := i.vendor_site_id;--2040; -- to be end dated

 

-- p_calling_prog     := 'XXCUSTOM';

 

 

 

/* BEGIN

 

    SELECT *

 

      INTO lr_existing_vendor_site_rec

 

      FROM ap_supplier_sites_all assa

 

     WHERE assa.vendor_site_id = p_vendor_site_id;

 

  EXCEPTION

 

    WHEN OTHERS THEN

 

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

 

                           p_vendor_site_id);

 

  END;

 

*/

 

  -- Assign Vendor Site Details


        lr_vendor_site_rec.vendor_site_id := i.vendor_site_id;---lr_existing_vendor_site_rec.vendor_site_id;


        lr_vendor_site_rec.last_update_date := sysdate;

 

  --lr_vendor_site_rec.last_updated_by  := 1119;


        lr_vendor_site_rec.vendor_id := i.vendor_id;--lr_existing_vendor_site_rec.vendor_id;


        lr_vendor_site_rec.org_id := i.org_id;--lr_existing_vendor_site_rec.org_id;


        IF i.vendor_site_code = 'OFFICE' THEN

            lr_vendor_site_rec.inactive_date := '31-Dec-4712';

        ELSIF i.vendor_site_code = 'HOME' THEN

            lr_vendor_site_rec.inactive_date := '30-Dec-2023';

        END IF;


        ap_vendor_pub_pkg.update_vendor_site_public(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_site_rec => lr_vendor_site_rec,

                                                   p_vendor_site_id => p_vendor_site_id

 

                                      -- p_calling_prog     => p_calling_prog

                                                   );


        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);

    END LOOP;


    COMMIT;

EXCEPTION

    WHEN OTHERS THEN

        dbms_output.put_line(sqlerrm);

END;

No comments:

Post a Comment

EBS : Package Development Process

====================== Package Specification ================================== CREATE OR REPLACE PACKAGE xx_emp_package IS     PROCEDURE lo...