Sample HZ API's script to Create Contacts and Contact Points in Oracle


1. Below Code will create Contact Point in Oracle.

DECLARE
   P_CONTACT_POINT_REC   HZ_CONTACT_POINT_V2PUB.CONTACT_POINT_REC_TYPE;
   P_PHONE_REC           HZ_CONTACT_POINT_V2PUB.PHONE_REC_TYPE;
   P_EDI_REC_TYPE        HZ_CONTACT_POINT_V2PUB.EDI_REC_TYPE;
   P_EMAIL_REC_TYPE      HZ_CONTACT_POINT_V2PUB.EMAIL_REC_TYPE;
   P_TELEX_REC_TYPE      HZ_CONTACT_POINT_V2PUB.TELEX_REC_TYPE;
   P_WEB_REC_TYPE        HZ_CONTACT_POINT_V2PUB.WEB_REC_TYPE;
   X_RETURN_STATUS       VARCHAR2 (1000);
   X_CONTACT_POINT_ID    NUMBER;
   X_MSG_COUNT           NUMBER;
   X_MSG_DATA            VARCHAR2 (1000);
BEGIN
   P_CONTACT_POINT_REC.CONTACT_POINT_TYPE := 'EMAIL';
   P_CONTACT_POINT_REC.OWNER_TABLE_NAME := 'HZ_PARTIES';
   P_CONTACT_POINT_REC.OWNER_TABLE_ID := 150336; ---L_ORG_PARTY_ID; commented by  pranay tiwari on 05-Jun-2014
   P_CONTACT_POINT_REC.CREATED_BY_MODULE := 'TCA_V2_API';
   ----email
   P_EMAIL_REC_TYPE.EMAIL_FORMAT := 'MAILHTML';
   P_EMAIL_REC_TYPE.EMAIL_ADDRESS := 'PRANAYT@KPIT.COM';
   P_CONTACT_POINT_REC.ORIG_SYSTEM_REFERENCE := '145989';
   P_CONTACT_POINT_REC.ORIG_SYSTEM := 'NSBC_AS400';
   HZ_CONTACT_POINT_V2PUB.CREATE_CONTACT_POINT ('T',
                                                P_CONTACT_POINT_REC,
                                                P_EDI_REC_TYPE,
                                                P_EMAIL_REC_TYPE,
                                                P_PHONE_REC,
                                                P_TELEX_REC_TYPE,
                                                P_WEB_REC_TYPE,
                                                X_CONTACT_POINT_ID,
                                                X_RETURN_STATUS,
                                                X_MSG_COUNT,
                                                X_MSG_DATA);


   IF X_RETURN_STATUS = 'S'
   THEN
      DBMS_OUTPUT.PUT_LINE ('API SUCESSFULLY COMPLETED:' || X_RETURN_STATUS);
   ELSE
      DBMS_OUTPUT.PUT_LINE ('API SUCESSFULLY COMPLETED:' || X_RETURN_STATUS);
      DBMS_OUTPUT.PUT_LINE ('API ERROR :' || X_MSG_DATA);
   END IF;
END;


2.Below script will deactivate Contact Points in Oracle.

DECLARE
   l_phone_rec            HZ_CONTACT_POINT_V2PUB.phone_rec_type;
   l_email_rec            HZ_CONTACT_POINT_V2PUB.email_rec_type;
   l_contact_point_rec    HZ_CONTACT_POINT_V2PUB.contact_point_rec_type;
   l_contact_point_type   VARCHAR2 (100) := 'EMAIL';                --'PHONE';
   l_obj_num              NUMBER := 2;
   p_party_id             HZ_PARTIES.party_id%TYPE;
   x_msg_count            NUMBER;
   x_msg_data             VARCHAR2 (2000);
   x_return_status        VARCHAR2 (1000);
BEGIN
   l_contact_point_rec.contact_point_type := 'EMAIL'; --PHONE primary and secondary
   l_contact_point_rec.status := 'I';
   l_contact_point_rec.owner_table_name := 'HZ_PARTY_SITES';
   l_contact_point_rec.owner_table_id := 6263;  ---party_site_id
--   l_contact_point_rec.primary_flag := 'N';
   l_contact_point_rec.content_source_type := 'USER_ENTERED';
   l_contact_point_rec.contact_point_id := 61220; ---contact_point_id

   HZ_CONTACT_POINT_V2PUB.update_contact_point (
      p_init_msg_list           => fnd_api.g_false,
      p_contact_point_rec       => l_contact_point_rec,
      p_email_rec               => l_email_rec,
      p_phone_rec               => l_phone_rec,
      p_object_version_number   => l_obj_num,
      x_return_status           => x_return_status,
      x_msg_count               => x_msg_count,
      x_msg_data                => x_msg_data
   );
   DBMS_OUTPUT.put_line ('Return Status :' || x_return_status);

   IF x_return_status <> 'S'
   THEN
      FOR k IN 1 .. x_msg_count
      LOOP
         x_msg_data := fnd_msg_pub.get (p_msg_index => k, p_encoded => 'F');
         DBMS_OUTPUT.put_line ('Error:' || x_msg_data);
      END LOOP;
   END IF;
END;


3. Below Sample scripts will create Person in Oracle


DECLARE
   P_CREATE_PERSON_REC   HZ_PARTY_V2PUB.PERSON_REC_TYPE;
   X_PARTY_ID            NUMBER;
   X_PARTY_NUMBER        VARCHAR2 (100);
   X_PROFILE_ID          NUMBER;
   X_RETURN_STATUS       VARCHAR2 (1000);
   X_MSG_COUNT           NUMBER;
   X_MSG_DATA            VARCHAR2 (1000);
BEGIN
   -- p_create_person_rec.person_pre_name_adjunct := 'MR.';
   P_CREATE_PERSON_REC.PERSON_FIRST_NAME := 'Aditya';
   P_CREATE_PERSON_REC.PERSON_LAST_NAME := 'Sharma';
   P_CREATE_PERSON_REC.CREATED_BY_MODULE := 'TCA_V2_API';
   P_CREATE_PERSON_REC.PARTY_REC.ORIG_SYSTEM_REFERENCE := '1459891';
   ----P_CREATE_PERSON_REC.PARTY_REC.ORIG_SYSTEM := L_CON_ORIG_SYSTEM;
   HZ_PARTY_V2PUB.CREATE_PERSON ('T',
                                 P_CREATE_PERSON_REC,
                                 X_PARTY_ID,
                                 X_PARTY_NUMBER,
                                 X_PROFILE_ID,
                                 X_RETURN_STATUS,
                                 X_MSG_COUNT,
                                 X_MSG_DATA);

   DBMS_OUTPUT.PUT_LINE ('Result:' || X_RETURN_STATUS);

   IF X_RETURN_STATUS = 'S'
   THEN
      DBMS_OUTPUT.PUT_LINE ('API SUCESSFULLY COMPLETED:' || X_RETURN_STATUS);
   ELSE
      DBMS_OUTPUT.PUT_LINE ('API SUCESSFULLY COMPLETED:' || X_RETURN_STATUS);
      DBMS_OUTPUT.PUT_LINE ('API ERROR :' || X_MSG_DATA);
   END IF;
END;



3. Below Sample scripts will create ORG Contact in Oracle


DECLARE
   P_ORG_CONTACT_REC   HZ_PARTY_CONTACT_V2PUB.ORG_CONTACT_REC_TYPE;
   X_ORG_CONTACT_ID    NUMBER;
   X_PARTY_REL_ID      NUMBER;
   X_PARTY_ID          NUMBER;
   X_PARTY_NUMBER      VARCHAR2 (100);
   X_RETURN_STATUS     VARCHAR2 (1000);
   X_MSG_COUNT         NUMBER;
   X_MSG_DATA          VARCHAR2 (1000);
BEGIN


   P_ORG_CONTACT_REC.CREATED_BY_MODULE := 'TCA_V2_API';
   P_ORG_CONTACT_REC.PARTY_REL_REC.SUBJECT_ID := 150335;
   P_ORG_CONTACT_REC.PARTY_REL_REC.SUBJECT_TYPE := 'PERSON';
   P_ORG_CONTACT_REC.PARTY_REL_REC.SUBJECT_TABLE_NAME := 'HZ_PARTIES';
   P_ORG_CONTACT_REC.PARTY_REL_REC.OBJECT_ID := 17389;
   P_ORG_CONTACT_REC.PARTY_REL_REC.OBJECT_TYPE := 'ORGANIZATION';
   P_ORG_CONTACT_REC.PARTY_REL_REC.OBJECT_TABLE_NAME := 'HZ_PARTIES';
   P_ORG_CONTACT_REC.PARTY_REL_REC.RELATIONSHIP_CODE := 'CONTACT_OF';

   P_ORG_CONTACT_REC.PARTY_REL_REC.RELATIONSHIP_TYPE := 'CONTACT';

   P_ORG_CONTACT_REC.PARTY_REL_REC.START_DATE := SYSDATE;
   P_ORG_CONTACT_REC.ORIG_SYSTEM_REFERENCE := 1459891;
   P_ORG_CONTACT_REC.ORIG_SYSTEM := 'NSBC_AS400';
   HZ_PARTY_CONTACT_V2PUB.CREATE_ORG_CONTACT ('T',
                                              P_ORG_CONTACT_REC,
                                              X_ORG_CONTACT_ID,
                                              X_PARTY_REL_ID,
                                              X_PARTY_ID,
                                              X_PARTY_NUMBER,
                                              X_RETURN_STATUS,
                                              X_MSG_COUNT,
                                              X_MSG_DATA);
   DBMS_OUTPUT.PUT_LINE ('Result:' || X_PARTY_ID);

   IF X_RETURN_STATUS = 'S'
   THEN
      DBMS_OUTPUT.PUT_LINE ('API SUCESSFULLY COMPLETED:' || X_RETURN_STATUS);
   ELSE
      DBMS_OUTPUT.PUT_LINE ('API SUCESSFULLY COMPLETED:' || X_RETURN_STATUS);
      DBMS_OUTPUT.PUT_LINE ('API ERROR :' || X_MSG_DATA);
   END IF;
END;
______________________________________________________________________



/*********** Create contact points************/

DECLARE
   P_CREATE_PERSON_REC   HZ_PARTY_V2PUB.PERSON_REC_TYPE;
   X_PARTY_ID            NUMBER;
   X_PARTY_NUMBER        VARCHAR2 (100);
   X_PROFILE_ID          NUMBER;
   X_RETURN_STATUS       VARCHAR2 (1000);
   X_MSG_COUNT           NUMBER;
   X_MSG_DATA            VARCHAR2 (1000);
BEGIN
fnd_global.APPS_INITIALIZE(user_id=>29453, 
                           resp_id=>50693 , 
                           resp_appl_id=>660);
   -- p_create_person_rec.person_pre_name_adjunct := 'MR.';
   P_CREATE_PERSON_REC.PERSON_FIRST_NAME := 'Joe';
   P_CREATE_PERSON_REC.PERSON_LAST_NAME := 'Cloud';
   P_CREATE_PERSON_REC.CREATED_BY_MODULE := 'TCA_V2_API';
  -- P_CREATE_PERSON_REC.PARTY_REC.ORIG_SYSTEM_REFERENCE := '1459891';
   ----P_CREATE_PERSON_REC.PARTY_REC.ORIG_SYSTEM := L_CON_ORIG_SYSTEM;
   HZ_PARTY_V2PUB.CREATE_PERSON ('T',
                                 P_CREATE_PERSON_REC,
                                 X_PARTY_ID,
                                 X_PARTY_NUMBER,
                                 X_PROFILE_ID,
                                 X_RETURN_STATUS,
                                 X_MSG_COUNT,
                                 X_MSG_DATA);

   DBMS_OUTPUT.PUT_LINE ('Result:' || X_RETURN_STATUS);

   IF X_RETURN_STATUS = 'S'
   THEN
   COMMIT;
      DBMS_OUTPUT.PUT_LINE ('API SUCESSFULLY COMPLETED:' || X_RETURN_STATUS||'-'||X_PARTY_ID); ---contact party id 
   ELSE
      DBMS_OUTPUT.PUT_LINE ('API SUCESSFULLY COMPLETED:' || X_RETURN_STATUS);
      DBMS_OUTPUT.PUT_LINE ('API ERROR :' || X_MSG_DATA);
   END IF;
END;

/*_____________________*/





DECLARE
   P_ORG_CONTACT_REC   HZ_PARTY_CONTACT_V2PUB.ORG_CONTACT_REC_TYPE;
   X_ORG_CONTACT_ID    NUMBER;
   X_PARTY_REL_ID      NUMBER;
   X_PARTY_ID          NUMBER;
   X_PARTY_NUMBER      VARCHAR2 (100);
   X_RETURN_STATUS     VARCHAR2 (1000);
   X_MSG_COUNT         NUMBER;
   X_MSG_DATA          VARCHAR2 (1000);
BEGIN
fnd_global.APPS_INITIALIZE(user_id=>29453, 
                           resp_id=>50831, 
                           resp_appl_id=>660);

   P_ORG_CONTACT_REC.CREATED_BY_MODULE := 'TCA_V2_API';
   P_ORG_CONTACT_REC.PARTY_REL_REC.SUBJECT_ID := 1762348;  ---CONTACT PARTY ID   1761349

   P_ORG_CONTACT_REC.PARTY_REL_REC.SUBJECT_TYPE := 'PERSON';
   P_ORG_CONTACT_REC.PARTY_REL_REC.SUBJECT_TABLE_NAME := 'HZ_PARTIES';
   P_ORG_CONTACT_REC.PARTY_REL_REC.OBJECT_ID := 15286;   -- cUSTOMER YOU WANT TO ASSOCIATE PARTY ID 
   P_ORG_CONTACT_REC.PARTY_REL_REC.OBJECT_TYPE := 'ORGANIZATION';
   P_ORG_CONTACT_REC.PARTY_REL_REC.OBJECT_TABLE_NAME := 'HZ_PARTIES';
   P_ORG_CONTACT_REC.PARTY_REL_REC.RELATIONSHIP_CODE := 'CONTACT_OF';

   P_ORG_CONTACT_REC.PARTY_REL_REC.RELATIONSHIP_TYPE := 'CONTACT';

   P_ORG_CONTACT_REC.PARTY_REL_REC.START_DATE := SYSDATE;
  --- P_ORG_CONTACT_REC.ORIG_SYSTEM_REFERENCE := 1459891;
  -- P_ORG_CONTACT_REC.ORIG_SYSTEM := 'NSBC_AS400';
   HZ_PARTY_CONTACT_V2PUB.CREATE_ORG_CONTACT ('T',
                                              P_ORG_CONTACT_REC,
                                              X_ORG_CONTACT_ID,
                                              X_PARTY_REL_ID,
                                              X_PARTY_ID,
                                              X_PARTY_NUMBER,
                                              X_RETURN_STATUS,
                                              X_MSG_COUNT,
                                              X_MSG_DATA);
   DBMS_OUTPUT.PUT_LINE ('Result:' || X_PARTY_ID);

   IF X_RETURN_STATUS = 'S'
   THEN
      COMMIT;
      DBMS_OUTPUT.PUT_LINE ('API SUCESSFULLY COMPLETED:' || X_RETURN_STATUS||'-'||X_PARTY_ID||'-'||X_ORG_CONTACT_ID);
      
   ELSE
      DBMS_OUTPUT.PUT_LINE ('API SUCESSFULLY COMPLETED:' || X_RETURN_STATUS);
      DBMS_OUTPUT.PUT_LINE ('API ERROR :' || X_MSG_DATA);
   END IF;
END;



/***********************************************************************
 *PURPOSE: To Create the Contact at Account/Site level of the Customer *
 *AUTHOR: Shailender Thallam                                           *
 ***********************************************************************/
SET define off;
SET serveroutput ON;
 
DECLARE
   p_cr_cust_acc_role_rec   hz_cust_account_role_v2pub.cust_account_role_rec_type;
   lv_api_message           VARCHAR2 (4000);
   lv_msg_index_out         NUMBER;
   x_cust_account_role_id   NUMBER;
   x_return_status          VARCHAR2 (2000);
   x_msg_count              NUMBER;
   x_msg_data               VARCHAR2 (2000);
BEGIN
   -- NOTE:
   -- must be unique CUST_ACCOUNT_ID, CUST_ACCT_SITE_ID, PARTY_ID,ROLE_TYPE
   --
   p_cr_cust_acc_role_rec.party_id := 1762350;   --- PART RELATION SHIP FROM API 2 
   p_cr_cust_acc_role_rec.cust_account_id := 1662; --  CUST ACCOUNT ID OF A CUSTOMER YOU WANT TO ASSOCIATE 
   p_cr_cust_acc_role_rec.cust_acct_site_id := 4832; -- CUST ACCT SITE HZ_CUST_ACCT_SITES_ALL 
-- p_cr_cust_acc_role_rec.primary_flag := 'Y';
   p_cr_cust_acc_role_rec.role_type := 'CONTACT';
   p_cr_cust_acc_role_rec.created_by_module := 'HZ_CPUI';
   mo_global.init ('AR');
--
   hz_cust_account_role_v2pub.create_cust_account_role
                                                     ('T',
                                                      p_cr_cust_acc_role_rec,
                                                      x_cust_account_role_id,
                                                      x_return_status,
                                                      x_msg_count,
                                                      x_msg_data
                                                     );
   DBMS_OUTPUT.put_line ('***************************');
   DBMS_OUTPUT.put_line ('Output information ....');
   --
   --Capturing error if not success 
   --
   IF x_return_status <> fnd_api.g_ret_sts_success
   THEN
      FOR i IN 1 .. fnd_msg_pub.count_msg
      LOOP
         fnd_msg_pub.get (p_msg_index          => i,
                          p_encoded            => fnd_api.g_false,
                          p_data               => x_msg_data,
                          p_msg_index_out      => lv_msg_index_out
                         );
         lv_api_message := lv_api_message || ' ~ ' || x_msg_data;
      END LOOP;
 
      DBMS_OUTPUT.put_line ('Error: ' || lv_api_message);
   ELSIF (x_return_status = fnd_api.g_ret_sts_success)
   THEN
      DBMS_OUTPUT.put_line ('Success');
      DBMS_OUTPUT.put_line (   'x_cust_account_role_id: '
                            || x_cust_account_role_id
                           );
   END IF;
 
   DBMS_OUTPUT.put_line ('***************************');
   COMMIT;
END;
/










DECLARE
   P_CONTACT_POINT_REC   HZ_CONTACT_POINT_V2PUB.CONTACT_POINT_REC_TYPE;
   P_PHONE_REC           HZ_CONTACT_POINT_V2PUB.PHONE_REC_TYPE;
   P_EDI_REC_TYPE        HZ_CONTACT_POINT_V2PUB.EDI_REC_TYPE;
   P_EMAIL_REC_TYPE      HZ_CONTACT_POINT_V2PUB.EMAIL_REC_TYPE;
   P_TELEX_REC_TYPE      HZ_CONTACT_POINT_V2PUB.TELEX_REC_TYPE;
   P_WEB_REC_TYPE        HZ_CONTACT_POINT_V2PUB.WEB_REC_TYPE;
   X_RETURN_STATUS       VARCHAR2 (1000);
   X_CONTACT_POINT_ID    NUMBER;
   X_MSG_COUNT           NUMBER;
   X_MSG_DATA            VARCHAR2 (1000);
BEGIN
   P_CONTACT_POINT_REC.CONTACT_POINT_TYPE := 'EMAIL';
   P_CONTACT_POINT_REC.OWNER_TABLE_NAME := 'HZ_PARTIES';
   P_CONTACT_POINT_REC.OWNER_TABLE_ID := 1762350; ---PARTY FROM API 2 
   P_CONTACT_POINT_REC.CREATED_BY_MODULE := 'TCA_V2_API';
   ----email
   P_EMAIL_REC_TYPE.EMAIL_FORMAT := 'MAILHTML';
   P_EMAIL_REC_TYPE.EMAIL_ADDRESS := 'PRAMODT@KPIT.COM';
  
   HZ_CONTACT_POINT_V2PUB.CREATE_CONTACT_POINT ('T',
                                                P_CONTACT_POINT_REC,
                                                P_EDI_REC_TYPE,
                                                P_EMAIL_REC_TYPE,
                                                P_PHONE_REC,
                                                P_TELEX_REC_TYPE,
                                                P_WEB_REC_TYPE,
                                                X_CONTACT_POINT_ID,
                                                X_RETURN_STATUS,
                                                X_MSG_COUNT,
                                                X_MSG_DATA);


   IF X_RETURN_STATUS = 'S'
   THEN
      DBMS_OUTPUT.PUT_LINE ('API SUCESSFULLY COMPLETED:' || X_RETURN_STATUS);
   ELSE
      DBMS_OUTPUT.PUT_LINE ('API SUCESSFULLY COMPLETED:' || X_RETURN_STATUS);
      DBMS_OUTPUT.PUT_LINE ('API ERROR :' || X_MSG_DATA);
   END IF;
END;

Comments

Post a Comment

Popular posts from this blog

Sample API Code for AR_RECEIPT_API_PUB.Apply