CloneQuote Component
The CloneQuote component displays the CloneQuote landing page. Use the component to customize the quote cloning process.
The CloneQuote component consists of:
- CloneQuote.component: The Visualforce UI component
- CloneQuoteComponentOptions.class: The Apex class that stores the configuration options specified by the developer and used by the controller to render the component
- CloneQuoteComponentOptions.ICloneQuotePlugin: The plugin to set the default options for cloning
The CloneQuote component is available as of the Version 7.3 of Zuora Quotes.
Take the following considerations in regards to cloning the products associated with a quote:
- Cloning New Subscription quotes: If you want to clone the products when cloning a New Subscription quote, you must ensure that the products associated with the quote are maintained in the current version of the product catalog.
- Cloning Amendment/Renewal quotes: You cannot clone the products associated with an Amendment or Renewal quote.
CloneQuote Component Attributes
The CloneQuote component accepts the following attribute.
Attribute | Type | Required? | Description |
---|---|---|---|
cloneQuoteOptions | zqu.CloneQuoteComponentOptions | Required | The configuration options required for cloning a quote |
CloneQuoteComponentOptions Class
The CloneQuote component has the CloneQuoteComponentOptions class that provides the following property options.
Property | Type | Required? | Description |
---|---|---|---|
nextPageUrl | String | Optional | The URL that the user should be redirected to when it clicks Next |
originalQuoteId | String | Required | The Id of the quote to be cloned |
shouldCloneProducts | Boolean | Optional | The initial default value for the Clone Quote Products checkbox |
Component Plugin
The CloneQuote component supports the following plugin.
ICloneQuotePlugin
Use the ICloneQuotePlugin to set the default configuration options when cloning quotes.
The plugin interface is defined as:
global
CloneQuoteComponentOptions.ICloneQuotePlugin
The plugin contains the following interface methods:
void populateCloneQuoteConfiguration(zqu.CloneQuoteComponentOptions)
Integration Sample Code
The following code snippet uses the ICloneQuotePlugin to set the default options for cloning.
//This plugin can be used to default the CloneQuoteComponentOptions global class customCloneQuoteComponentOptions implements zqu.CloneQuoteComponentOptions.ICloneQuotePlugin { global void populateCloneQuoteConfiguration (zqu.CloneQuoteComponentOptions options) { options.shouldCloneProducts = true; options.nextPageUrl = '/apex/nextPageUrl'; } } public class customClass { public void initializeCloneQuoteComponentOptions() { //The constructor for the options will call the plugin // and default the values zqu.CloneQuoteComponentOptions options = new zqu.CloneQuoteComponentOptions(); } }