Quote Model Specificities for SFDC
This section lists the specificities of the quote model when used in the context of PROS Quote powered by F.com.
- Synchronization action
The synchronization action whose name is indicated in the Custom Settings should be similar to the action indicated in the layout.xml and declared in the quote model.
Custom Settings:
Layout File:
<action actionName="CUSTOM(name=Synchronize)" alignment="left" resourceName="btnClose" translationName="tooltip.Close" url=""/>
Quote model:
The Synchronize action has to be an OnDemand Grid Action, of type CloseSpreadSheet and delegated to the following class:
com.sfdc.integ.output.DelegateCloseSpreadsheetActionForceCom
- Refresh action
The refresh action whose name is indicated in the Custom Settings is used when the end-user push the ‘Refresh’ button. It allows to call CPQ and re-launch the synchronization from the Overview tab.
Custom Settings:
Quote model:
The Refresh action has to be an Automated Action, triggered by a ‘StatelessExecutionMode’ (i.e. the action can be launched when CPQ Web service is launched in silent mode) and of type JavaClass pointing to the following class:
com.sfdc.integ.output.RefreshStatelessActionForceCom
- External ID
The External ID is a field which is present both on CPQ and SFDC side. It is automatically managed by the integration process. It stores the ID of the quote when this ID is different than the ID of the F.com Quote in order to manage the calls to the CPQ WS.
- Synchronization optimization policy
Synchronization optimization policy
The more elements are included in the quote, the more synchronizing the quote content with SFDC takes time. The idea to optimize the sync process is to reduce the size of the quote content out XML flow sent by the CPQ to the CRM.
To reduce the size of this XML flow, a policy mechanism can be configured through the ContentOutPolicy parameter that can be set as input of the delegate classes responsible for the quote synchronization with the CRM.
- This parameter can have several values:
- none: by default, no policy applies on the quote content out and all CPQ elements are sent to the CRM.
- custom: Allows to filter precisely the quote content out XML flow.Note: By default, if the parameter is not filled, the “none” value is applied.
In the case of a custom policy, the inclusion of the following elements in the XML flow is (de)activable according to a Boolean:
- quoteHeader: inclusion of quote header data
- totalCells: inclusion of quote footer data
- productSublines: inclusion of SI/CP sublines
- quoteLines: inclusion of quote lines (If this parameter is set to false, all the colmuns and sublines policies will be deactivated as well)
- catItemXML: includes catalog XML elements
- confItemXML : includes configuration XML elementsNote: By default, if the parameter is not filled, its boolean value will be equal to "true", meaning that the element (quote header, etc.) IS INCLUDED in the XML flow.
The following parameter allows to select the quote column(s) to include in the XML flow. All other columns are ignored:
columnName: the separator used between column names is "~"
For instance, the syntax of this policy mechanism can be the following:
- none
- custom;quoteHeader=true;totalCells=true;quoteLines=true;productSublines=true;column Name=ItemQty~ListPrice~TotalListPrice;catItemXML=true;confItemXML=true
For instance, an automated action can be configured as follows in the Quote Designer:
For instance, an on-demand grid action can be configured as follows:
The delegate Java classes concerned by this policy mechanism are all the ones linked to CRM actions They could be automated actions or on-demand grid actions.
- com.sfdc.integ.output.DelegateCloseSpreadsheetActionForceCom
- com.sfdc.integ.output.RefreshStatelessActionForceCom (via StatelessExecutionMode trigger)
