Skip to main content

Display the Product Catalog

Zuora

Display the Product Catalog

Overview

Using the global methods and global components, you can replace the Zuora Quotes Product Selector Wizard and use your own user interface to find products, rate plans, and rate plan charges, then add them to the quote.

Components Used to Display the Product Catalog

You can use the following components to display the product catalog:

  • Global classes
    • zqu.zCharge
    • zqu.zChargeGroup
  • Global methods
    • zqu.zQuoteUtil.getProductSetController
    • zqu.zQuoteUtil.getRatePlanSetController
    • zqu.zQuoteUtil.getRatePlanIds
    • zqu.zQuoteUtil.getZProductIds
  • Global component
    • zqu.zselecttable

Workflow

  1. Use the global methods, getZProductIds and getRatePlanIds, to get the {[sfdc}} IDs of the records. The methods will take Quote information and return the correct records.
  2. You can add additional filters to the retrieved records or use the filtered records to fetch into global methods, getProductSetController and getRatePlanSetController, to get the SetControllers specific to ZProduct or ProductRatePlan.
  3. Additionally, you can provide field names to the method to get the values of those fields.
  4. Fetch the Set Controller to the global component, zselecttable, and your customized user interface is ready to be used.
  5. You must use the productDataShare and rateplanDataShare variables as specified in the sample code to use the toggle selection behavior between products, rate plans, and rate plan charges.
  6. Use additional variables, as specified in the sample code, to set the SetController page size and page properties.

Considerations

  • The field names and Salesforce IDs passed in the global method must match with those in your the Salesforce org. Make sure that you are using the API name.
  • The Salesforce governance limit (SOQL, SOSL, and Heap Size related) apply to all retrievals of the record list.

Sample Code

The CustomProductSelector sample code provides a reference implementation of a custom Product Selector with filtering capabilities, built using Global Methods and Components.