Download PDF
Download page Creating Custom Buttons for Different Flows.
Creating Custom Buttons for Different Flows
To use a different flow for CPQ based on the flow settings, you must create a custom button for the Quote/Proposal object. The custom buttons is named Configure Product with a custom label you define in the formula.
- Go to Setup > Create > Objects and search for Quote/Proposal object.
- In the Custom Fields & Relationships related list, click New.
- From Step 1. Choose the field type, choose Formula as Data Type and click Next.
- From Step 2. Choose the output type, Type Configure (Flow) in the Field Label. Choose Text as Formula Return Type.
In Step 3. Enter formula, you must paste one the following URL under the Simple Formula tab.
URL Description Regular
This is the regular URL available for Configure Products button.
IF ( LEN( Apttus_QPConfig__PriceListId__c ) > 0 , HYPERLINK("/apex/Apttus_QPConfig__ProposalConfiguration?id="&Id&"&flow=ngFlow" , IMAGE("/resource/Apttus_QPConfig__Button_Configure", "Configure Products"),"_self"), NULL)
CODEOptimized You can use the optimized URL to launch Catalog & Cart quickly compared to the above-mentioned URL. The reduction in time to launch Catalog and Cart compared using the optimized URL may vary and in some Orgs, the benefits may be minimal. The optimized URL primarily requires the following parameters:
- Business Object ID
- Flow
All other parameters are supported. You can update the existing Configure Products formula with the optimized launch URL. If the org has existing customization, you must test and verify the optimized URL after replacing the existing URLs. The following mentioned URL is an example of an optimized URL for the Configure Products button.
IF ( LEN( Apttus_QPConfig__PriceListId__c ) > 0 , HYPERLINK("/apex/Apttus_Config2__Cart?businessObjectId="&Id&"&flow=ngFlow", IMAGE("/resource/Apttus_QPConfig__Button_Configure", "Configure Products"),"_self"), NULL)
CODEEnsure that you enter the name of your Flow setting in the flow parameter in the above formula. In our example, it is ngCPQ.
- Click Next
- Select appropriate Field Level Security and click Next.
- Choose the page layouts on which you want to display this field.
- Click Save.
You can use to following parameters in the formula to achieve different tasks.
Parameter | Description | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
productOrderByClause | Use this parameter to sequence the products within a Category. Refer to Sequencing Products within a Category for more details. | ||||||||||||||||||||
asyncFinalize | Set the value of this parameter to True to finalize any cart asynchronously. When the Sales rep clicks Finalize, the cart closes and the Sales rep is redirected to the Quote Details page. The finalization process is completed in the background. The Sales Rep must refresh to see the changed product configuration status. If the parameter value is False, then the cart is finalized without closing. | ||||||||||||||||||||
isCartTotalingDisabled | Set the value of this parameter to True to selectively skip totaling of pricing of products on the Cart, at a transaction level. When you add products on the cart, the totals section is not updated. When you see the value to True, CPQ does not execute Pricing Callback in ADJUSTMENT mode. | ||||||||||||||||||||
useAdvancedApproval | Set the value of this parameter to False to selectively skip the approval of cart, at a transaction level. CPQ invokes the approval process only if this flag is set to True. If any workflow processes are setup to trigger approvals based on criteria, they will occur when the criteria are matched. The Approval Stage inside the Quote/Proposal record is set to Approval Required. When the Approval Stage changes, the Submit for Approval button becomes available and you can submit the Quote for approval to management if any approval processes have been configured. If this parameter is set to False or if it is absent, CPQ skips the approval process even when the criteria are matched. To support quote approvals, you must use the isCartApprovalDisabled parameter.
When the useAdvancedApproval parameter is enabled, it enables cart approvals automatically unless cart approval is explicitly disabled. When cart approval is disabled, CPQ reverts to quote approvals. | ||||||||||||||||||||
useDealOptimizer | Set the value of this parameter to False to selectively skip deal guidance, at a transaction level. CPQ shows the deal guidance on the Cart page only if this flag is set to True. If you have created rules that define the various criteria of a good deal, the deal rating is available to the Sales Representatives at the time of negotiation. If this parameter is set to False or if it is absent, CPQ skips the deal guidance and does not show on the Cart page. | ||||||||||||||||||||
deferPricingUntilCart | Set the value of this parameter to True to set Defer Pricing on, at a transaction level. When Defer Pricing is on, CPQ performs pricing of products only after you click Go to Pricing. When Defer Pricing is off, CPQ performs pricing as and when you add or delete products. | ||||||||||||||||||||
useAdvancedCurrency | Set the value of this parameter to True to enable dated currency conversion on the Cart, at a transaction level. | ||||||||||||||||||||
styleSheetURL | Define the URL to the custom style sheet as the value of this parameter to override the default style sheet in CPQ. |