Skip to main content

Vendor Site Update API

 Sample API to update supplier site liability account

DECLARE

   lc_return_status       varchar2 (2000);

   ln_msg_count           number;

   ll_msg_data            long;

   ln_vendor_id           number;

   ln_vendor_site_id      number;

   ln_message_int         number;

   ln_party_id            number;

   lrec_vendor_site_rec   ap_vendor_pub_pkg.r_vendor_site_rec_type;


   CURSOR c_vendorsites

   IS

      SELECT   xv.vendor_id,

               vendor_site_id,

               xv.VENDOR_NO,

               xv.SITE_NO

        FROM   xx_vendor_liab_upd xv,

               ap_suppliers asp,

               ap_supplier_sites_all ass

       WHERE       xv.vendor_id = asp.vendor_id

               AND asp.vendor_id = ass.vendor_id

               AND ass.org_id = &operating_unit

               AND NVL (xv.FLAG, 'N') = 'N';

BEGIN

   FOR v_site IN c_vendorsites

   LOOP

      ln_vendor_id := v_site.vendor_id;

      ln_vendor_site_id := v_site.vendor_site_id;

      lrec_vendor_site_rec.accts_pay_code_combination_id :=

         &code_combination_id;


      ap_vendor_pub_pkg.update_vendor_site (

         p_api_version       => 1,                                          --

         x_return_status     => lc_return_status,                           --

         x_msg_count         => ln_msg_count,                               --

         x_msg_data          => ll_msg_data,                                --

         p_vendor_site_rec   => lrec_vendor_site_rec,                       --

         p_vendor_site_id    => ln_vendor_site_id

      );

      DBMS_OUTPUT.put_line ('------------------------------------');

      DBMS_OUTPUT.put_line(   'Vendor No - '

                           || v_site.VENDOR_NO

                           || 'Vendor Site - '

                           || v_site.SITE_NO);

      DBMS_OUTPUT.put_line ('Return Status - ' || lc_return_status);


      IF (lc_return_status <> 'S')

      THEN

         IF ln_msg_count >= 1

         THEN

            FOR v_index IN 1 .. ln_msg_count

            LOOP

               fnd_msg_pub.get (p_msg_index       => v_index,

                                p_encoded         => 'F',

                                p_data            => ll_msg_data,

                                p_msg_index_out   => ln_message_int);

               ll_msg_data :=

                  'UPDATE_VENDOR_SITE ' || SUBSTR (ll_msg_data, 1, 3900);

               DBMS_OUTPUT.put_line ('Error Message - ' || ll_msg_data);

            END LOOP;

         END IF;

      END IF;


      UPDATE   xx_vendor_liab_upd

         SET   error_flag = lc_return_status, error_msg = ll_msg_data

       WHERE   vendor_id = v_site.vendor_id AND SITE_NO = v_site.SITE_NO;


      DBMS_OUTPUT.put_line ('------------------------------------');

   END LOOP;


   COMMIT;

EXCEPTION

   WHEN OTHERS

   THEN

      DBMS_OUTPUT.put_line ('SQLERRM - ' || SQLERRM);

END;

Comments

Popular posts from this blog

API to Create & Update Price Adjustment and Order Lines

Important Tables: select header_id from oe_order_headers_all; select line_id from oe_order_lines_all; select list_header_id from qp_list_headers_all; select list_line_id from qp_list_lines; CREATE OR REPLACE PROCEDURE apps.xxapply_discount (p_header_id number) IS    v_api_version_number           number := 1;    v_return_status                varchar2 (2000);    v_msg_count                    number;    v_msg_data                     varchar2 (2000);    -- in variables --    v_header_rec                   oe_order_pub.header_rec_type;    v_line_tbl                     oe_order_pub.line_tbl_type;    v_action_request_tbl   ...

Uninvoiced Receipts Query Oracle r12

Uninvoiced Receipts: SELECT   pha.segment1 po_number,          TO_CHAR (pha.creation_date, 'DD-MON-RRRR') po_date,          (SELECT   vendor_name             FROM   ap_suppliers ap            WHERE   ap.vendor_id = pha.vendor_id)             supplier_name,          pla.quantity,          pla.unit_price,          pla.quantity * pla.unit_price AS line_amount,          (SELECT   concatenated_segments             FROM   gl_code_combinations_kfv gcc            WHERE   gcc.code_combination_id = pda.code_combination_id)             charge_account,          rsh...