Thursday, 6 December 2018

API List


API :  An application programming interface (API) is a particular set of rules ('code') and specifications that software programs can follow to communicate with each other. It serves as an interface between different software programs and facilitates their interaction, similar to the way the user interface facilitates interaction between humans and computers.

Examples
  • EGO_ITEM_PUB.PROCESS_ITEMS  --To create Item
  • AP_VENDOR_PUB_PKG.CREATE_VENDOR---To Create Supplier
  • AP_VENDOR_PUB_PKG.CREATE_VENDOR_CONTACT --To create Supplier contact
  • AP_VENDOR_PUB_PKG.CREATE_VENDOR_SITE --To Create Supplier Site

/* Formatted on 7/13/2015 5:38:07 PM (QP5 v5.163.1008.3004) */
DECLARE
   l_item_tbl_typ    ego_item_pub.item_tbl_type;
   x_item_tbl_typ    ego_item_pub.item_tbl_type;
   x_return_status   VARCHAR2 (100);
   x_msg_count       NUMBER;
   x_message_list    error_handler.error_tbl_type;
BEGIN
   fnd_global.apps_initialize (11224, 20634, 401);
   l_item_tbl_typ (1).transaction_type := ego_item_pub.g_ttype_update;
   l_item_tbl_typ (1).inventory_item_id := 646;
   l_item_tbl_typ (1).organization_id := 103;
   l_item_tbl_typ (1).pick_components_flag := 'Y';
   ego_item_pub.process_items (
      p_api_version      => 1.0,
      p_init_msg_list    => fnd_api.g_false,
      p_commit           => fnd_api.g_true,
      p_item_tbl         => l_item_tbl_typ,
      x_item_tbl         => x_item_tbl_typ,
      p_role_grant_tbl   => ego_item_pub.g_miss_role_grant_tbl,
      x_return_status    => x_return_status,
      x_msg_count        => x_msg_count);
   DBMS_OUTPUT.put_line ('x_return_status : ' || x_return_status);
   error_handler.get_message_list (x_message_list);

   FOR i IN 1 .. x_message_list.COUNT
   LOOP
      DBMS_OUTPUT.put_line (x_message_list (i).MESSAGE_TEXT);
   END LOOP;

   COMMIT;
END;

--===============================================================

SET SERVEROUTPUT ON

DECLARE
   l_item_tbl_typ        ego_item_pub.item_tbl_type;
   x_item_table          ego_item_pub.item_tbl_type;
   x_inventory_item_id   mtl_system_items_b.inventory_item_id%TYPE;
   x_organization_id     mtl_system_items_b.organization_id%TYPE;
   x_return_status       VARCHAR2 (1);
   x_msg_count           NUMBER (10);
   x_msg_data            VARCHAR2 (1000);
   x_message_list        error_handler.error_tbl_type;
BEGIN
   --Setting FND global variables.
   --Replace MFG user name with appropriate user name.
   fnd_global.apps_initialize (11224, 20634, 401);
   --FIRST Item definition
   l_item_tbl_typ (1).transaction_type := 'UPDATE'; -- Replace this with 'UPDATE' for update transaction.
   l_item_tbl_typ (1).inventory_item_id := 646;
   l_item_tbl_typ (1).organization_id := 103;
   l_item_tbl_typ (1).pick_components_flag := 'N';
   DBMS_OUTPUT.put_line ('=====================================');
   DBMS_OUTPUT.put_line ('Calling EGO_ITEM_PUB.Process_Items API');
   ego_item_pub.process_items (p_api_version     => 1.0,
                               p_init_msg_list   => fnd_api.g_true,
                               p_commit          => fnd_api.g_true,
                               p_item_tbl        => l_item_tbl_typ,
                               x_item_tbl        => x_item_table,
                               x_return_status   => x_return_status,
                               x_msg_count       => x_msg_count);
   DBMS_OUTPUT.put_line ('==================================');
   DBMS_OUTPUT.put_line ('Return Status ==>' || x_return_status);

   IF (x_return_status = fnd_api.g_ret_sts_success)
   THEN
      FOR i IN 1 .. x_item_table.COUNT
      LOOP
         DBMS_OUTPUT.put_line (
            'Inventory Item Id :'
            || TO_CHAR (x_item_table (i).inventory_item_id));
         DBMS_OUTPUT.put_line (
            'Organization Id   :'
            || TO_CHAR (x_item_table (i).organization_id));
      END LOOP;
   ELSE
      DBMS_OUTPUT.put_line ('Error Messages :');
      error_handler.get_message_list (x_message_list => x_message_list);

      FOR i IN 1 .. x_message_list.COUNT
      LOOP
         DBMS_OUTPUT.put_line (x_message_list (i).MESSAGE_TEXT);
      END LOOP;
   END IF;

   DBMS_OUTPUT.put_line ('==================================');
EXCEPTION
   WHEN OTHERS
   THEN
      DBMS_OUTPUT.put_line ('Exception Occured :');
      DBMS_OUTPUT.put_line (SQLCODE || ':' || SQLERRM);
      DBMS_OUTPUT.put_line ('=====================================');
END;