Siebel CRM Configuring Siebel Open UI Siebel Innovation Pack 2016, Rev. A E52417-01 |
|
Previous |
Next |
View PDF |
This topic includes an example of customizing Siebel Pharma in Siebel Open UI for display in a Siebel Mobile disconnected client. For more information about the functionality that these customizations modify, see the chapter that describes how to use the Siebel Mobile Disconnected Application for Siebel Pharma in Siebel Mobile Guide: Disconnected.
This topic customizes Siebel Pharma to submit a Pharma Call record depending on whether or not Siebel Open UI already submitted this call. It makes sure Siebel Open UI does not overwrite a call that it already submitted to the Siebel Server. To submit a call in Siebel Pharma, the user must do the following work:
Enter all information for the call.
Add at least one sample for the call.
Get the required signature for the samples that the call includes.
Set the status for the call to Planned or Signed.
Tap Submit.
Siebel Pharma locks a call after it submits this call, and then the user can no longer edit or update the call. You can modify some of this behavior. For more information about the work you do in this topic, see "Process of Customizing Siebel Open UI for Siebel Mobile Disconnected". For more information about the methods that this example uses, see "Methods You Can Use to Customize Siebel Mobile Disconnected".
To customize Siebel Pharma for Siebel Mobile Disconnected clients
Create a new JavaScript file.
You can use any file name that is meaningful to your deployment. For example, you can use a short name that indicates what the business service accomplishes. It is recommended that the file name end with svc.js or service.js. For example, callsvc.js. To get a copy of this file, see Article ID 1494998.1 on My Oracle Support. For more information about the folders you can use to store your customizations, see "Organizing Files That You Customize".
Add the following code:
SiebelApp.pharmacallsvc = (function () { function pharmacallsvc(pm) { } SiebelJS.Extend(pharmacallsvc, SiebelApp.ServiceModel);
This code adds the pharmacallsvc method to the pharmacallsvc business service.
Specify the logic for your method.
Add the following code immediately after the code you added in Step 3:
pharmacallsvc.prototype.InvokeMethod = function (psInputArgs) { var currRetValue={err:false}, retObj; var svcMthdName = ""; var psOutArgs = SiebelApp.S_App.NewPropertySet(); svcMthdName = psInputArgs.GetProperty("MethodName").toString(); if (svcMthdName === "Submit") { retObj=currRetValue=this.Submit(); psOutArgs.SetProperty("Invoked", true); currRetValue={err: false, retVal: psOutArgs}; } return currRetValue; };
This code configures Siebel Open UI to run InvokeMethod on the business service if the svcMthdName variable that you defined in Step 3 contains a value of Submit.
Define the method that includes your customization logic. You add the following code immediately after the code you added in Step 4:
pharmacallsvc.prototype.Submit = function () { var currRetValue={err:false}, retObj; var model= SiebelApp.S_App.GetModel(); var pBusObj = model.GetBusObject("boName"); var pBusComp = pBusObj.GetBusComp("bcName"); var now = new Date(); var strStatusField = pBusComp.GetUserProperty("Status Field"); var pickName = SiebelApp.S_App.GetActiveView().GetActiveApplet().GetControl("Status").GetPickApplet(); retObj=currRetValue=pBusComp.SetFieldValue(strStatusField, "submit", true); retObj=currRetValue=pBusComp.WriteRecord(); return currRetValue; }
This code defines the Submit method. It sets the value for the Status field to Submitted. It uses the following methods:
Test your modifications:
Tap Calls on the application banner to display the Calls list.
Tap a call in the list that you know you have not submitted, and then tap Submit to submit the call.
Verify that Siebel Open UI does the following:
Modifies the call status to Submitted.
Locks the call
Decreases the sample inventory for the sales representative according to the samples and promotional items that the call dropped off
Closes the call.
Allows you to review, but not edit the call details.
Tap a call in the list that you know you have already submitted, and then tap Submit to submit the call.
Make sure Siebel Open UI does not overwrite this call. Make sure it displays a dialog box that describes that you have already submitted this call.
Configuring interactive detailing involves configuring the Detail button to appear on an applet in the application. By default, the Detail button appears only for Calls in the Siebel Open UI application for Siebel Pharma. Selecting the Detail button starts the eDetailer player which is used to deliver personalized content to customers, to demonstrate information about products to customers, and to obtain feedback from customers about product presentations and personalized content delivered. For more information about using the eDetailer player in the Siebel Open UI application for Siebel Pharma, see Siebel Connected Mobile Applications Guide.
The following procedure shows you how to configure the Detail link for Contacts in the Siebel Open UI application for Siebel Pharma, but you follow the same procedure if configuring the Detail link for any other applet in the application. In the following procedure, you configure a new data map object (EdetailingContact) to create the Activity and Response record to capture customer feedback.
To configure the Detail link for Contacts in the Siebel Open UI application for Siebel Pharma
Create a new Detail button control and drilldown in the Contact Form Applet in Siebel Tools:
Open Siebel Tools.
For more information, see Using Siebel Tools.
In the Object Explorer, click Applet.
In the Applets list, query the Name property for the Contact Form Applet.
Create a new Detail button control:
In the Object Explorer, expand the Contact Form Applet, and then Control.
In the Controls list, create a new button control using values from the following table.
Property | Value |
---|---|
Name | EdetailerButton |
Caption | Detail |
Method Invoked | ShowEdetaillerPreviewView
This method handles the related view navigation and data for the Detail link (eDetailer player). ShowEdetailerPreviewView is a new LS PCD Service for delivering personalized content in the Life Sciences industry. Note that if Siebel Tools does not display the Method Invoked in the list, then type it in manually. |
Define user properties for the Detail button:
In the Object Explorer, expand the Controls tree, and then click Business Component User Prop.
If you are invoking the business service method Named Method, then the user property value for Named Method is as follows:
User Property Name | Value |
---|---|
Named Method 1 | "ShowEdetailerPreviewView", "INVOKESVC", "Contact", "LS PCD Service", "ShowEdetailerPreviewView", "DrilldownName", "Edetailer Drilldown", "EdetailerDatamapObj", "EdetailingContact", "CreateBookmark", "true", "'ObjectId'", "[Id]" |
Create input arguments for Named Method with the values shown in the following table.
Property Name | Value | Purpose |
---|---|---|
DrilldownName | Edetailer Drilldown | Navigates to the eDetailer player view. |
EdetailerDatamapObj | EdetailingContact | Triggers the creation of activities, and the feedback capture page when finished showing the presentation. |
CreateBookmark | TRUE | Navigates back to the originating view (for example, Contact) when done showing the presentation. |
ObjectId | Row Id of current record | Used to log the response captured to the appropriate contact or account call. |
Add a new drilldown object for the Detail button control:
In the Object Explorer, expand the Contact Form Applet, and then Drilldown Object.
In the Drilldown Objects list, add a new drilldown object with the values shown in the following table.
Property | Value |
---|---|
Name | Edetailer Drilldown |
Hyperlink Field | Last Name |
View | eDetailer Message Plan Preview View |
Source Field | None |
Business Component | LS Admin Messagign Plans BC |
To show only the messaging plans that are related to a particular object (that is, remove the object for example "Product"), then add a new drilldown object with the values shown in the following table.
Property | Value |
---|---|
Name | Edetailer Drilldown |
Hyperlink Field | Name |
View | eDetailer Message Plan Preview View |
Source Field | Id |
Business Component | LS Admin Messaging Plans BC |
Destination Field | Product Id |
Add the Contact business component to the Admin Messaging Plan business object.
In the Object Explorer, expand the Business Object tree, and then click Business Object Component.
In the Business Object Component list, create new records with the values shown in the following table.
Business Object Component | Value |
---|---|
Bus Comp | Link |
Contact | None |
Configure a new data map object (EdetailingContact) to create the Activity and Response record:
Log in to the Siebel business application.
Navigate to the Administration - Application screen, then the Data Map Administration view.
Click New and create a new data map object with the values shown in the following table:
Data Map Object Name | Source Business Object | Destination Business Object |
---|---|---|
EdetailingContact | Admin Messaging Plan | Action |
For the EdetailingContact data map object, click New in the Data Map Component applet and add the following components:
Name | Source Business Component | Destination Business Component | Parent | Advanced Options |
---|---|---|---|---|
Contact Act | Contact | Action | None | Source Search Specification = [Id] = GetProfileAttr ('Edetailer Object Id') |
ResponseLog | eDetailer Feedback Capture VBC | LS PCD Presentation Details BC | Contact Act | None |
For the Contact Act data map component, click new in the Data Map Field applet and add the following fields:
Source Type | Source | Destination Type | Destination |
---|---|---|---|
Field | Id | Field | Primary Contact Id |
For the ResponseLog data map component, click new in the Data Map Field applet and add the following fields:
Source Type | Source | Destination Type | Destination |
---|---|---|---|
Field | EndTime | Field | Message End Time |
Expression | GetProfileAttr("Edetailer Object Id") | Field | Contact Id |
Field | ItemName | Field | Message |
Field | Mpild | Field | Message Id |
Field | ParentMPId | Field | Message Plan Id |
Field | ParentMPName | Field | Message Plan |
Field | StartTime | Field | Message Start Time |
The following procedure shows you how to configure the Detail link in the Siebel Open UI application for Siebel Pharma specifically. To configure the Detail link in a different Siebel Open UI application (for example, in the Siebel Open UI application for Siebel Service), follow the procedure shown in "Configuring the Detail Link - Scenario 1: Using New Data Map Object to Capture Customer Feedback". In the following procedure, you configure new business component user properties (rather than a new data map object) to capture customer feedback.
To configure the Detail link for Contacts in the Siebel Open UI application for Siebel Pharma
Create a new Detail button control and drilldown in the Contact Form Applet in Siebel Tools:
Open Siebel Tools.
For more information, see Using Siebel Tools.
In the Object Explorer, click Applet.
In the Applets list, query the Name property for the Contact Form Applet.
Create a new Detail button control:
In the Object Explorer, expand the Contact Form Applet, and then Control.
In the Controls list, create a new button control using values from the following table.
Property | Value |
---|---|
Name | EdetailerButton |
Caption | Detail |
Method Invoked | ShowEdetaillerPreviewView
This method handles the related view navigation and data for the Detail link (eDetailer player). ShowEdetailerPreviewView is a new LS PCD Service for delivering personalized content in the Life Sciences industry. Note that if Siebel Tools does not display the Method Invoked in the list, then type it in manually. |
Define user properties for the Detail button:
In the Object Explorer, expand the Controls tree, and then click Business Component User Prop.
If you are invoking the business service method Named Method, then the user property value for Named Method is as follows:
User Property Name | Value |
---|---|
Named Method 1 | "ShowEdetailerPreviewView", "INVOKESVC", "Pharma Professional Call", "LS PCD Service", "ShowEdetailerPreviewView", "DrilldownName", "Edetailer Drilldown", "CreateBookmark", "true", "'ObjectId'", "[Id]" |
Create input arguments for Named Method with the values shown in the following table:
Property Name | Value | Purpose |
---|---|---|
DrilldownName | Edetailer Drilldown | Navigates to the eDetailer player view. |
CreateBookmark | TRUE | Navigates back to the originating view (for example, Contact) when done showing the presentation. |
ObjectId | Row Id of current record | Used to log the response captured to the appropriate contact or account call. |
Add a new drilldown object for the Detail button control:
In the Object Explorer, expand the Contact Form Applet, and then Drilldown Object.
In the Drilldown Objects list, add a new drilldown object using values from the following table.
Property | Value |
---|---|
Name | Edetailer Drilldown |
View | eDetailer Message Plan Preview View |
Hyperlink Field | Last Name |
Source Field | None |
Business Component | LS Admin Messaging Plans BC |
To show only the messaging plans that are related to a particular object, then add a new drilldown object with the values shown in the following table.
Property | Value |
---|---|
Name | Edetailer Drilldown |
Hyperlink Field | Name |
View | eDetailer Message Plan Preview View |
Source Field | Id |
Business Component | LS Admin Messaging Plans BC |
Destination Field | Product Id |
Add the Contact business component to the Admin Messaging Plan business object.
In the Object Explorer, expand the Business Object tree, and then click Business Object Component.
In the Business Object Component list, create new records with the values shown in the following table.
Business Object Component | Value |
---|---|
Bus Comp | Link |
Contact | None |
Configure the business component user properties with the values shown in the following table for the eDetailer Feedback Capture VBC business component:
Business Component User Property | Value |
---|---|
eDetailer Feedback Capture VBC|LS PCD Presentation Details BC FieldMap 1 | EndTime|Message End Time |
eDetailer Feedback Capture VBC|LS PCD Presentation Details BC FieldMap 2 | ItemName|Message |
eDetailer Feedback Capture VBC|LS PCD Presentation Details BC FieldMap 3 | MpiId|Message Id |
eDetailer Feedback Capture VBC|LS PCD Presentation Details BC FieldMap 4 | ParentMPId|Message Plan Id |
eDetailer Feedback Capture VBC|LS PCD Presentation Details BC FieldMap 5 | ParentMPName|Message Plan |
eDetailer Feedback Capture VBC|LS PCD Presentation Details BC FieldMap 6 | StartTime|Message Start Time |
eDetailer Feedback Capture VBC|LS PCD Presentation Details BC FieldMap 7 | Response|Respons |
SourceBC | eDetailer Feedback Capture VBC |
DestinationBC | LS PCD Presentation Details BC |