You are here:
Customize Additional Quote Cloning Options in Enterprise Sales Management (Managed Package)
Customize quote cloning options to suit your business needs by configuring the required related objects.
This feature is part of the Communications Cloud managed package.
When your sales representative clones a quote, the quote line items are cloned by default because Quote and QuoteLineItem are configured as the default objects to clone. The out-of-the-box configuration also contains related objects to clone additional options, including quote members, quote groups, product relationships, promotions, and discounts. If you don't want to use these out-of-the-box additional options, you can customize them to suit your business needs by configuring the required related objects.
- Configure Related Objects to Customize Additional Quote Cloning Options
Customize the additional quote cloning options to suit your business needs by configuring the required related objects. - Configure Related Objects to Customize Quote Versioning Options
To use the cloning and versioning features for a quote in Enterprise Sales Management, update the session variable in b2bSampleAppCard.
Configure Related Objects to Customize Quote Versioning Options
To use the cloning and versioning features for a quote in Enterprise Sales Management, update the session variable in b2bSampleAppCard.
- From the App Launcher, find and select Vlocity Cads.
- In the Layouts and Cards section, click b2bSampleAppCard.
-
Add a session variable b2bQuoteVersionConfig and enter this value:
{"defaultObjectsToClone":[{"name":"Quote"},{"name":"QuoteLineItem"}],"cloningOptions":[{"customLabelName":"CMEXQuoteCloneMemberAndGroup","isSelected":true,"objectsToClone":[{"name":"vlocity_srndev__QuoteGroup__c"},{"name":"vlocity_srndev__QuoteMember__c"}]},{"customLabelName":"CMEXQuoteCloneProductRelationship","isSelected":true,"objectsToClone":[{"name":"vlocity_srndev__QuoteLineItemRelationship__c"}]},{"customLabelName":"CMEXQuoteClonePricing","isSelected":true,"objectsToClone":[{"name":"vlocity_srndev__QuoteDiscount__c"},{"name":"vlocity_srndev__QuoteDiscountPricing__c"},{"name":"vlocity_srndev__QuoteDiscountItem__c"},{"name":"vlocity_srndev__QuoteAppliedPromotion__c"},{"name":"vlocity_srndev__QuotePricingAdjustment__c"},{"name":"vlocity_srndev__QuoteLineItemPricingAdjustment__c"},{"name":"vlocity_srndev__QuoteAppliedPromotionItem__c"}]}],"objectDetailsInSortedOrder":[{"objectName":"Quote","className":"B2BCmexCloneImpl","filterFieldName":"Id","filterOnObject":"Quote","dependentFields":["Name"]},{"objectName":"vlocity_srndev__QuoteGroup__c","className":"B2BCmexCloneImpl","filterFieldName":"vlocity_srndev__QuoteId__c","filterOnObject":"Quote","dependentFields":["vlocity_srndev__QuoteId__c"]},{"objectName":"vlocity_srndev__QuoteMember__c","className":"B2BCmexCloneImpl","filterFieldName":"vlocity_srndev__QuoteId__c","filterOnObject":"Quote","dependentFields":["vlocity_srndev__QuoteId__c","vlocity_srndev__QuoteGroupId__c"]},{"objectName":"QuoteLineItem","className":"B2BCmexQuoteLineItemCloneImpl","filterFieldName":"QuoteId","filterOnObject":"Quote","dependentFields":["QuoteId","vlocity_srndev__QuoteGroupId__c","vlocity_srndev__QuoteMemberId__c"],"orderBy":"vlocity_srndev__LineNumber__c"},{"objectName":"vlocity_srndev__QuoteLineItemRelationship__c","className":"B2BCmexCloneImpl","filterFieldName":"vlocity_srndev__QuoteId__c","filterOnObject":"Quote","dependentFields":["vlocity_srndev__QuoteId__c","vlocity_srndev__QuoteLineItemId__c","vlocity_srndev__RelatedQuoteLineItemId__c","vlocity_srndev__RelatedAssetReferenceId__c"]},{"objectName":"vlocity_srndev__QuoteDiscount__c","className":"B2BCmexCloneImpl","filterFieldName":"vlocity_srndev__QuoteId__c","filterOnObject":"Quote","dependentFields":["vlocity_srndev__QuoteId__c"]},{"objectName":"vlocity_srndev__QuoteDiscountPricing__c","className":"B2BCmexCloneImpl","filterFieldName":"vlocity_srndev__QuoteDiscountId__c","filterOnObject":"vlocity_srndev__QuoteDiscount__c","dependentFields":["vlocity_srndev__QuoteDiscountId__c"]},{"objectName":"vlocity_srndev__QuoteDiscountItem__c","className":"B2BCmexCloneImpl","filterFieldName":"vlocity_srndev__QuoteDiscountId__c","filterOnObject":"vlocity_srndev__QuoteDiscount__c","dependentFields":["vlocity_srndev__QuoteDiscountId__c"]},{"objectName":"vlocity_srndev__QuoteAppliedPromotion__c","className":"B2BCmexCloneImpl","filterFieldName":"vlocity_srndev__QuoteId__c","filterOnObject":"Quote","dependentFields":["vlocity_srndev__QuoteId__c","vlocity_srndev__QuoteDiscountId__c","vlocity_srndev__QuoteLineItemId__c"]},{"objectName":"vlocity_srndev__QuotePricingAdjustment__c","className":"B2BCmexCloneImpl","filterFieldName":"vlocity_srndev__QuoteId__c","filterOnObject":"Quote","dependentFields":["vlocity_srndev__QuoteId__c","vlocity_srndev__QuoteItemId__c","vlocity_srndev__QuoteAppliedPromotionId__c"]},{"objectName":"vlocity_srndev__QuoteAppliedPromotionItem__c","className":"B2BCmexCloneImpl","filterFieldName":"vlocity_srndev__QuoteAppliedPromotionId__c","filterOnObject":"vlocity_srndev__QuoteAppliedPromotion__c","dependentFields":["vlocity_srndev__QuoteAppliedPromotionId__c","vlocity_srndev__QuoteLineItemId__c"]}]} -
Configure the related objects as needed.
JSON Node Description defaultObjectsToCloneThe list of sObjects that are cloned by default, with or without additional quote cloning options selected. cloningOptionsThe additional quote cloning options that appear in the UI.
customLabelNamestores the UI label of the quote cloning option.objectsToClonestores the related objects to clone if the user selects a particular quote cloning option. When cloning an object, all its associated records are cloned.
For example, an out-of-the-box option is to clone quote members and quote groups.
The custom label "Clone members and groups" conveys this information to the user.
When a user selects this option, the
QuoteGroupandQuoteMemberobjects are cloned.
objectDetailsInSortedOrderA JSON list that contains the required object details in a sorted order. If the fields of sObject A depend on the fields of sObject B, clone sObject B records first, followed by sObject A records.
For example, if the JSON list contains
QuotesObject details, followed byQuoteGroupsObject details, then Quote records are cloned first.objectNamestores the name of the object to clone.classNamestores the name of the clone implementation.filterFieldNamestores the field of the sObject that determines which records are cloned. Only those sObject records whose specified filter field values match any already clonedfilterOnObjectrecord IDs are cloned. For example, ifQuoteIdis the filter field forQuoteMember, withQuoteas thefilterOnObject, all quote members whoseQuoteIdfield values match anyQuoterecord IDs are cloned.filterOnObjectstores the sObject whose record IDs are used to perform the filter operation.dependentFieldsstores the fields that need to be dissociated from the source quote and reassociated with the new quote clone.
- Save the changes.

