Oracle Leads Management API Reference

This appendix covers the following topics:

Oracle Leads Management Procedures

The following table lists the procedures which make up the Leads Public APIs.

Leads Public API Procedures
Procedure Name Description
Create Sales Lead Creates a new sales lead with the specified parameters. A unique sales lead ID will be created.
This API calls the Create Sales Lead Lines and Create Sales Lead Contacts APIs internally if the appropriate parameters are passed.
Update Sales Lead Updates the sales lead record. The sales lead record being updated must refer to a valid sales lead ID in the database and must have a valid last_update_date (who column) passed in. This is used to check if the record has not been updated by someone else since it was last loaded. If a g_miss value is passed for other fields in the sales lead record type, then these values will not be updated.
Update Sales Lead Lines Updates one or more sales lead lines. A table of sales lead line records with the parameters needs to be passed. Each sales lead line record must refer to a valid sales lead line ID in the database and must have a valid last_update_date (who col­umn passed in). This is used to check if the sales lead line record has not been updated by someone else since it was last loaded. If a g_miss value is passed for other fields in the sales lead line record type, then these will not be updated.
Delete Sales Lead Lines Deletes one or more sales lead lines. A table of sales lead line records needs to be passed in . Each sales lead line record must refer to a valid sales lead line ID in the database.
Lead Process After Create This is a wrapper of the Run Lead Engines and the Build Lead Sales Team APIs. It calls the above API based on specific logic to keep lead integrity, and launches workflow process if users want to monitor the lead.
Lead Process After Update This is a wrapper of the Run Lead Engines and the Rebuild Lead Sales Team APIs. It calls the above APIs based on specific logic to keep lead integrity.
Run Lead Engines Runs the qualification engine, rating engine, and channel selection engine.
Build Lead Sales Team Builds lead sales team based on territory definition and adds lead creator as one of lead sales team members.
Rebuild Lead Sales Team Rebuilds lead sales team to reflect the latest lead information.
Update Sales Lead Contacts Updates one or more sales lead contacts. A table of sales lead contacts records with the parameters needs to be passed in. Each sales lead contact record must refer to a valid sales lead contact ID in the database and must have a valid last_update_date (who column passed in). This is used to check if the sales lead contact record has not been updated by someone else since it was last loaded. If a g_miss value is passed for other fields in the sales lead contact record type, then these will not be updated.
Delete Sales Lead Contacts Deletes one or more sales lead contacts. A table of sales lead contact records needs to be passed in . Each sales lead contact record must refer to a valid lead contact ID in the database.

Parameter Specifications

The specifications for the public APIs provided by the Oracle CRM Application Foundation define four categories of parameters:

Standard IN and OUT parameters are specified by the Oracle Applications business object API Coding Standards, and are discussed in the following sections.

Procedure specific IN and OUT parameter are related to the API being specified, and are discussed with that individual API.

Standard IN Parameters

The following table describes standard IN parameters which are common to all APIs provided by Oracle Leads Management.

Standard IN Parameters
Parameter Data Type Required Description
p_api_version NUMBER Yes This must match the version number of the API. An unexpected error is returned if the calling program version number is incompatible with the current API ver­sion number.
p_init_msg_list VARCHAR2 Yes Default = FND_API.G_FALSE
If set to true, then the API makes a call to fnd_msg_pub.initialize to initialize the message stack.
If set to false the calling program must initialize the message stack. This action is required to be performed only once, even in the case where more than one API is called.
p_commit VARCHAR2 No Default = FND_API.G_FALSE
If set to true, the API commits before returning to the calling program.
If set to false, then it is the calling pro­gram's responsibility to commit the trans­action.
p_validation_level NUMBER No Level of validation required.
If set to NONE, no validation will be done in the API.
If set to FULL, all validations (item level and record level) will be performed.
P_check_access_flag VARCHAR2 No If set to Y, access security check is per­formed.
If set to N, access security check is not performed.
P_Admin_Flag VARCHAR2 No If set to Y, the current user has adminis­trator privileges.
If set to N, the current user does not have administrator privileges.
P_Admin_Group_Id NUMBER No If the current user has administrator priv­ileges, the user's SalesgroupID.
P_Identity_salesforce_Id NUMBER No Resource ID of the current user.

Standard OUT Parameters

The following table describes standard OUT parameters, which are common to all public APIs provided by Oracle Leads Management.

Note: All standard OUT parameters are required.

Standard OUT Parameters
Parameter Data Type Description
x_return_status VARCHAR2(1) Indicates the return status of the API. The values returned are one of the following:
FND_API.G_RET_STS_SUCCESS which indicates the API call was successful.
FND_API.G_RET_STS_ERROR which indicates there was a validation error or a missing data error.
FND_API.G_RET_STS_UNEXP_ERROR which indicates the calling program encountered an unexpected or unhandled error.
x_return_status VARCHAR2 Default = FND_API.G_FALSE
If set to true, then the API makes a call to fnd_msg_pub.initialize to initialize the message stack.
If set to false the calling program must initialize the message stack. This action is required to be performed only once, even in the case where more than one API is called.
x_msg_count NUMBER Holds the number of messages in the message list.If the error message returned is one, then the message count will be zero.
x_msg_data VARCHAR2(2000) Error message returned by the API. If the number of messages is more than one, this parameter will be NULL and the messages must be extracted from the message stack.

Type Declarations

TYPE SALES_LEAD_Rec_Type IS RECORD

(

SALES_LEAD_ID                   NUMBER := FND_API.G_MISS_NUM,

LAST_UPDATE_DATE                DATE := FND_API.G_MISS_DATE,

LAST_UPDATED_BY                 NUMBER := FND_API.G_MISS_NUM,

CREATION_DATE                   DATE := FND_API.G_MISS_DATE,

CREATED_BY                      NUMBER := FND_API.G_MISS_NUM,

LAST_UPDATE_LOGIN               NUMBER := FND_API.G_MISS_NUM,

REQUEST_ID                      NUMBER := FND_API.G_MISS_NUM,

PROGRAM_APPLICATION_ID          NUMBER := FND_API.G_MISS_NUM,

PROGRAM_ID                      NUMBER := FND_API.G_MISS_NUM,

PROGRAM_UPDATE_DATE             DATE := FND_API.G_MISS_DATE,

LEAD_NUMBER                     VARCHAR2(30) := FND_API.G_MISS_CHAR,

STATUS_CODE                     VARCHAR2(30) := FND_API.G_MISS_CHAR,

CUSTOMER_ID                     NUMBER := FND_API.G_MISS_NUM,

ADDRESS_ID                      NUMBER := FND_API.G_MISS_NUM,

SOURCE_PROMOTION_ID             NUMBER := FND_API.G_MISS_NUM,

INITIATING_CONTACT_ID           NUMBER := FND_API.G_MISS_NUM,

ORIG_SYSTEM_REFERENCE           VARCHAR2(240) := FND_API.G_MISS_CHAR,

CONTACT_ROLE_CODE               VARCHAR2(30) := FND_API.G_MISS_CHAR,

CHANNEL_CODE                    VARCHAR2(30) := FND_API.G_MISS_CHAR,

BUDGET_AMOUNT                   NUMBER := FND_API.G_MISS_NUM,

CURRENCY_CODE                   VARCHAR2(15) := FND_API.G_MISS_CHAR,

DECISION_TIMEFRAME_CODE         VARCHAR2(30) := FND_API.G_MISS_CHAR,

CLOSE_REASON                    VARCHAR2(30) := FND_API.G_MISS_CHAR,

LEAD_RANK_ID                    NUMBER := FND_API.G_MISS_NUM,

LEAD_RANK_CODE                  VARCHAR2(30) := FND_API.G_MISS_CHAR,

PARENT_PROJECT                  VARCHAR2(80) := FND_API.G_MISS_CHAR,

DESCRIPTION                     VARCHAR2(2000) := FND_API.G_MISS_CHAR,

ATTRIBUTE_CATEGORY              VARCHAR2(30) := FND_API.G_MISS_CHAR,

ATRIBUTE1                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE2                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE3                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE4                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE5                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE6                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE7                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE8                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE9                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE10                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE11                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE12                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE13                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE14                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE15                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ASSIGN_TO_PERSON_ID             NUMBER := FND_API.G_MISS_NUM,

ASSIGN_TO_SALESFORCE_ID         NUMBER := FND_API.G_MISS_NUM,

ASSIGN_SALES_GROUP_ID           NUMBER := FND_API.G_MISS_NUM,

ASSIGN_DATE                     DATE := FND_API.G_MISS_DATE,

BUDGET_STATUS_CODE              VARCHAR2(30) := FND_API.G_MISS_CHAR,

ACCEPT_FLAG                     VARCHAR2(1) := FND_API.G_MISS_CHAR,

VEHICLE_RESPONSE_CODE           VARCHAR2(30) := FND_API.G_MISS_CHAR,

TOTAL_SCORE                     NUMBER := FND_API.G_MISS_NUM,

SCORECARD_ID                    NUMBER := FND_API.G_MISS_NUM,

KEEP_FLAG                       VARCHAR2(1) := FND_API.G_MISS_CHAR,

URGENT_FLAG                     VARCHAR2(1) := FND_API.G_MISS_CHAR,

IMPORT_FLAG                     VARCHAR2(1) := FND_API.G_MISS_CHAR,

REJECT_REASON_CODE              VARCHAR2(30) := FND_API.G_MISS_CHAR,

DELETED_FLAG                    VARCHAR2(1) := FND_API.G_MISS_CHAR,

OFFER_ID                        NUMBER := FND_API.G_MISS_NUM,

INCUMBENT_PARTNER_PARTY_ID      NUMBER := FND_API.G_MISS_NUM,

INCUMBENT_PARTNER_RESOURCE_ID   NUMBER := FND_API.G_MISS_NUM,

PRM_EXEC_SPONSOR_FLAG           VARCHAR2(1) := FND_API.G_MISS_CHAR,

PRM_PRJ_LEAD_IN_PLACE_FLAG      VARCHAR2(1) := FND_API.G_MISS_CHAR,

PRM_SALES_LEAD_TYPE             VARCHAR2(30) := FND_API.G_MISS_CHAR,

PRM_IND_CLASSIFICATION_CODE     VARCHAR2(30) := FND_API.G_MISS_CHAR,

QUALIFIED_FLAG                  VARCHAR2(1) := FND_API.G_MISS_CHAR,

ORIG_SYSTEM_CODE                VARCHAR2(30) := FND_API.G_MISS_CHAR,

PRM_ASSIGNMENT_TYPE             VARCHAR2(30) := FND_API.G_MISS_CHAR,

AUTO_ASSIGNMENT_TYPE            VARCHAR2(30) := FND_API.G_MISS_CHAR,

PRIMARY_CONTACT_PARTY_ID        NUMBER := FND_API.G_MISS_NUM,       

PRIMARY_CNT_PERSON_PARTY_ID     NUMBER := FND_API.G_MISS_NUM,

PRIMARY_CONTACT_PHONE_ID        NUMBER := FND_API.G_MISS_NUM,

REFERRED_BY                     NUMBER := FND_API.G_MISS_NUM,

REFERRAL_TYPE                   VARCHAR2(30) := FND_API.G_MISS_CHAR,

REFERRAL_STATUS                 VARCHAR2(30) := FND_API.G_MISS_CHAR,

REF_DECLINE_REASON              VARCHAR2(30) := FND_API.G_MISS_CHAR,

REF_COMM_LTR_STATUS             VARCHAR2(30) := FND_API.G_MISS_CHAR,

REF_ORDER_NUMBER                NUMBER := FND_API.G_MISS_NUM, 

REF_ORDER_AMT                   NUMBER := FND_API.G_MISS_NUM, 

REF_COMM_AMT                    NUMBER := FND_API.G_MISS_NUM 

);

G_MISS_SALES_LEAD_REC          SALES_LEAD_Rec_Type;

TYPE  SALES_LEAD_Tbl_Type      IS TABLE OF SALES_LEAD_Rec_Type

G_MISS_SALES_LEAD_TBL          SALES_LEAD_Tbl_Type;

TYPE SALES_LEAD_LINE_Rec_Type IS RECORD

(

SALES_LEAD_LINE_ID              NUMBER := FND_API.G_MISS_NUM,

LAST_UPDATE_DATE                DATE := FND_API.G_MISS_DATE,

LAST_UPDATED_BY                 NUMBER := FND_API.G_MISS_NUM,

CREATION_DATE                   DATE := FND_API.G_MISS_DATE,

CREATED_BY                      NUMBER := FND_API.G_MISS_NUM,

LAST_UPDATE_LOGIN               NUMBER := FND_API.G_MISS_NUM,

REQUEST_ID                      NUMBER := FND_API.G_MISS_NUM,

PROGRAM_APPLICATION_ID          NUMBER := FND_API.G_MISS_NUM,

PROGRAM_ID                      NUMBER := FND_API.G_MISS_NUM,

PROGRAM_UPDATE_DATE             DATE := FND_API.G_MISS_DATE,

SALES_LEAD_ID                   NUMBER := FND_API.G_MISS_NUM,

STATUS_CODE                     VARCHAR2(30) := FND_API.G_MISS_CHAR,

INTEREST_TYPE_ID                NUMBER := FND_API.G_MISS_NUM,

PRIMARY_INTEREST_CODE_ID        NUMBER := FND_API.G_MISS_NUM,

SECONDARY_INTEREST_CODE_ID      NUMBER := FND_API.G_MISS_NUM,

INVENTORY_ITEM_ID               NUMBER := FND_API.G_MISS_NUM,

ORGANIZATION_ID                 NUMBER := FND_API.G_MISS_NUM,

UOM_CODE                        VARCHAR2(3) := FND_API.G_MISS_CHAR,

QUANTITY                        NUMBER := FND_API.G_MISS_NUM,

BUDGET_AMOUNT                   NUMBER := FND_API.G_MISS_NUM,

SOURCE_PROMOTION_ID             NUMBER := FND_API.G_MISS_NUM,

ATTRIBUTE_CATEGORY              VARCHAR2(30) := FND_API.G_MISS_CHAR,

ATTRIBUTE1                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

TTRIBUTE2                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE3                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE4                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE5                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE6                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE7                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE8                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE9                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE10                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE11                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE12                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE13                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE14                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE15                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

OFFER_ID                        NUMBER        := FND_API.G_MISS_NUM

CATEGORY_SET_ID                 NUMBER        := FND_API.G_MISS_NUM

CATEGORY_ID                     NUMBER        := FND_API.G_MISS_NUM

);

G_MISS_SALES_LEAD_LINE_REC          SALES_LEAD_LINE_Rec_Type;

TYPE  SALES_LEAD_LINE_Tbl_Type      IS TABLE OF SALES_LEAD_LINE_Rec_Type

G_MISS_SALES_LEAD_LINE_TBL          SALES_LEAD_LINE_Tbl_Type;

TYPE SALES_LEAD_LINE_OUT_Rec_Type   IS RECORD                     

(                                                            

SALES_LEAD_LINE_ID             NUMBER,

RETURN_STATUS                  VARCHAR2(1)

);                                                           

TYPE SALES_LEAD_LINE_OUT_Tbl_Type   IS TABLE OF SALES_LEAD_LINE_OUT_Rec_Typ INDEX BY BINARY_INTEGER;   

TYPE SALES_LEAD_CONTACT_Rec_Type IS RECORD

(

LEAD_CONTACT_ID                 NUMBER := FND_API.G_MISS_NUM,

SALES_LEAD_ID                   NUMBER := FND_API.G_MISS_NUM,

CONTACT_ID                      NUMBER := FND_API.G_MISS_NUM,

LAST_UPDATE_DATE                DATE := FND_API.G_MISS_DATE,

LAST_UPDATED_BY                 NUMBER := FND_API.G_MISS_NUM,

CREATION_DATE                   DATE := FND_API.G_MISS_DATE,

CREATED_BY                      NUMBER := FND_API.G_MISS_NUM,

LAST_UPDATE_LOGIN               NUMBER := FND_API.G_MISS_NUM,

REQUEST_ID                      NUMBER := FND_API.G_MISS_NUM,

PROGRAM_APPLICATION_ID          NUMBER := FND_API.G_MISS_NUM,

PROGRAM_ID                      NUMBER := FND_API.G_MISS_NUM,

PROGRAM_UPDATE_DATE             DATE := FND_API.G_MISS_DATE,

ENABLED_FLAG                    VARCHAR2(1) := FND_API.G_MISS_CHAR,

RANK                            VARCHAR2(30) := FND_API.G_MISS_CHAR,

CUSTOMER_ID                     NUMBER := FND_API.G_MISS_NUM,

ADDRESS_ID                      NUMBER := FND_API.G_MISS_NUM,

PHONE_ID                        NUMBER := FND_API.G_MISS_NUM,

CONTACT_ROLE_CODE               VARCHAR2(30) := FND_API.G_MISS_CHAR,

PRIMARY_CONTACT_FLAG            VARCHAR2(1) := FND_API.G_MISS_CHAR,

ATTRIBUTE_CATEGORY              VARCHAR2(30) := FND_API.G_MISS_CHAR,

ATTRIBUTE1                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE2                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE3                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE4                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE5                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE6                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE7                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE8                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE9                      VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE10                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE11                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE12                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE13                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE14                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

ATTRIBUTE15                     VARCHAR2(150) := FND_API.G_MISS_CHAR,

CONTACT_PARTY_ID                NUMBER := FND_API.G_MISS_NUM

);

G_MISS_SALES_LEAD_CONTACT_REC          SALES_LEAD_CONTACT_Rec_Type;

TYPE  SALES_LEAD_CONTACT_Tbl_Type      IS TABLE OF SALES_LEAD_CONTACT_Rec_Type

G_MISS_SALES_LEAD_CONTACT_TBL          SALES_LEAD_CONTACT_Tbl_Type;

TYPE SALES_LEAD_CNT_OUT_Rec_Type   IS RECORD                     

(                                                            

LEAD_CONTACT_ID                NUMBER,

RETURN_STATUS                  VARCHAR2(1)

);                                                           

TYPE SALES_LEAD_CNT_OUT_Tbl_Type   IS TABLE OF SALES_LEAD_CNT_OUT_Rec_Type

TYPE LEAD_ENGINES_OUT_Rec_Type   IS RECORD

(

qualified_flag                 VARCHAR2(1),

lead_rank_id                   NUMBER,

channel_code                   VARCHAR2(30),

indirect_channel_flag          VARCHAR2(1),

sales_team_flag                VARCHAR2(1)

);

Create Sales Lead

The Create Sales procedure creates a sales lead with the parameters specified. A unique sales lead ID is created.

Note: The Create Sales Lead API is an atomic API in the AML_SALES_LEAD_V2_PUB package. It is not the same as the Create Sales Lead API in the AS_SALES_LEADS_PUB package.

Procedure Specification

PROCEDURE Create_sales_lead (

    P_Api_Version_Number     IN  NUMBER,

    P_Init_Msg_List          IN  VARCHAR2     := FND_API.G_FALSE,

    P_Commit                 IN  VARCHAR2     := FND_API.G_FALSE,

    P_Validation_Level       IN  NUMBER       := FND_API.G_VALID_LEVEL_FULL,

    P_Check_Access_Flag      IN  VARCHAR2     := FND_API.G_MISS_CHAR,

    P_Admin_Flag             IN  VARCHAR2     := FND_API.G_MISS_CHAR,

    P_Admin_Group_Id         IN  NUMBER       := FND_API.G_MISS_NUM,

    P_Identity_Salesforce_Id IN  NUMBER       := FND_API.G_MISS_NUM,

    P_Sales_Lead_Profile_Tbl IN  AS_UTILITY_PUB.Profile_Tbl_Type

                                 := AS_UTILITY_PUB.G_MISS_PROFILE_TBL,

    P_SALES_LEAD_Rec         IN  AS_SALES_LEADS_PUB.SALES_LEAD_Rec_Type

                                 := AS_SALES_LEADS_PUB.G_MISS_SALES_LEAD_REC,

    P_SALES_LEAD_LINE_Tbl    IN  AS_SALES_LEADS_PUB.SALES_LEAD_LINE_Tbl_type

                                 := AS_SALES_LEADS_PUB.G_MISS_SALES_LEAD_LINE_Tbl,

    P_SALES_LEAD_CONTACT_Tbl IN  AS_SALES_LEADS_PUB.SALES_LEAD_CONTACT_Tbl_Type

                                 := AS_SALES_LEADS_PUB.G_MISS_SALES_LEAD_CONTACT_Tbl,

    P_Lead_note              IN  VARCHAR2 DEFAULT NULL,

    P_Note_type              IN  VARCHAR2 DEFAULT NULL,

    X_SALES_LEAD_ID           OUT NOCOPY NUMBER,

    X_SALES_LEAD_LINE_OUT_Tbl OUT NOCOPY AS_SALES_LEADS_PUB.SALES_LEAD_LINE_OUT_Tbl_type,

    X_SALES_LEAD_CNT_OUT_Tbl  OUT NOCOPY AS_SALES_LEADS_PUB.SALES_LEAD_CNT_OUT_Tbl_Type,

    X_note_id                 OUT NOCOPY NUMBER,

    X_Return_Status           OUT NOCOPY VARCHAR2,

    X_Msg_Count               OUT NOCOPY NUMBER,

    X_Msg_Data                OUT NOCOPY VARCHAR2

    )

Current Version

2.0

Parameter Descriptions

Notes

The following table describes the IN parameters for the Create Sales Lead procedure.

IN Parameters
Parameter Data Type Required Description
P_Identity_Salesforce_Id NUMBER No Salesforce Id of logged in user
P_Sales_Lead_Profile_Tbl AS_UTILITY_PUB.Profile_Tbl_Type No Data type to store the access security related profile values (they can be cached mid-tier and passed to the API)
P_sales_lead_rec AS_SALES_LEADS_PUB.SALES_LEAD_REC_TYPE No Sales lead record
P_Sales_lead_line_tbl AS_SALES_LEADS_PUB.SALES_LEAD_LINE_TBL_TYPE No Table of sales lead line records
P_Sales_lead_contact_tbl AS_SALES_LEADS_PUB.SALES_LEAD_CONTACT_TBL_TYPE No Table of sales lead contact records
P_Lead_note VARCHAR2 No Note to be associated with the lead
P_Note_type VARCHAR2 No Type of lead note

The following table describes the OUT parameters for the Create Sales Lead procedure.

OUT Parameters
Parameter Data Type Description
X_sales_lead_ID NUMBER Sales lead ID of the sales lead just created
X_sales_lead_line_out_tbl AS_SALES_LEADS_PUB.SALES_LEAD_LINE_OUT_TBL_TYPE Table of sales lead line out record types. Each record type consists of the sales lead line ID created and the return status.
X_sales_lead_contact_out_tbl AS_SALES_LEADS_PUB.SALES_LEAD_CONTACT_OUT_TBL_TYPE Table of sales lead contact out record types. Each record type consists of the lead contact ID created and the return status.
X_note_id NUMBER Generated lead note id for the sales lead

Update Sales Lead

This procedure updates a sales lead with the parameters specified. A valid sales lead ID must be passed in.

Procedure Specification

PROCEDURE Update_sales_lead(

    P_Api_Version_Number     IN   NUMBER,

    P_Init_Msg_List          IN   VARCHAR2     := FND_API.G_FALSE,

    P_Commit                 IN   VARCHAR2     := FND_API.G_FALSE,

    P_Validation_Level       IN   NUMBER       := FND_API.G_VALID_LEVEL_FULL,

    P_Check_Access_Flag      IN   VARCHAR2     := FND_API.G_MISS_CHAR,

    P_Admin_Flag             IN   VARCHAR2     := FND_API.G_MISS_CHAR,

    P_Admin_Group_Id         IN   NUMBER       := FND_API.G_MISS_NUM,

    P_identity_salesforce_id IN   NUMBER       := FND_API.G_MISS_NUM,

    P_Sales_Lead_Profile_Tbl IN   AS_UTILITY_PUB.Profile_Tbl_Type := AS_UTILITY_PUB.G_MISS_PROFILE_TBL,

    P_SALES_LEAD_Rec         IN   SALES_LEAD_Rec_Type

                                      DEFAULT G_MISS_SALES_LEAD_REC,

    X_Return_Status          OUT  VARCHAR2,

    X_Msg_Count              OUT  NUMBER,

    X_Msg_Data               OUT  VARCHAR2

    );

Current Version

2.0

Parameter Descriptions

Notes

The following table describes the IN parameters for the Update Sales Lead procedure.

IN Parameters
Parameters Data Type Required Description
P_Sales_Lead_Profile_Tbl AS_UTILITY_PUB.Profile_Tbl_Type No Data type to store the access security related profile values (they can be cached in the mid tier and passed to the API)
P_sales_lead_rec AS_SALES_LEADS_PUB.SALES_LEAD_REC_TYPE No Sales lead record type for update

Note: This procedure does not have OUT parameters.

Update Sales Lead Lines

This procedure updates one or more sales lead lines with the parameters specified.

Procedure Specification

PROCEDURE Update_sales_lead_lines(

    P_Api_Version_Number         IN   NUMBER,

    P_Init_Msg_List              IN   VARCHAR2   := FND_API.G_FALSE,

    P_Commit                     IN   VARCHAR2   := FND_API.G_FALSE,

    p_validation_level           IN   NUMBER     := FND_API.G_VALID_LEVEL_FULL,

    P_Check_Access_Flag          IN   VARCHAR2   := FND_API.G_MISS_CHAR,

    P_Admin_Flag                 IN   VARCHAR2   := FND_API.G_MISS_CHAR,

    P_Admin_Group_Id             IN   NUMBER     := FND_API.G_MISS_NUM,

    P_identity_salesforce_id     IN   NUMBER     := FND_API.G_MISS_NUM,

    P_Sales_Lead_Profile_Tbl     IN   AS_UTILITY_PUB.Profile_Tbl_Type := AS_         UTILITY_PUB.G_MISS_PROFILE_TBL,

    P_SALES_LEAD_LINE_Tbl        IN   SALES_LEAD_LINE_Tbl_Type,

    X_SALES_LEAD_LINE_OUT_Tbl    OUT  SALES_LEAD_LINE_OUT_Tbl_Type,

    X_Return_Status              OUT  VARCHAR2,

    X_Msg_Count                  OUT  NUMBER,

    X_Msg_Data                   OUT  VARCHAR2

    );

Current Version

2.0

Parameter Descriptions

Notes

The following table describes the IN parameters for the Update Sales Lead Lines procedure.

IN Parameters
Parameter Data Type Required Description
P_Sales_Lead_Profile_Tbl AS_UTILITY_PUB.Profile_Tbl_Type No Data type to store the access security related profile values (they can be cached in the mid tier and passed to the API)
P_Sales_lead_line_tbl AS_SALES_LEADS_PUB.SALES_LEAD_LINE_TBL_TYPE No Table of sales lead line records

The following table describes the OUT parameters for the Update Sales Lead Lines procedure.

OUT Parameters
Parameter Data Type Description
X_sales_lead_line_out_tbl AS_SALES_LEADS_PUB.SALES_LEAD_LINE_OUT_TBL_TYPE Table of sales lead line out record types. Each record type consists of the sales lead line ID processed and the return status.

Delete Sales Lead Lines

This procedure deletes one or more sales lead lines.

Procedure Specification

PROCEDURE Delete_sales_lead_lines(

    P_Api_Version_Number         IN   NUMBER,

    P_Init_Msg_List              IN   VARCHAR2   := FND_API.G_FALSE,

    P_Commit                     IN   VARCHAR2   := FND_API.G_FALSE,

    p_validation_level           IN   NUMBER     := FND_API.G_VALID_LEVEL_FULL,

    P_Check_Access_Flag          IN   VARCHAR2   := FND_API.G_MISS_CHAR,

    P_Admin_Flag                 IN   VARCHAR2   := FND_API.G_MISS_CHAR,

    P_Admin_Group_Id             IN   NUMBER     := FND_API.G_MISS_NUM,

    P_identity_salesforce_id     IN   NUMBER     := FND_API.G_MISS_NUM,

    P_Sales_Lead_Profile_Tbl     IN   AS_UTILITY_PUB.Profile_Tbl_Type := AS_UTILITY_PUB.G_MISS_PROFILE_TBL,

    P_SALES_LEAD_LINE_Tbl        IN   SALES_LEAD_LINE_Tbl_type,

    X_SALES_LEAD_LINE_OUT_Tbl    OUT  SALES_LEAD_LINE_OUT_Tbl_Type,

    X_Return_Status              OUT  VARCHAR2,

    X_Msg_Count                  OUT  NUMBER,

    X_Msg_Data                   OUT  VARCHAR2

    );

Current Version

2.0

Lead Process After Create

This API should be called after lead header, lead line, lead contact, lead notes are created. This is a wrapper of the Run Lead Engines and the Build Lead Sales Team APIs. It calls the above APIs based on specific logic to maintain lead integrity, and launches the workflow process if users want to monitor the lead.

If the Lead Process After Create API is used, please skip the Run Lead Engines and Build Lead Sales Team. API sections.

Procedure Specification

PROCEDURE Lead_Process_After_Create (

    P_Api_Version_Number      IN  NUMBER,

    P_Init_Msg_List           IN  VARCHAR2    := FND_API.G_FALSE,

    p_Commit                  IN  VARCHAR2    := FND_API.G_FALSE,

    p_Validation_Level        IN  NUMBER      :=

FND_API.G_VALID_LEVEL_FULL,

    P_Check_Access_Flag       IN  VARCHAR2    := FND_API.G_MISS_CHAR,

    p_Admin_Flag              IN  VARCHAR2    := FND_API.G_MISS_CHAR,

    P_Admin_Group_Id          IN  NUMBER      := FND_API.G_MISS_NUM,

    P_identity_salesforce_id  IN  NUMBER      := FND_API.G_MISS_NUM,

    P_Salesgroup_id           IN  NUMBER      := FND_API.G_MISS_NUM,

    P_Sales_Lead_Id           IN  NUMBER,

    X_Return_Status           OUT NOCOPY VARCHAR2,

    X_Msg_Count               OUT NOCOPY NUMBER,

    X_Msg_Data                OUT NOCOPY VARCHAR2

    )

Current Version

2.0

Parameter Descriptions

Notes

The following table describes the IN parameters for the Lead Process After Create API.

IN Parameters
Parameter Data Type Required Description
P_sales_lead_id NUMBER Yes Sales Lead Identifier.

Note: This procedure does not have OUT parameters.

Lead Process After Update

This API should be called after lead header, lead line, lead contact, lead notes are updated. This is a wrapper of the Run Lead Engines and the Rebuild Lead Sales Team APIs. It calls the above APIs based on specific logic to maintain lead integrity.

If the Lead Process After Update API is used, please skip the sections for the Run Lead Engines and the Rebuild Lead Sales Team APIs.

Procedure Specification

PROCEDURE Lead_Process_After_Update (

    P_Api_Version_Number      IN  NUMBER,

    P_Init_Msg_List           IN  VARCHAR2    := FND_API.G_FALSE,

    p_Commit                  IN  VARCHAR2    := FND_API.G_FALSE,

    p_Validation_Level        IN  NUMBER      :=

FND_API.G_VALID_LEVEL_FULL,

    P_Check_Access_Flag       IN  VARCHAR2    := FND_API.G_MISS_CHAR,

    p_Admin_Flag              IN  VARCHAR2    := FND_API.G_MISS_CHAR,

    P_Admin_Group_Id          IN  NUMBER      := FND_API.G_MISS_NUM,

    P_identity_salesforce_id  IN  NUMBER      := FND_API.G_MISS_NUM,

    P_Salesgroup_id           IN  NUMBER      := FND_API.G_MISS_NUM,

    P_Sales_Lead_Id           IN  NUMBER,

    X_Return_Status           OUT NOCOPY VARCHAR2,

    X_Msg_Count               OUT NOCOPY NUMBER,

    X_Msg_Data                OUT NOCOPY VARCHAR2

    )

Current Version

2.0

Parameter Descriptions

Notes

The following table describes the IN parameters for the Lead Process After Update API.

IN Parameters
Parameter Data Type Required Description
P_sales_lead_id NUMBER Yes Sales Lead Identifier.

Note: This procedure does not have OUT parameters.

Run Lead Engines

This API should be called after lead is created, or Run Engine button is clicked. If user doesn't specify qualified flag, rank, or sales channel, and profile setting is to do them automatically, this API will run qualification engine, rating engine, and channel selection engine.

Procedure Specification

PROCEDURE Run_Lead_Engines (

    P_Api_Version_Number      IN  NUMBER,

    P_Init_Msg_List           IN  VARCHAR2 := FND_API.G_FALSE,

    p_Commit                  IN  VARCHAR2 := FND_API.G_FALSE,

    p_Validation_Level        IN  NUMBER := FND_API.G_VALID_LEVEL_FULL,

    P_Admin_Group_Id          IN  NUMBER   := FND_API.G_MISS_NUM,

    P_identity_salesforce_id  IN  NUMBER   := FND_API.G_MISS_NUM,

    P_Salesgroup_id           IN  NUMBER   := FND_API.G_MISS_NUM,

    P_Sales_Lead_Id           IN  NUMBER,

    X_Lead_Engines_Out_Rec    OUT LEAD_ENGINES_OUT_Rec_Type,

    X_Return_Status           OUT VARCHAR2,

    X_Msg_Count               OUT NUMBER,

    X_Msg_Data                OUT VARCHAR2

    );

Current Version

2.0

Parameter Descriptions

Notes

The following table describes the IN parameters for the Run Lead Engines API.

IN Parameters
Parameter Data Type Required Description
P_sales_lead_id NUMBER Yes Sales Lead Identifier that user wants to build sales team for

The following table describes the OUT parameters for the Run Lead Engines API.

OUT Parameters
Parameter Data Type Description
X_Lead_Engines_Out_Rec LEAD_ENGINES_OUT_Rec_Type Result of qualification, rating, and channel selection engines.

Build Lead Sales Team

This API should be called after Run_Lead_Engines API is called. It builds lead sales team based on territory definition and adds lead creator as one of lead sales team member.

Procedure Specification

PROCEDURE Build_Lead_Sales_Team(

    P_Api_Version_Number      IN  NUMBER,

    P_Init_Msg_List           IN  VARCHAR2 := FND_API.G_FALSE,

    p_Commit                  IN  VARCHAR2 := FND_API.G_FALSE,

    p_Validation_Level        IN  NUMBER := FND_API.G_VALID_LEVEL_FULL,

    P_Admin_Group_Id          IN  NUMBER   := FND_API.G_MISS_NUM,

    P_identity_salesforce_id  IN  NUMBER   := FND_API.G_MISS_NUM,

    P_Salesgroup_id           IN  NUMBER   := FND_API.G_MISS_NUM,

    P_Sales_Lead_Id           IN  NUMBER,

    X_Return_Status           OUT VARCHAR2,

    X_Msg_Count               OUT NUMBER,

    X_Msg_Data                OUT VARCHAR2 

);

Current Version

2.0

Parameter Descriptions

Notes

The following table describes the IN parameters for the Build Lead Sales Team API.

IN Parameters
Parameter Data Type Required Description
P_sales_lead_id NUMBER Yes Sales Lead Identifier that user wants to build sales team for

Note: This procedure does not have OUT parameters.

Rebuild Lead Sales Team

This API should be called after lead header is updated and lines are created/updated/deleted. When user does change to the lead, the lead may not match the territory it originally met, and match other territories. This API will rebuild lead sales team to reflect the latest lead information.

Procedure Specification

PROCEDURE Rebuild_Lead_Sales_Team(

    P_Api_Version_Number      IN  NUMBER,

    P_Init_Msg_List           IN  VARCHAR2 := FND_API.G_FALSE,

    p_Commit                  IN  VARCHAR2 := FND_API.G_FALSE,

    p_Validation_Level        IN  NUMBER := FND_API.G_VALID_LEVEL_FULL,

    P_Admin_Group_Id          IN  NUMBER   := FND_API.G_MISS_NUM,

    P_identity_salesforce_id  IN  NUMBER   := FND_API.G_MISS_NUM,

    P_Salesgroup_id           IN  NUMBER   := FND_API.G_MISS_NUM,

    P_Sales_Lead_Id           IN  NUMBER,

    X_Return_Status           OUT VARCHAR2,

    X_Msg_Count               OUT NUMBER,

    X_Msg_Data                OUT VARCHAR2

    );

Current Version

2.0

Parameter Descriptions

Notes

The following table describes the IN parameters for the Rebuild Lead Sales Team API.

IN Parameters
Parameter Data Type Required Description
P_sales_lead_id NUMBER Yes Sales Lead Identifier that user wants to build sales team for

Note: This procedure does not have OUT parameters.

Update Sales Lead Contacts

This API is used to update sales contact information in the table. The API will raise an exception if the record matching the Sales Lead Contact ID and Object Version Number passed does not exist.

Procedure Specification

PROCEDURE Update_sales_lead_contacts(

    P_Api_Version_Number         IN   NUMBER,

    P_Init_Msg_List              IN   VARCHAR2     := FND_API.G_FALSE,

    P_Commit                     IN   VARCHAR2     := FND_API.G_FALSE,

    p_validation_level           IN   NUMBER       := FND_API.G_VALID_LEVEL_FULL,

    P_Check_Access_Flag          IN   VARCHAR2     := FND_API.G_MISS_CHAR,

    P_Admin_Flag                 IN   VARCHAR2     := FND_API.G_MISS_CHAR,

    P_Admin_Group_Id             IN   NUMBER       := FND_API.G_MISS_NUM,

    P_identity_salesforce_id     IN   NUMBER       := FND_API.G_MISS_NUM,

    P_Sales_Lead_Profile_Tbl     IN   AS_UTILITY_PUB.Profile_Tbl_Type := AS_UTILITY_PUB.G_MISS_PROFILE_TBL,

    P_SALES_LEAD_CONTACT_Tbl     IN   SALES_LEAD_CONTACT_Tbl_Type,

    X_SALES_LEAD_CNT_OUT_Tbl     OUT  SALES_LEAD_CNT_OUT_Tbl_Type,

    X_Return_Status              OUT  VARCHAR2,

    X_Msg_Count                  OUT  NUMBER,

    X_Msg_Data                   OUT  VARCHAR2

    );

Current Version

1.0

Parameter Descriptions

Notes

Raise an exception if the object_version_number does not match.

The following table describes the IN parameters for the Update Sales Lead Contacts API.

IN Parameters
Parameter Data Type Required Description
p_api_version Number Y Caller version number. This will be compared against the API version number to detect incompatibility .
p_init_msg_list VarChar2 N Flag to indicate if the message stack should be initialized. Default : FND_API.g_false.
p_commit VarChar2 N Flag to indicate if the changes should be committed on success. Default : FND_API.g_false.
p_validation_level Number N Level of validation required. NONE means no validation will be done in the API and FULL means all the validations (item level, record level) will be performed.
p_check_access_flag VarChar2 N -
p_admin_flag VarChar2 N -
p_admin_group_id VarChar2 N -
p_identity_salesforce_id Number N -
p_sales_lead_profile_tbl AS_UTILITY_PUB.Profile_tbl_type N -
P_sales_lead_id Number Y The unique identifier of the sales lead.

The following table describes the OUT parameters for the Update Sales Lead Contacts API.

OUT Parameters
Parameter Data Type Description
x_return_status VarChar2 See Standard OUT Parameters
x_msg_count Number See Standard OUT Parameters
x_msg_data VarChar2 See Standard OUT Parameters
X_sales_lead_cnt_out_tbl sales_Lead_cnt_out_tbl_type Contains the record which contains the Lead Contact ID for the sales lead.

Delete Sales Lead Contacts

This API calls the table handler Delete_Sales_Lead_Contacts and then calls a procedure to update the AS_SALES_LEAD_CONTACT table, if the primary contact is deleted and other contact is marked as primary.

Procedure Specification

PROCEDURE Delete_sales_lead_contacts(

    P_Api_Version_Number         IN   NUMBER,

    P_Init_Msg_List              IN   VARCHAR2     := FND_API.G_FALSE,

    P_Commit                     IN   VARCHAR2     := FND_API.G_FALSE,

    p_validation_level           IN   NUMBER       := FND_API.G_VALID_LEVEL_FULL,

    P_Check_Access_Flag          IN   VARCHAR2     := FND_API.G_MISS_CHAR,

    P_Admin_Flag                 IN   VARCHAR2     := FND_API.G_MISS_CHAR,

    P_Admin_Group_Id             IN   NUMBER       := FND_API.G_MISS_NUM,

    P_identity_salesforce_id     IN   NUMBER       := FND_API.G_MISS_NUM,

    P_Sales_Lead_Profile_Tbl     IN   AS_UTILITY_PUB.Profile_Tbl_Type := AS_UTILITY_PUB.G_MISS_PROFILE_TBL,

    P_SALES_LEAD_CONTACT_Tbl     IN   SALES_LEAD_CONTACT_Tbl_type,

    X_SALES_LEAD_CNT_OUT_Tbl     OUT  SALES_LEAD_CNT_OUT_Tbl_Type,

    X_Return_Status              OUT  VARCHAR2,

    X_Msg_Count                  OUT  NUMBER,

    X_Msg_Data                   OUT  VARCHAR2

    );

Current Version

1.0

Parameter Descriptions

Notes

Raise an exception if the object_version_number does not match.

The following table describes the IN parameters for the Delete Sales Lead Contacts API.

IN Parameters
Parameter Data Type Required Description
p_api_version Number Y Caller version number. This will be compared against the API version number to detect incompatibility.
p_init_msg_list VarChar2 N Flag to indicate if the message stack should be initialized. Default : FND_API.g_false.
p_commit VarChar2 N Flag to indicate if the changes should be committed on success. Default : FND_API.g_false.
p_validation_level Number N Level of validation required. NONE means no validation will be done in the API and FULL means all the validations (item level, record level) will be performed.
p_check_access_flag VarChar2 N -
p_admin_flag VarChar2 N -
p_admin_group_id VarChar2 N -
p_identity_salesforce_id Number N -
p_sales_lead_profile_tbl AS_UTILITY_PUB.Profile_tbl_type N -
P_sales_lead_id Number Y The unique identifier of the sales lead.

The following table describes the OUT parameters for the Delete Sales Lead Contacts API.

OUT Parameters
Parameter Data Type Description
x_return_status VarChar2 See Standard OUT Parameters
x_msg_count Number See Standard OUT Parameters
x_msg_data VarChar2 See Standard OUT Parameters
X_sales_lead_cnt_out_tbl sales_Lead_cnt_out_tbl_type Contains the record which contains the Lead Contact ID for the sales lead.