47Extend Leads and Campaigns

This chapter contains the following:

Overview of Extending Sales Lead and Sales Campaign Objects

Read this chapter to learn about extending the sales lead and sales campaign objects and pages in your sales application.

In this chapter, you will learn:

  • How to modify leads pages

  • How to extend the sales campaign object using Application Composer

  • How to create a sales lead validation rule using Application Composer

  • How to extend campaigns and leads using data from Oracle Marketing Cloud

  • How to create new objects by copying existing objects using the Copy Map feature

  • How to map child objects and attributes in the source object to objects and attributes in the new object

Sales Leads

Extend Pages for Leads

Using Application Composer, you can change many items that appear on the pages for sales leads.

Use Application Composer to modify these pages:

  • Leads landing page (Landing Page Layouts)

  • Create Lead page (Creation Page Layouts)

  • Edit Lead page (Details Page Layouts)

  • Lead Email notifications page (Lead Notification Content)

  • Mass Lead Convert page (Mass Lead Convert Page Layouts)

  • Lead Convert page (Lead Convert Page Layouts)

For example, you can:

  • Hide or show standard fields.

  • Set fields as required.

  • Set field default values.

  • Reorder columns.

  • Change column labels.

  • Add user-defined fields (all types).

Note: To extend the set of pages for leads, use the Sales Lead object in Application Composer. You must be working in an active sandbox.

Leads Landing Page

You can extend items that appears on the Leads landing page. For example, you can hide standard fields or show user-defined fields. To modify this page:

  1. Navigate to the Sales Lead object in Application Composer.

  2. Select the Pages node.

  3. On the Application Pages tab, under Landing Page Layouts, duplicate the standard layout to create a new layout.

Create Lead Page

You can modify the Create Lead page. For example, you can hide standard fields, make a field required, add a default value, and show user-defined fields. To modify the Create Lead page:

  1. Navigate to the Sales Lead object in Application Composer.

  2. Select the Pages node.

  3. On the Application Pages tab, under Creation Page Layouts, duplicate the standard layout to create a new layout to edit. Or, edit another existing layout.

    To enhance runtime usability for your end users, optionally group user-defined fields into field groups.

Edit Lead Page

The Edit Lead page consists of multiple subtabs that display along the left side of the page. You can modify most of these subtabs. You can also add user-defined subtabs, for example, to display records from child or related objects.

To add user-defined fields to certain subtabs available from the Edit Lead page, you must first navigate to those subtab target objects in Application Composer to create the fields. After creating the fields on the target object, you can then navigate back to the details page layout for the Sales Lead object to add those fields to the specific subtabs.

To modify the Edit Lead page:

  1. Navigate to the Sales Lead object in Application Composer.

  2. Select the Pages node.

  3. On the Application Pages tab, under Details Page Layouts, duplicate the standard layout to create a new layout to edit. Or, edit another existing layout.

  4. When making changes to the Edit Lead page, select the subtab you want to change first.

    The changes you make to these subtabs are unique to the Edit Lead page. For example, you can extend the Sales Lead Products directly by adding new user-defined fields, but if you want to display those new fields, or hide existing fields for the Sales Lead Products object, you must navigate to the Sales Lead object, select Pages, and then go to the Details Page Layout, Summary subtab, Lead Details Products area.

    Use these subtabs, available from the Edit Lead page, to configure which standard and user-defined fields display at runtime.

    • Summary

    • Contacts

      Use the Sales Lead Contact object to create user-defined fields as needed.

    • Qualification

      Not extensible from this page.

    • Sales Team

      Use the Sales Lead Resources object to create user-defined fields as needed.

    • Products

      Use the Sales Lead Products object to create user-defined fields as needed.

    • Activities

      Use the Activity object in Application Composer to extend this subtab.

      On the Application Pages tab for the Activity object, scroll down to the Embedded Activity Summary Layout section at the bottom of the page. Click the Standard layout or duplicate it to create a new layout.

    • Responses

      Not extensible from this page.

    • Notes

      Use the Note object in Application Composer to create user-defined fields as needed, and to extend this subtab.

      On the Application Pages tab for the Note object, edit the default creation page layout or duplicate it to create a new layout.

      The Notes list page isn't extensible.

    • Opportunities

      Use the Opportunity object to create user-defined fields as needed.

Lead Email Notifications

The email notifications region is applicable only for partner leads. From here, you can configure actionable email content that's sent to users when partner leads are assigned. Use the Sales Lead object in Application Composer to extend the email notifications of the partner lead UI. On the Application Pages tab for the Sales Lead object, scroll down to the Lead Notification Content section at the bottom of the page. Click the Standard layout or duplicate it to create a new layout.

Mass Lead Convert Page

Mass Lead Convert is a mass action available on Lead List page and is used for converting multiple selected leads simultaneously. When a salesperson uses the mass lead convert action, the Lead Mass Convert page is displayed for verification and input for the mass conversion process. You can add or remove standard or custom fields from the mass lead convert page to your requirement. On the Application Pages tab, under Mass Lead Convert Page Layouts, duplicate the standard layout to create a new layout to edit. Or, edit another existing layout.

Lead Convert Page

Opportunity Name, Owner, Account and Primary Contact are exposed on the Lead Convert page. Account and Primary Contact are predefined read-only fields but they become editable fields if the Account and Primary Contact are directly typed into the lead and if they don't exist in the sales application.

You can add or remove standard or custom fields from the lead convert page to your requirement. On the Application Pages tab, under Lead Convert Page Layouts, duplicate the standard layout to create a new layout to edit. Or, edit another existing layout.

Example of Extending Pages for Leads Using Application Composer

You can extend lead pages using Application Composer. You must make your changes in a sandbox, so you can test them first.

This example demonstrates how you can extend the lead object by:

  • Adding a check box to identify strategic leads

  • Adding a Groovy script that checks if the size of the deal is greater than 1000 USD when a user saves a lead with this check box selected. If the deal is smaller than this amount, then users are prevented from saving the lead and receive an error message instead.

Create the Strategic Deal Check Box and Add the Groovy Script Validation Check

Here's how to create the Strategic Deal check box and add the validation check:

  1. Navigate to Application Composer. Select Sales Lead from the Objects panel.

  2. Under the Lead object, select the Fields link.

  3. Click the Create a custom field icon and, in the Select Field Type window, select Check box.

  4. In the Create Check box Field page, enter "Strategic Deal" as the Display Label. Leave the rest of the fields with their default values.

  5. Click Save and Close.

  6. Next augment this new check box with a Groovy script. When the user attempts to save a record with the check box selected, then the script checks if the deal size is greater than 1000. If the deal size is less than 1000, then the script displays an error and the lead isn't saved.

    Here is the Groovy logic that you can use:

    def retVal
    if (StrategicDeal_c == 'Y')
    {
     if (DealAmount >= 1000)
     {
       retVal = true
     }
     else 
     {
       retVal = false
     }   
    }
    
    if (StrategicDeal_c
     == null || StrategicDeal_c
     == 'N')
    {
     retVal = true
    }
       return(retVal)
    

  7. In the Objects panel, select Server Scripts under the Sales Lead object.

  8. In the Server Scripts Sales Lead page, select the Validation Rules tab and under Object Rules, select Action - Add to add a new validation rule.

  9. In the Create Object Validation Rule page, enter the rule name as Eval and enter a simple error message in the Error Message text region.

  10. Cut and paste the script that you have written to validate the condition.

  11. Next add this field to the sales lead application pages. In Application Composer, select the Pages link under the Sales Lead object and then select the Application Pages tab.

  12. In the Details Page Layout region, duplicate the standard layout to create a new layout to edit.

  13. Click the Edit pencil icon and select the Strategic Deal field.

  14. Clock Done and save and close Application Composer.

  15. Sign in to the application again and drill into a lead.

  16. Check if the Strategic Deal check box appears.

    This figure shows an example of the Edit Lead Summary page with the Strategic Deal check box selected.

    Edit Lead Summary page with the Strategic Deal
check box selected.

  17. Enter a value less than 1000 in the Deal Size field.

  18. Select the Strategic Deal check box and click Save and Close.

    You should receive the error message that you entered in Step 9 because the deal size violates the validation rule.

  19. Reenter a value greater than 1000 in the Deal Size field and save.

    You have successfully extended a sales lead application page and added Groovy logic.

How to Create a Sales Lead Validation Rule Using Application Composer

Lead management users can change the status of a lead to Qualified, regardless of whether the lead customer is a sales account or has a primary product associated with the lead. However, to enforce compliance with your company's lead management business processes, you want to create business rules to control when to set a lead to a Qualified status.

This example describes how to use Application Composer to create a validation rule that ensures a sell-to address and a primary product exist before users change the lead's status to Qualified.

Create a Validation Rule for Sell-to Address

Here's how to create a rule that validates the existence of a sell-to addresses for a sales lead:

  1. Navigate to Application Composer.

  2. Select Sales to filter the object search.

  3. From the Objects View, select Standard Objects, Sales Lead, Server Scripts.

  4. Click the Object Functions tab, and then click the Add a New Object Function icon. The Create Object Function page is displayed.

  5. In the Function Name field, enter this name without spaces: isSellToExists.

  6. In the Returns field, select Boolean.

  7. In the Function Body area, enter the following: if(null != CustomerId){ def partySites = newView('Address'); def criteria = partySites.createViewCriteria(); def criteriaRow = criteria.createRow(); criteria.insertRow(criteriaRow); def criteriaItem = criteriaRow.ensureCriteriaItem('PartyId'); criteriaItem.setValue(CustomerId) partySites.appendViewCriteria(criteria) partySites.executeQuery(); while(partySites?.hasNext()) { def partySite = partySites.next(); def partySiteUses = partySite?.getAttribute('PartySiteUse'); while (partySiteUses?.hasNext()) { def partySiteUse = partySiteUses.next(); if ('SELL_TO' == partySiteUse?.getAttribute('SiteUseType')) { return true; } } } } return false;

  8. Click Validate.

  9. Click Save and Close.

Create an Enforcement Rule for Primary Product

Next, you want to create a rule for enforcing the primary product association for the sales lead.

  1. Click the Add a New Object Function icon to go to the Create Object Function page.

  2. In the Function Name field, enter the this name without spaces: isPrimaryProductAssigned.

  3. In the Returns field, select Boolean.

  4. In the Function Body area enter the following: if((null != PrimaryInventoryOrgId && null != PrimaryInventoryItemId) || null != PrimaryProductGroupId) return true; else return false;

  5. Click Validate.

  6. Click Save and Close to return to the Server Scripts Sales Lead page.

Create a Validation Rule for Lead Qualification

Next you want to create a validation rule that checks for the existence of a sell-to address and a primary product when a user sets the Qualified status for a sales lead.

  1. Click the Validation Rules tab and from the Object Rules area.

  2. Click the Add a new validation rule icon.

  3. In the Create Object Validation Rule page navigate to the Rule Name field and enter this rule name without spaces: qualifyLead

  4. In the Rule Definition area, enter the following: if(isAttributeChanged('StatusCode') && getAttribute('StatusCode') == 'QUALIFIED') return (isPrimaryProductAssigned() && isSellToExists()); else return true;

  5. In the Error Message area, enter this message text: Primary Product and Sell to Address are required for qualifying a Lead.

  6. Click Save and Close.

    This completes the task of using Application Composer to create validation rules for the primary product and sell-to address fields when qualifying a lead.

Test the Rules

Here's how to validate the rules:

  1. Navigate to the Lead Qualification, Edit Lead page.

  2. From the Actions menu, select Qualify.

    If the Primary Product and Sell to Address fields contain no data, you should receive the following error message text:

    Primary Product and Sell to Address are required for qualifying a Lead.

Example of Assigning Account Owner as the Owner of a Lead

You can configure your sales application to automatically set a lead owner based on the owner of the associated account. For example, an employee in your organization who isn't a salesperson, has created a lead with an associated account. You can use a Groovy script to automatically assign that lead to the salesperson who owns the associated account.

You are a sales administrator and your management has asked you to create a script to automate setting the account owner as the lead owner after the lead is created or assigned. You can use Groovy scripts to cater for the these scenarios:

  • When a lead is created with an associated account and the assignment process is run

  • When a lead is created without an account, but the account is added later and the assignment process is run

Note: You can't set the account owner as the lead owner for leads created or updated using file-based data import.

Set Account Owner as the Lead Owner After Lead is Created or Assigned

Here's how to set the account owner as the lead owner after the lead is created or assigned:
  1. Sign in using the sales administrator role.

  2. Create a sandbox and activate it.

    For more information about sandboxes, see the Overview of Sandboxes topic.

  3. Navigate to Application Composer and expand Standard Objects, then Sales Lead and then click Server Scripts.

  4. Click the Triggers tab, and then click the Create icon in the Object Triggers section.

  5. Select the Before Insert in Database trigger type. Enter a name such as UpdatLeadOwnerOnCreate in the Trigger Name field. Copy and paste the following content of the script to the Trigger Definition section:

    if(nvl(CustomerId,null) != null)
    {
       def account = newView('OrganizationProfile');
       def criteria = account?.createViewCriteria();
       def criteriaRow = criteria?.createRow();
       criteria?.insertRow(criteriaRow);
       def criteriaItem = criteriaRow?.ensureCriteriaItem('PartyId');
       criteriaItem?.setValue(CustomerId);
       account?.appendViewCriteria(criteria);
       account.executeQuery();
       if(account.hasNext())
       {
            def accRow = account.next();
            def leadResourceIterator = nvl(MklLeadResources,null);
            if(nvl(accRow?.OwnerPartyId,null) !=null)
           {
             setAttribute('OwnerId' , accRow?.OwnerPartyId);
             def resourceId = accRow?.OwnerPartyId;
             boolean alreadyOnSalesTeam = false;
             leadResourceIterator?.reset();
             for (; leadResourceIterator?.hasNext(); ) {
             def mklLeadResourcesVORowImpl = leadResourceIterator.next();
             Long existingResourceId = mklLeadResourcesVORowImpl.getAttribute('ResourceId');
             if (resourceId.equals(existingResourceId)) {
             alreadyOnSalesTeam = true;
             break;
            }
              }
              if(!alreadyOnSalesTeam) {
              def leadResourceVO = leadResourceIterator.createRow();
              leadResourceVO.setAttribute('LeadId',LeadId);
              leadResourceVO.setAttribute('ResourceId',resourceId);
              leadResourceVO.setAttribute('PrimaryFlag','Y');
            }
          }
        }
    } 

  6. Click Save and Close. Verify that you see the newly created trigger in the Object Triggers section.

  7. Next, click the Create icon in the Object Triggers section to create another object trigger.

  8. Select Before Update in Database trigger type. Enter a name such as UpdatLeadOwnerOnUpdate in the Trigger Name field. Copy and paste the following content of the script to the Trigger Definition section:

     if(isAttributeChanged('LastAssignmentDate')){
       def account = newView('OrganizationProfile');
       def criteria = account?.createViewCriteria();
       def criteriaRow = criteria?.createRow();
       criteria?.insertRow(criteriaRow);
       def criteriaItem = criteriaRow?.ensureCriteriaItem('PartyId');
       criteriaItem?.setValue(CustomerId);
       account?.appendViewCriteria(criteria);
       account.executeQuery();
       if(account.hasNext())
       {
          def accRow = account.next();
          def leadResourceIterator = nvl(MklLeadResources,null);
          if(nvl(accRow?.OwnerPartyId,null) !=null)
          {
             setAttribute('OwnerId' , accRow?.OwnerPartyId);
             def resourceId = accRow?.OwnerPartyId;
             boolean alreadyOnSalesTeam = false;
             leadResourceIterator?.reset();
             for (; leadResourceIterator?.hasNext(); ) {
        def mklLeadResourcesVORowImpl = leadResourceIterator.next();
        Long existingResourceId = mklLeadResourcesVORowImpl.getAttribute('ResourceId');
        if (resourceId.equals(existingResourceId)) {
        alreadyOnSalesTeam = true;
        break;
        }
       }
         if(!alreadyOnSalesTeam) {
         def leadResourceVO = leadResourceIterator.createRow();
         leadResourceVO.setAttribute('LeadId',LeadId);
         leadResourceVO.setAttribute('ResourceId',resourceId);
         leadResourceVO.setAttribute('PrimaryFlag','Y');
       }
      }
     }
    }

  9. Click Save and Close. Verify that you see the newly created trigger in the Object Triggers section.

  10. Thoroughly test these scenarios in your sandbox environment:

    • When a lead is created with an associated account and the assignment process is run.

    • When a lead is created without an account, but the account is added later and the assignment process is run.

  11. Publish the sandbox after successfully verifying your tests.

How to Modify the Leads UI for Sales Prospects

Since leads for sales prospects represent contacts with potential buying interest, some customers want to hide the lead name from the UI. Instead, they want to set the primary contact field as required, and use the primary contact as the lead identifier.

Use application composer and object triggers to cater for these configuration tasks:

  • Set the Primary Contact field as required

  • Mark the name field as hidden in both the create and edit lead pages

  • Automatically populate the lead name with the primary contact value when a lead is created and updated

Note: Sign in using the sales administrator role and create a sandbox and activate it.

Set Primary Contact Field as Required

Here's how to set the primary contact field as mandatory on the leads UI:
  1. Navigate to Application Composer and expand Standard Objects, then Sales Lead and then click Fields.

  2. Search for the Primary Contact field of type Dynamic Choice List.

  3. From the Edit Standard Field: Primary Contact page, under the Constraints section, select the Required check box.

  4. Click Save and Close.

Hide the Name Field

Here's how to hide the Name field on the leads UI:
  1. Navigate to Application Composer and expand Standard Objects, then Sales Lead and then click Pages.

  2. Navigate to Sales Lead > Pages > Creation Page Layout > Create a Duplicate Layout page.

  3. From the Creation Page Layout section, select Duplicate Layout from the Actions menu.

  4. In the Duplicate Layout dialog, enter Default User-Defined Layout in the New Layout Name field.

  5. Click Save and Edit.

  6. Click the Edit icon to display the Configure Detail Form.

  7. Move Name from Selected Fields list to Available Fields list.

  8. Click Save and Close, then click Done.

  9. Repeat steps 4 to 9 to edit the Details Page Layout section.

Populate the Lead Name with the Primary Contact Value

Here's how to populate the lead name with the primary contact value when a lead is created and updated:
  1. Navigate to Application Composer and expand Standard Objects, then Sales Lead and then click Server Scripts.

  2. Click the Triggers tab, and then click the Add a new Trigger icon in the Object Triggers section.

  3. In the Trigger field, select the Before Insert in Database trigger type.

  4. In the Trigger Name field, enter a name, without spaces, such as UpdatLeadOwnerOnCreate.

  5. Copy and paste the following content of the script to the Trigger Definition section:

    if(PrimaryContactName == null)
    {
      throw new oracle.jbo.ValidationException('Primary Contact is a required field. Please select a Primary Contact.') 
    }
    else
    {
      setAttribute('Name',PrimaryContactName)
    }

  6. Click Save and Close.

    Verify that you see the newly created trigger in the Object Triggers section.

  7. Next, click the Add a new Trigger icon in the Object Triggers section to create another object trigger.

  8. In the Trigger field, select the Before Update in Database trigger type.

  9. In the Trigger Name field, enter a name such as UpdatLeadOwnerOnUpdate.

  10. Copy and paste the following content of the script to the Trigger Definition section:

     if(PrimaryContactName == null)
    {
        throw new oracle.jbo.ValidationException('Primary Contact is a required field. Please select a Primary Contact.') 
    }
    else if(isAttributeChanged('PrimaryContactName') && PrimaryContactName != null)
    {
      setAttribute('Name',PrimaryContactName)
    }

  11. Click Save and Close.

    Verify that you see the newly created trigger in the Object Triggers section.

  12. Thoroughly test all changes in your sandbox environment.

  13. Publish the sandbox after successfully verifying your tests.

Add Customer Type to Leads List Page

As part of the Lead Management feature for repeat business leads, salespeople use the Existing Account and Existing Contact fields in the Leads UI which supports extensible picker features. In addition, the Existing Account field represents the same field as an account, contact or household. To benefit from this feature, the Customer Type drop-down list field must be added to the Leads List page. The Customer Type field is hidden by default but you can expose this field through Application Composer. Once exposed, salespeople can select the relevant customer type from the Existing Account drop-down list of values on the Leads UI.

Here's how to add the Customer Type field to the Lead List page using Application Composer

  1. Navigate to Application Composer from the Configuration category in the Navigator.

  2. Expand the Sales Lead object that you want to add the field.

  3. Click Pages and then select the Application Pages tab.

  4. On the Details Page Layouts section, edit any custom layout. If none exists, then duplicate the standard layout and edit the resulting custom layout.

  5. Edit the Summary region.

  6. Select the Customer Type field from the list in the Available Fields region and move it to the Selected Fields region.

  7. Click Save and Close.

  8. Test the changes: Navigate to Sales > Leads as a user with access to the Leads List page, for example, as a salesperson and ensure you can see the Customer Type field.

  9. Publish the sandbox.

Add the Browse Catalog Button to Edit Lead Page

Sales administrators can add the Browse Catalog button to the edit lead page so that users can browse the sales catalog and view the product hierarchy. This lets salespeople browse the sales catalog while editing a lead and select and add products or product groups to the lead.

Note: Before you can add the Browse Catalog button to the edit lead page, the profile option Browse Sales Catalog in Opportunities Enabled must be set to Y.

Use these steps to add the Browse Catalog button to the Edit Lead page.

  1. Navigate to the Sales Lead object in Application Composer.

  2. Ensure you're in a sandbox.

  3. Select the Pages node.

  4. On the Application Pages tab, under Details Page Layouts, duplicate the standard layout to create a new layout to edit.

  5. Select the Summary subtab on the Edit Lead page, scroll down to the Fuse Lead Details Products area, and click the Edit icon.

  6. From the Configure Detail Form: Buttons and Actions region, move the Browse Catalog item from the Available Buttons area to the Selected Buttons area.

  7. Click Save and Close.

  8. On the Details Layout page, click Done.

  9. Verify that you can see the Browse Catalog button on the Edit Lead Summary page for a draft lead.

  10. Publish your sandbox.

Configure Default Search on Standard Subtabs for Leads

You can add default search criteria to standard subtabs for leads so that your salespeople can more easily find the subtab data that's relevant to their daily activities. When a user opens the subtab at runtime, the records displayed are automatically filtered using the search criteria you added. Users can change the default search value, but they can't change the default search field. They can, however, further refine their search by adding additional search fields and values at runtime.

Adding a default search filter to a subtab is optional. If you skip this step, then no search fields are automatically added to the subtab, but users can still see the search region and perform their desired search.

Use this procedure to add a default search filter field, operator, and value for the Contacts subtab search on the Edit Lead page.

Note: When adding a default search filter to standard subtabs, note that the search filter applies to all existing details page layouts with this subtab. Let's say you add a search filter to the Lead subtab on an Opportunity details page layout. This means that the same search filter is added to the Lead subtab on an Account details page layout.
  1. Sign in as a sales administrator or as a setup user.

  2. Activate a sandbox.

  3. Navigate to Application Composer, in the Configuration category.

  4. In the navigation tree, expand Standard Objects, expand Sales Lead, and click Pages.

  5. Ensure that the Application Pages tab is selected.

  6. In the Details Page Layouts region, duplicate the standard layout by highlighting the standard layout and clicking the Duplicate icon.

  7. Type a new layout name and click Save and Edit.

    The Details Layout page appears.

  8. In the Subtabs Region, highlight Contacts and click the pencil icon.

  9. From the Configure Detail Form page region, go to the Configure Summary Table: Search Region.

  10. Select the default search filter to apply to the Contacts subtab.

    You can select from a list of both standard and custom Contact fields. Note that you can't pick dynamic choice list fields, set ID-based fixed choice list fields, and any fields that aren't searchable.

    For example, you want to create a search filter to search for all contacts that have a job title of sales manager. Select Job Title from the drop-down list and select Equals as the operator and enter Sales Manager.

  11. Click Done and ensure that the layout status for your Contacts subtab layout is set to Active.

  12. Test the changes: Navigate to Sales > Leads as a user with access to the leads pages. Edit a lead and confirm that the data that displays on the Contacts subtab includes only contacts with a job title of sales manager.

  13. Publish the sandbox.

Extend Lead-Related Actions for Workspace

You can specify and modify some lead-specific actions that your salespeople can quickly access from Workspace. These lead-related actions include the Convert, Reject, Retire actions.

For example, you can modify the convert lead layout page and specify a reason and additional comment field for the retire and reject lead actions.

Here's how to enable the Lead actions on Workspace.

  1. Create a sandbox and navigate to the Smart Actions administration tool in Application Composer, under Common Setup.

  2. Using the Actions search box, look for the lead action that you want - Convert, Reject, or Retire. The action you selected for the lead is displayed.

  3. Click the check box under the Enabled column to make available the selected action from the Workspace saved searches.

  4. If you make changes to predefined actions be sure to publish the sandbox, sign out of the application, and sign back in.

  5. Verify your changes in Workspace.

Here's how to extend the Convert action dialog box.

  1. Create a sandbox and navigate to Standard Objects > Sales Lead > Pages in Application Composer.

  2. In the Lead Convert Page Layouts section under the Application Pages tab, duplicate the Standard layout.

  3. Edit the duplicated layout to extend the lead convert action with the changes you want.

  4. Publish the sandbox, sign out of the application, and sign back in.

  5. Verify your changes in Workspace.

Groovy Support to Make Reject Reason and Comment Fields Mandatory

You can use Groovy scripts to specify rules to force both the Reject Reason and Comment fields to be set as mandatory fields for your lead records.

The following is a sample of code to insert before the Lead update trigger to ensure that salespeople enter a reject reason and a comment for the lead:

if ((RejectReasonCode == null || RejectReasonCode == ''))
{
  throw new oracle.jbo.ValidationException('Reason is Mandate')
}
else if (RejectComment == null || RejectComment == '')
{
throw new oracle.jbo.ValidationException('Comment is Mandate')
}
else
return true

For more information on Groovy scripting, see the related links.

Sales Campaigns

Extend Sales Campaign Pages

Use Application Composer to create user-defined fields for the sales campaign object. You can then add the user-defined fields for display in the Sales Campaign work area. This topic describes the configurable options for sales campaigns.

To access Application Composer, select Application Composer from the Navigator menu, under the Configuration category.

Quick Steps

Here's how to configure the sales campaign work area:

  1. Navigate to Application Composer, expand the Standard Objects tree node, then select Sales Campaign.

  2. Select the Fields node to create user-defined fields, or modify standard fields.

  3. Select the Pages node to show or hide fields, either user-defined or standard.

  4. Use the links on the tab to navigate to the object's configuration pages. From there, you can configure the pages that are available for the selected object.

    Note: You must duplicate the standard layouts before you can make changes.
  5. Test your work by navigating to the Sales Campaign work area to view your changes.

Sales Campaign Pages That Are Configurable

The number of fields that you can edit or add to this region depends on the status of the sales campaign. The panel will adjust based on how many fields you add. The name of the region changes depending on where you're in the sales campaign flow.

This list shows which regions and pages are configurable, along with some notes for each.

Region and Page Are the Fields Editable?

Sales Campaign landing page

No

Campaign details region on the Create Sales Campaign: Wrap Up page

Yes

Campaign details region (displays on Sales Campaign Overview pages for completed campaigns)

No

Campaign details region (displays on Sales Campaign Overview page for campaigns that are in progress)

No

Campaign Summary region on the Create Sales Campaign: Enter Campaign Details page

Yes

Campaign Summary regions on other Sales Campaign pages

Only if the campaign is in Draft status. Otherwise, not editable.

Campaign Details region (displays on Sales Campaign pages for completed campaigns)

No

Add or Modify Object Fields

To add user-defined fields to the Sales Campaign regions listed, first create your user-defined fields by selecting the Fields node under the sales campaign object. Then, select either a standard field to modify, or create a user-defined field.

For standard fields, you can modify these options:

  • Display Label

  • Required check box

  • Short Description

  • Updatable

  • Depends On

Add Your Changes to the Runtime Application

After you create user-defined fields for the sales campaign object, use Application Composer's configuration pages to add the user-defined fields to the configurable regions. You access the configuration pages in Application Composer from the Pages node under the Sales Campaign object.

To access the Pages Overview page:

  1. Navigate to the application Composer Overview page.

  2. In the object tree, select the Sales Campaign object.

  3. Select the Pages node.

  4. On the Pages tab, select the configuration page link related to the Sales Campaign page that you want to configure.

Notes About Sales Campaign Configuration

These configuration options aren't supported for sales campaigns:

  • Import and export (you can't import sales campaigns)

  • Object workflow

  • E-mail templates

  • Business processes

These configuration options don't apply to sales campaigns:

  • Role security

  • Subject areas

Marketing Campaigns and Campaign Members

Overview of Campaign Management and Reporting

You can store marketing related data, such as campaigns and campaign members created and updated in Oracle Marketing Cloud, in your sales application. Campaign management and reporting is greatly improved by having campaign related data maintained and synchronized between Oracle Marketing Cloud and Oracle CX Sales.

You can view meaningful information about marketing campaigns and campaign members from the Campaigns user interface. The Campaigns UI provides visibility into the campaign effectiveness to support the sales processes. For example, you can view the campaigns and campaign members associated with a given lead and contact to gain key insights for closing a sale.

In addition, your administrator can also display a campaigns subtab and an Add to Campaign button on the Leads and Contacts user interface pages from where you can view data about the marketing campaigns and add the associated leads and contacts to the campaign. Add contacts or leads to marketing campaigns from these locations within your sales application:

  • Campaigns subtab on the Edit Contact page

  • Campaigns subtab on the Edit Lead page

  • Campaign Members subtab on the View Campaign page

  • Contact and Lead saved search pages in Workspace

Use the campaign summary data to view associated leads, contacts, opportunities, and revenue amounts. The total number responding to a campaign represents the total count of campaign members who have responded to a marketing campaign. Campaign members include either leads or contacts that were sent or responded to a marketing campaign and have a status of Responded or Sent. Note that the response is only counted once even when a campaign member has responded multiple times to the same campaign.

Enable the Campaigns Subtab and Add to Campaign Button in Leads

View campaigns associated with your leads through the Edit Lead: Campaigns subtab. The Campaigns subtab and the Add to Campaign button are hidden by default but you can make them available to you users through Application Composer. Users can then filter the Campaigns subtab by the following attributes: Name, Type, Start Date, End Date, Last Updated, and Status.

Before you expose the Campaigns subtab list and the Add to Campaign button in the Edit Lead page, ensure that the functional security privilege MKT_MANAGE_MARKETING_INTEGRATION_CAMPAIGN_MEMBER is assigned to the intended user or their role..

  1. Sign in as a sales administrator or as a setup user.

  2. Activate a sandbox.

  3. Navigate to Application Composer, in the Configuration category.

  4. In the navigation tree, expand Standard Objects, expand Sales Lead, and click Pages.

  5. Ensure that the Application Pages tab is selected.

  6. In the Details Page Layouts region, duplicate the standard layout by highlighting the standard layout and clicking the Duplicate icon.

  7. Type a new layout name and click Save and Edit.

    The Details Layout page appears.

  8. In the Subtabs Region, click the Hide, Show, or Reorder Subtabs icon.

    The Configure Subtabs dialog box appears.

  9. Move Campaigns from the Available Subtabs to the Selected Subtabs window.

  10. Click OK.

  11. In the Subtabs Region, select the newly added Campaigns subtab icon.

  12. Click the pencil icon next to the Fuse Lead Campaign Overview Region.

  13. From the Configure Detail Form: Buttons and Actions region, move Add to Campaign from the Available Buttons to the Selected Buttons window.

  14. Click Save and Close.

  15. Click Done and ensure that the layout status for your user-defined layout is Active.

  16. Test the changes: Navigate to Sales > Leads as a user with access to the leads pages, for example, as a salesperson. Edit a lead and ensure you can see both the Campaigns subtab and the Add to Campaign button in the Edit Leads page.

  17. Publish the sandbox.

For more information, see the Subtabs topic in the Configuring Applications Using Application Composer guide.

Enable the Campaigns Subtab and Add to Campaign Button in Contacts

You can view campaigns associated with your contacts through the Edit Contacts: Campaigns subtab. The Campaigns subtab and the Add to Campaign button are hidden by default but you can make them available to you users through Application Composer. They can then filter the Campaigns subtab by the following attributes: Name, Type, Start Date, End Date, Last Updated, and Status.

Before you expose the Campaigns subtab list and the Add to Campaign button in the Edit Contact page, ensure that the functional security privilege MKT_MANAGE_MARKETING_INTEGRATION_CAMPAIGN_MEMBER is assigned to the intended user or their role.

  1. Sign in as a sales administrator or as a setup user.

  2. Activate a sandbox.

  3. Navigate to Application Composer, in the Configuration category.

  4. In the navigation tree, expand Standard Objects, expand Contact, and click Pages.

  5. Ensure that the Application Pages tab is selected.

  6. In the Details Page Layouts region, go to the Edit Contact region and duplicate the standard layout by highlighting the standard layout and clicking the Duplicate icon.

  7. Type a new layout name and click Save and Edit.

    The Details Layout page appears.

  8. In the Subtabs Region, click the Hide, Show, or Reorder Subtabs icon.

    The Configure Subtabs dialog box appears.

  9. Move Campaigns from the Available Subtabs to the Selected Subtabs window.

  10. Click OK.

  11. In the Subtabs Region, select the newly added Campaigns subtab icon.

  12. Click the pencil icon next to the Fuse Contact Campaign Overview Region.

  13. From the Configure Detail Form: Buttons and Actions region, move Add to Campaign from the Available Buttons to the Selected Buttons window.

  14. Click Save and Close.

  15. Click Done and ensure that the layout status for your user-defined layout is Active.

  16. Test the changes: Navigate to Sales > Contacts as a user with access to the contacts pages, for example, as a salesperson. Edit a contact and ensure you can see the Campaigns subtab and the Add to Campaign button in the Edit Contacts page.

  17. Publish the sandbox.

For more information, see the Subtabs topic in the Configuring Applications Using Application Composer guide.

Enable Campaign Members Subtab, Add Leads, and Add Contacts Buttons in Campaigns

You can add contacts and leads to marketing campaigns, and view already added contacts or leads through the Campaign Members subtab. The Campaigns Members subtab, in addition to the Add Leads and Add Contacts buttons, are hidden by default but you can make them available to your users through Application Composer.

Here's how to expose the Campaign Members subtab in the View Campaign page. The steps also include how to expose the Add Leads and Add Contacts buttons in the Campaign Members subtab.

Note: Make sure that the functional security privilege MKT_MANAGE_MARKETING_INTEGRATION_CAMPAIGN_MEMBER is assigned to the intended user or their role.
  1. Sign in as a sales administrator or as a setup user.

  2. Activate a sandbox.

  3. Navigate to Application Composer, in the Configuration category.

  4. In the navigation tree, expand Standard Objects, expand Campaigns, and click Pages.

  5. Ensure that the Application Pages tab is selected.

  6. In the Details Page Layouts region, duplicate the standard layout by highlighting the standard layout and clicking the Duplicate icon.

  7. Type a new layout name and click Save and Edit.

    The Details Layout page appears.

  8. In the Subtabs Region, click the Hide, Show, or Reorder Subtabs icon.

    The Configure Subtabs dialog box appears.

  9. Move Campaign Members from the Available Subtabs to the Selected Subtabs window.

  10. Click OK.

    Follow the next steps to expose the Add Leads and Add Contacts buttons in the Campaign Members subtab.

  11. In the Subtabs Region, select the newly exposed Campaign Members icon.

  12. Click the pencil icon next to the Campaign Member Region.

  13. From the Configure Detail Form: Buttons and Actions region, move both the Add Leads and Add Contacts from the Available Buttons to the Selected Buttons window.

  14. Click Save and Close.

  15. Click Done and ensure that the layout status for your user-defined layout is Active.

  16. Test the changes: Navigate to Sales > Campaigns as a user with access to the campaign pages, for example, as a salesperson. View a campaign and ensure you can see the Campaign Members subtab and the Add Leads and Add Contacts button in the View Campaign page.

  17. Publish the sandbox.

For more information, see the Subtabs topic in the Configuring Applications Using Application Composer guide.

Add Contacts and Leads from Your Workspace to Oracle Marketing Cloud

Salespeople can select contacts or leads from their Workspace saved searches and add them as campaign members to marketing campaigns. After the added contacts and leads are synchronized to the Marketing Cloud (Oracle Eloqua), they get added to the specified Oracle Eloqua marketing campaigns. This means that sales teams can ensure that their prospect contacts and leads are targeted with the intended marketing campaigns.

Before you start to add contacts and leads from your Workspace to Oracle Eloqua, ensure that the functional security privilege MKT_MANAGE_MARKETING_INTEGRATION_CAMPAIGN_MEMBER is assigned to the intended user or their role.

Note: You must set up the Campaign Member Import in the Oracle Sales Cloud Integration App in Oracle Eloqua. This enables Oracle Eloqua to synchronize the campaign members (leads and contacts) from your sales application.
  1. Create a sandbox and navigate to the Smart Actions administration tool in Application Composer, under Common Setup.

    Smart actions are actions that are specifically mapped to a client application, such as Workspace, and displayed to users only when specific conditions are met.

  2. Using the Actions search box, look for the Add to Campaign action.

    Two system actions are displayed: one for the Contact object and one for the Lead object.

  3. For each of the objects, select the Enabled check box.

  4. Verify that the Add to Campaign action is available for both Contacts and Leads saved searches in Workspace.

Enable the Campaign Analytics Tab in Campaigns List Page

You can view reports associated with marketing campaigns through the Analytics side tab from the Campaigns list page. The Analytics tab is hidden by default but you can make it available to your users through the Structure tool. You can then filter the Analytics tab to display which user-defined or predefined campaign related reports to display to campaign users.

Here's how to expose the Analytics tab in the Campaigns list page.

  1. Sign in as a sales administrator or as a setup user.

  2. Activate a sandbox.

  3. Navigate to Structure, in the Configuration category.

  4. In the Structure page, ensure that the Navigation Configuration tab is selected.

  5. Expand the Sales node and click Campaigns.

  6. From the Edit Page Entry: Campaigns page, select Tabs.

  7. On the Campaign ROI Analytics row, change the value for visible column to Yes.

  8. Test the changes: Navigate to Sales > Campaigns as a user with access to the campaigns pages, for example, as a salesperson. View the campaign and ensure you can see the Analytics side tab in the Campaigns list page.

  9. Publish the sandbox.

Here's how to expose the user-defined Analytic subtabs in the Edit Campaign page.

  1. Navigate to Application Composer, in the Configuration category.

  2. In the navigation tree, expand Standard Objects, expand Campaigns, and click Pages.

  3. Ensure that the Application Pages tab is selected.

  4. In the Details Page Layouts region, duplicate the standard layout by highlighting the standard layout and clicking the Duplicate icon.

  5. Type a new layout name and click Save and Edit.

    The Details Layout page appears.

  6. In the Subtabs Region, click the Hide, Show, or Reorder Subtabs icon.

    The Configure Subtabs dialog box appears.

  7. Move Analytics from the Available Subtabs to the Selected Subtabs window.

  8. Click OK.

  9. Back in the Details Layout page, click Done.

  10. Be sure that the layout status for your user-defined layout is Active.

  11. Test the changes: Navigate to Sales > Campaigns as a user with access to the campaigns pages, for example, as a salesperson. View the campaign and ensure you can see the Analytics side tab in the Campaigns list page.

  12. Publish the sandbox.

For more information, see the Section: Work with Subtabs in the Extending Sales and Service guide.

Marketing Cloud Data

Overview of Oracle CX Sales Configuration

You can extend leads and contacts in Oracle CX Sales to show the activity data collected by Oracle Marketing Cloud. This provides important marketing context to your sales representatives when they're perusing leads and contacts in CX Sales.

You can expose the Digital Profile Infolets to show highlights of the activity data. You can also configure Digital Profile and Interaction Data in CX Sales to leverage the Eloqua Profiler and Eloqua Engage sales tools. These tools enable you to gain deeper insights into contact profiles to effectively use marketing collateral in outbound sales communications.

You must have the Sales Administrator job role, and the Resource and Employee abstract roles, to access the integration functionality and perform the configuration tasks described in the following sections. The Sales Administrator job role is required to access Personally Identifiable Information (PII), such as email, or mobile phone data.

Note: Use the Manage Users work area, and not the Security Console, for creating Sales Cloud users. For information about creating users and provisioning them with the required job roles, see the Securing CX Sales and B2B Service guide.

Options for Accessing Digital Data in Oracle Marketing Cloud

The integration enables you to access digital activity data maintained for users in Marketing Cloud from the Engagement Cloud UI. Here are your options:

  • Display an embedded Digital Profile infolet on the Contact - Overview page to display digital activity data for a contact.

    This infolet comes with the integration but must be made visible in the UI using Application Composer. For information, see the topic, How You Configure Access to the Digital Profile Infolet.

  • Extend the integration by creating custom links to Oracle Eloqua Profiler for leads and to Oracle Eloqua Engage for contacts and leads, and then embed the links in the Engagement Cloud UI.

    For information, see the section Extend Access to Digital Profile and Interaction Data.

Requirements for Accessing Digital Data

To implement access to digital activity data in Oracle Eloqua, you need to do the following:

  • The user that connects to Oracle Eloqua must have a license for Oracle Eloqua Profiler and Oracle Eloqua Engage.

    For information see the topic How You Configure Access to the Digital Profile Infolet.

  • The Engagement Cloud instance where you want to display digital data must also be defined as users in Marketing Cloud. The email address of the user also must be the same in both applications.

How You Configure Access to the Digital Profile Infolet

You can enable the optional Digital Profile infolet to display on the CX Sales Edit Contact - Overview page.

The Digital Profile infolet shown in the following figure displays summary information about a contact's digital activities, such as the number of websites visited or form submissions made. These activities are captured by Eloqua (Oracle Marketing Cloud). You can also drill down on each activity type to access the Digital Profiler tool in Marketing Cloud where detailed information for each activity is available.

The digital profile UI

To enable the Digital Profile infolet functionality you perform the following two steps:

  • Set up a connection to Marketing Cloud.

  • Display the infolet using Application Composer.

Both tasks are described in the following sections.

Note: Before you enable the Digital Profile infolet, make sure that the Dhttps and JSSE settings are enabled on your environment.

Set Up a Connection to Oracle Marketing Cloud

In Oracle CX Sales, perform the following steps to set up a connection to Oracle Marketing Cloud.

  1. Sign in as a sales administrator or as a setup user.

  2. Navigate to the Setup and Maintenance work area.

  3. Select the Sales offering, then search for the Manage Oracle CX Sales to Oracle Eloqua Integration task.

  4. Select the task in the search results list, and then click OK.

  5. Enter the values for the fields shown in this table to set up the connection to Marketing Cloud.

    Field Value

    URL

    If you're using Oracle CX Sales Release 12, patch bundle 10 or later, you must specify the following URL: https://login.eloqua.com

    Security Policy

    For example: oracle/wss_username_token_over_ssl_client_policy

    User name

    Enter the company name and user name used to connect to Oracle Marketing Cloud in the following format: Company_Name\User_Name

    The user you specify must have a license for Oracle Eloqua Profiler and Oracle Eloqua Engage if you're configuring access to data from these tools.

    Password

    The password used to connect to Oracle Marketing Cloud.

Display the Digital Profile Infolet on the UI

Here's how to make the Digital Profile infolet visible on the Contact Overview page using Application Composer.

  1. Sign in as a sales administrator or as a setup user.

  2. Navigate to the Application Composer work area (Navigator > Configuration > Application Composer).

  3. In the Objects area, expand Standard Objects, then expand the node for the Contact object and select Pages.

  4. On the Application Pages tab, navigate to the Detailed Page Layouts section.

  5. Edit the Default layout (or make a copy of the default layout if you prefer).

  6. In the Subtabs region, select the Overview icon (the first icon in the list).

  7. Click the Create Infolet Group icon, which is located near the end of the page.

  8. On the Create Infolet Group page, enter a name for the new infolet in the Infolet Group Name field, for example, Digital Activities, or Digital Profile.

  9. Shuttle the following infolets from the Available Infolets region to the Displayed Infolets region:

    • Form Submissions

    • Website Visits

    • Opened E-Mail

  10. Click Save and Close.

  11. Test your changes in the sandbox before publishing. For more information about sandboxes, see the topic Overview of Sandboxes in the Configuring Applications Using Application Composer guide.

Digital Profile and Interaction Data

Overview of Creating Custom Links

You can create custom links in the Oracle CX Sales UI that users can click to access digital profile and interaction data maintained in Oracle Marketing Cloud for a contact or lead. To enable this functionality, you must:

  1. Create custom links to Oracle Eloqua Profiler and Oracle Eloqua Engage (Lead object) or to Oracle Eloqua Engage (Contact object). For information, see the following topics:

    • Create Custom Links for the Sales Lead Object

    • Create a Custom Link for the Contact Object

    Note: You don't have to create a custom link to Oracle Eloqua Profiler for the Contact object because the Digital Profile infolet provides this functionality. For information, see the section Extend Access to Digital Profile and Interaction Data.
  2. Add the custom links to the CX Sales UI. For information, see the following topics:

    • Add Custom Links to the Sales Lead UI

    • Add the Custom Link to the Sales Contact UI

Note:

Before you can access the responsive version of Profiler it must be installed in your Oracle Eloqua instance. Once installed, your administrator can configure the options that Profiler provides. See the Oracle Eloqua Help Center for more information.

You can embed the Eloqua Profiler and Eloqua Engage pages as subtabs in the CX Sales UI instead of creating links. For information about creating subtabs, see the section on Subtabs in the Configuring Applications Using Application Composer guide.

Create Custom Links for the Sales Lead Object

Perform the steps in the following procedure to create custom links to Oracle Eloqua Profiler and Oracle Eloqua Engage for the Sales Lead object.

  1. Sign in as an administrator or as a setup user.

  2. Navigate to the Application Composer work area (Navigator > Configuration > Application Composer).

  3. In the Objects area, expand Standard Objects, and then expand the node for the Sales Lead Contacts object.

  4. Select Actions and Links

  5. Create the link to Eloqua Engage:

    1. In the Sales Lead Contacts: Actions and Links area, click the Create icon.

    2. Set the value of the Display Label field to Eloqua Engage.

    3. Verify that the Name field is automatically set to Eloqua_Engage.

    4. To indicate the Type of item you want to create, click the Link radio button.

    5. In the Script region, click the New icon.

    6. In the expression text box, enter the Oracle Eloqua Engage URL with arguments as follows:"https://login.eloqua.com/autoLogin?LoginPrefix=<Your_Eloqua_Prefix>&Url=/apps/engage?sendTemplateToConta'cts/" + nvl (PersonEmail,"no email")where <Your_Eloqua_Prefix> is the prefix of your Oracle Eloqua instance.

    7. Validate the script by clicking the Validate icon.

    8. If the script validates successfully, click the Save button.

  6. Create the link to Eloqua Profiler:

    1. In the Sales Lead Contacts: Actions and Links area, click the Create icon.

    2. Set the value of the Display Label field to Digital Profile.

    3. Verify that the Name field is automatically set to Digital_Profile.

    4. To indicate the Type of item you want to create, click the Link radio button.

    5. In the Script region click the New icon.

    6. In the expression text box, enter the Oracle Eloqua Profiler URL with arguments as follows:https://login.eloqua.com/autoLogin?LoginPrefix=<Your_Eloqua_Prefix>&Url=/apps/profiler?emailAddress=" + nvl(PersonEmail,"no email")where <Your_Eloqua_Prefix> is the prefix of your Oracle Eloqua instance.

    7. Validate the script by clicking the Validate icon.

    8. If the script validates successfully, click the Save button.

Add Custom Links to the Sales Lead UI

Perform the steps in the following procedure to add the Eloqua Engage and Eloqua Profiler custom links you created for the Sales Lead object to the Sales Lead UI.

  1. In Application Composer, in the Objects area, expand Standard Objects, then expand the node for the Sales Lead object.

  2. Select Pages, and then click the Application Pages tab.

  3. In the Details Page Layouts area, edit the Default Layout.

  4. Edit the Summary area.

  5. Move the custom links you created for Eloqua Engage and Eloqua Profiler from the Available Fields list to the Selected Fields list, and position them as required.

  6. Click Save and Close, and then Done.

You can view the custom links on the Sales Edit Lead UI as shown in the following figure.

Edit lead UI

Create a Custom Link for the Contact Object

Perform the steps in the following procedure to create a custom link to Oracle Eloqua Engage for the Contact object.

You don't have to create a custom link to Oracle Eloqua Profiler for the Contact object because the Digital Profile infolet provides this functionality. For information, see the topic, How You Configure Access to the Digital Profile Infolet.

  1. Sign in as a sales administrator or as a setup user.

  2. Navigate to the Application Composer work area (Navigator > Configuration > Application Composer).

  3. In the Objects area, expand Standard Objects, expand the node for the Contact object, and then select Actions and Links.

  4. Create the link to Eloqua Engage:

    1. In the Contact: Actions and Links area, click the Create icon.

    2. Set the value of the Display Label field to Eloqua Engage.

    3. Verify that the Name field is automatically set to Eloqua_Engage.

    4. To indicate the Type of item you want to create, click the Link option."https://login.eloqua.com/autoLogin?LoginPrefix=<Your_Eloqua_Prefix>&Url=/apps/engage?sendTemplateToContacts/" + nvl(PrimaryEmailAddress,"") where <Your_Eloqua_Prefix> is the prefix of your Oracle Eloqua instance. If you don't know what your prefix is, contact Oracle Eloqua Product Support.

    5. In the expression text box, enter the Oracle Eloqua Engage URL with arguments as follows:

    6. Validate the script by clicking the Validate icon.

    7. If the script validates successfully, click Save.

Add the Custom Link to the Sales Contact UI

Perform the steps in the following procedure to add the Eloqua Engage custom link you created for the Contact object to the CX Sales Contact UI.

  1. In Application Composer, in the Objects area, expand Standard Objects, expand the node for the Contact object, and then select Pages.

  2. Click the Application Pages tab.

  3. In the Details Page Layouts area, edit the Default Layout.

  4. Edit the Summary area.

  5. Move the custom link you created for Eloqua Engage from the Available Fields area to the Selected Fields area, and position it as required

  6. Click Save and Close, and then Done.

You can view the custom link on the CX Sales Edit Contact UI as shown in this figure.

Edit Contact UI

Copy Maps

Copy maps enable you to create objects by copying existing objects. For example, you can copy responses to create leads and opportunities, or you can copy deal registrations to create opportunities. A mapping file is also available to copy opportunities. You use the copy maps feature to map child objects and attributes in the source object (From object) to objects and attributes in the object you're creating (To object).

Predefined mapping files are available as part of your sales application to enable you to:

  • Map objects and attributes during the creation of an account when converting a lead to an opportunity.

  • Automatically add the primary partner contact to the lead team when a partner contact is added to the lead.

  • Create leads and opportunities from responses

  • Copy opportunities and create opportunities from deal registrations

To create a copy map:

  1. Sign in as a user with Application Composer access and verify that you have an active sandbox.

  2. Access Application Composer by selecting Application Composer from the Navigator menu, under the Configuration category.

  3. Select Sales to filter the object search, and under Advanced Setup, select Copy Maps.

  4. Click New, and then enter a unique name for the copy map. You specify the unique name in a profile option after you have completed and saved your copy mapping file.

    The Edit Copy Map window appears and you use it to define the copy map.

  5. In the Application Module Mapping section, enter general information about the mapping as outlined in this table:

    Field Description

    Name

    Enter a name for the mapping file. The name is displayed in the Copy Maps window. You can use the name to locate and search for copy maps that you want to edit or delete.

    Map Group

    Select the required mapping group for the new copy map from the drop-down list.

    To

    Select the application module that you're copying to. For example, if you're copying leads to opportunities, then select the application module that includes leads.

    From

    Select the application module that you're copying from. For example, if you're copying responses to leads, then select the application module that includes responses.

  6. In the Entity Mappings section, add a record for each view object that you're copying by completing these fields:

    Field Description

    To

    Select the new view object that you're copying to.

    From

    Select the existing view object that you're copying from.

    Query Type

    Select one of the three query types: Unique Identifier, Join, or All Records. If you select All Records, then don't enter any information in the remaining fields.

    Query Attribute

    If you selected either Unique Identifier or Join in the Query Type field, then select an attribute to use during runtime. The attribute is used to filter the records that are copied to the new object. For example, if you select LeadId, then during runtime, only the records matching the Lead ID passed to the copy map engine are copied.

    Joined View Object and Joined Attribute

    If you selected Join in the Query Type field, then use these two fields to specify:

    • The view object to which this object is joined

    • The attribute used as the basis of the join

  7. Select each line in the Entity Mappings section, and add records to the Attribute Mappings section for each of the attributes by completing these fields:

    Field Description

    To

    Select the attribute to which the selected entity is copied.

    Referenced View Object

    If this attribute is a foreign key, select the view object joined by this foreign key. The application generates new foreign keys that keep the reference intact.

    Primary Key

    If this attribute is a primary key, select this check box. Instead of copying the value in the From object, the application generates a unique value for this key field in each record in the To object.

    From

    Select the attribute from which the selected entity is copied.

    From Expression

    Optionally, you can enter a Groovy expression to change the value in this attribute. For example, you want to change the value of the From object to some new value in the attribute of the To object. You can also enter a constant to fill this attribute with a constant value in every record of the To object.

  8. Click Save and Close.

  9. Specify the mapping file name in one of these profile options:

    • Use the Direct Lead to Opportunity Mapping profile option to specify the mapping file name created when a direct lead is converted to an opportunity.

    • Use the Copy Opportunity Mapping profile option to specify the mapping file name to use when copying an opportunity. The file is used to copy attributes and child objects when creating a copy of an existing opportunity.

    • Use the Partner Lead to Opportunity Mapping profile option to specify the mapping file name created when a partner lead is converted to an opportunity.

    • Use the Lead to Account Mapping profile option to specify the mapping file name created in Copy Maps. This file maps objects and attributes during the creation of an account when converting a lead to an opportunity.

    • Use the Lead to Contact Mapping profile option to specify the mapping file name created in Copy Maps. This file maps objects and attributes during the creation of a contact when converting a lead to an opportunity.

Copy maps are a declarative way to specify what fields are copied among objects. The functionality for converting a lead to an opportunity uses the predefined Copy Lead To Opportunity Map copy map feature. This worked example shows you how to modify an existing mapping file to create an opportunity from a lead.

Predefined mapping files are available to you as part of your sales application. You can use copy maps to:

  • Map objects and attributes during the creation of an account and the creation of a contact when converting a lead to an opportunity.

  • Create leads and opportunities from responses

  • Copy opportunities and create opportunities from deal registrations

In this example, you want to:

  • Modify the copy lead to opportunity map

  • Add a field to an opportunity

  • Verify your changes

Modify the Copy Lead To Opportunity Map

To modify the Copy Lead to Opportunity Map:

  1. Sign in as a user with Application Composer access and verify that you have an active sandbox.

  2. Access Application Composer by selecting Application Composer from the Navigator menu, under the Configuration category.

  3. Under Advanced Setup, select Copy Maps. The Copy Maps window appears.

  4. Select the Copy Lead To Opportunity Map. The Edit Copy Map window appears.

  5. In the Entity Mappings region, highlight the row that contains From: Sales Lead and To: Opportunity.

  6. In the Attribute Mappings region, select the Add icon to add a new row.

  7. From the To: drop-down list, select Comments.

    This value represents the Comments field in opportunities that contains the value.

  8. In the From Expression field, enter this Groovy expression:

    return "Copy Map executed for Lead: "+nvl(LeadNumber,"");

    The expression uses text and the LeadNumber as the value to set into the opportunity Comments field.

  9. Click Save and Close.

Add a Field to an Opportunity

The Comments field isn't displayed by default on the Opportunities UI. Use Application Composer to add the Comments field to the opportunity header region as follows:

  1. From Application Composer, expand and select Objects, Standard Objects, and then Opportunity.

  2. Click Pages and then select the Application Pages tab.

  3. On the Details Page Layouts section, edit any custom layout. If none exists, then duplicate the standard layout and edit the resulting custom layout.

  4. Edit the Summary region.

  5. Select the Comments field from the list in the Available Fields region and move it to the Selected Fields region.

    Details Layout: Default Layout: Edit Summary window

  6. Click Save and Close.

  7. Verify that the Summary region list contains the Comments field.

  8. Click Done.

Verify Your Changes
  1. Navigate to the Application Composer UI with the same user access and sandbox details used to complete the Modify Lead to Opportunity Copy Map task.

  2. Navigate to Leads and click Create Lead.

  3. Enter Autumn Lead as the Name and select Pinnacle Technologies as the Account. Accept all other defaults values for the remaining fields.

  4. From the Actions drop-down list, select Convert to Opportunity.

  5. Click the Opportunities icon.

  6. Locate the newly created opportunity. It must have the same name as the lead that was originally created.

    Examine the value in the Comments field. It contains the expected text, plus the lead number which originated this opportunity. Here's a screenshot that shows an example of the Edit Opportunity page with the Comments field populated with the lead number.

    Sample screen to show the lead number which originated
the opportunity

This topic describes how to update the copy map to copy over the Lead contact value into the opportunity's Customer field.

Updating the Copy Map to Copy the Lead Contact Value

In this step, you update the copy map to copy over the Lead contact value into the opportunity Customer field. Copy maps are a declarative way to specify what fields are copied among objects. The functionality for converting a lead to an opportunity uses the predefined Copy Lead To Opportunity Map copy map feature.

  1. Expand Advanced Setup and click Copy Maps (in left pane of the Application Composer).

  2. Click Copy Lead to Opportunity Map.

  3. Under the Attribute Mappings section, in the row for TargetPartyId, select PrimaryContactId from the drop-down list in the From column.

  4. Click Save and Close.

This topic outlines the one-to-one mapping of the attributes between the lead and opportunity applications. When converting leads to opportunities, lead attributes, such as sales account, products, revenue amount, lead contacts, and other attributes, are mapped to the newly created opportunity.

You convert a lead to an opportunity when the lead is qualified and is ready for further processing along the sales cycle. The following sections outline:

  • General lead attributes mapped to opportunities

  • Partner lead-specific attributes mapped to opportunities

  • Lead contact attributes mapped to opportunity contact attributes

  • Lead product attributes mapped to opportunity revenue line attributes

  • Profile options that specify the mapping file name for user-defined mapping files

General Lead Attributes Mapped to Opportunities

This table lists the general lead attributes that are mapped to the corresponding opportunity attributes:

General Lead Attribute Opportunity Attribute

Budget Amount

Budget Amount

Budget Status

Budget check box

Customer

Target Party

Currency

Currency

Description

Description

Estimated Close Date

Estimated Close Date

Expiration Date

Expiration Date

Lead Number

Lead Number

Name

This attribute value is the Lead Name and the current date and time, which generates a unique opportunity name.

Name

Owner

Indicates the user who starts the conversion.

Owner of opportunity

Primary Contact

Key Contact

Source Code

If a campaign or any other source creates a lead in which source code is used, then this attribute value is mapped.

Source

Partner Lead Attributes Mapped to Opportunities

This table lists the partner lead attributes that are mapped to the corresponding opportunity attributes:

Partner Lead Attribute Opportunity Attribute

Deal Approved By

For direct leads, this attribute is set to the user who starts the conversion.

Owner of opportunity

Deal Approved By Resource Organization

Resource Organization

Partner

Partner

Partner Type

Partner Type

Partner Program

Partner Program

Registration Type

Registration Type

Registration Number

Registration Number

Lead Contact Attributes Mapped to Opportunity Contact Attributes

To map lead contact attributes to opportunity contact attributes, the following relationships must apply between the contact and the customer:

  • The relationship end date is later than the current date.

  • The relationship start date is earlier than the current date.

  • The relationship status is active.

This table lists the lead contacts attributes that are mapped to the corresponding opportunity contacts attributes:

Lead Contact Attribute Opportunity Contact Attribute

Contact

Contact

Contact Role

Contact Role

Primary

Primary

Lead Product Attributes Mapped to Opportunity Revenue Line Attributes

This table lists the lead product attributes that are mapped to the corresponding opportunity revenue line attributes:

Lead Product Attribute Opportunity Revenue Line Attribute

Amount

Revenue Amount

Approver

Resource Party

Currency

Currency for the Revenue Amount

Inventory Item

Inventory Item

Organization

Inventory Organization

Product Group

Product Group

Quantity

Quantity

Unit of Measure

Unit of Measure

Unit Price

Unit Price

Profile Options for Mapping File Names

As an administrator, you can specify your own mapping file name to use for mapping objects and attributes during the lead-to-opportunity conversion process. For example, you can create user-defined lead attributes in Application Composer, Copy Maps, and can then add these attributes to the existing ready-to-use mapping files. You must save the user-defined mapping file using a unique file name and then specify the saved mapping file name in one of these profile options:

  • Use the Direct Lead to Opportunity Mapping profile option to specify the mapping file name created when a direct lead is converted to an opportunity.

  • Use the Partner Lead to Opportunity Mapping profile option to specify the mapping file name created when a partner lead is converted to an opportunity.

If a lead is linked to a marketing campaign through a campaign response, then the association to the campaign must be maintained in your lead to opportunity conversion process. This allows the opportunities to be linked with campaigns, and the respective opportunity revenue to be attributed to its linked campaign.

Modify the predefined copy map template, Copy Lead to Opportunity Map, to add a campaign entity mapping and campaign attributes. For information about how to modify a copy map, see the Example of Modifying the Lead to Opportunity Copy Map topic.

  1. Add an entity mapping between OpportunityCampaignVO and Campaign Member with LeadId as the unique identifier.

  2. Add the following attribute mappings as shown in the screenshot.

    • CampaignId

    • OptyCampaignId

    • OptyId

    • RevenuePercentage

    Entity mapping screenshot for campaigns

Use the Lead Convert and Mass Lead Convert layout pages in Application Composer if you want to expose user-defined and standard fields in your lead to opportunity conversion process. You must then configure the predefined copy map template, Copy Lead to Opportunity Map, to map the fields. Use the Manage Sales Lead Administrator Profile Values task to ensure that the configured copy map to be your default copy map which maps lead attributes to opportunity attributes during lead conversion.

Modify the Lead Convert Pages

You duplicate the standard lead convert and mass lead convert page layouts and modify the default layouts. Edit the default page layouts to expose standard and user-defined fields so that their values can be copied to opportunity during lead conversion.

Note: These predefined standard fields exist for both the Mass Lead Convert Layouts and Lead Convert Layouts:
  • Opportunity Name

  • Owner

  • Primary Contact

  • Account

Here are the steps to modify the lead convert pages:

  1. Sign in as a user with Application Composer access and verify that you have an active sandbox.

  2. Access Application Composer by selecting Application Composer from the Navigator menu, under the Configuration category.

  3. From Application Composer, expand and select Objects, Standard Objects, and then Sales Leads.

  4. Click Pages and then select the Application Pages tab.

  5. On the Mass Lead Convert Layouts and Lead Convert Layouts sections, edit any user-defined layout. If no user-defined layouts exist, then duplicate the standard layouts and edit the resulting user-defined layouts, as required.

  6. Click Save and Close.

  7. Verify your user-defined field changes and click Done.

  8. Edit the copy map to map the user-defined fields between the lead and opportunity.

    See the topic Example of Modifying the Lead to Opportunity Copy Map for more information.

  9. Set the modified copy map as your default copy map.

    See the topic Enable a User-Defined Copy Lead To Opportunity Map Value in the Implementing Sales guide.