Overview
Creation and process flow of Product Configuration Sessions (Product Configurator) page.
Processing
1. Initiate a Configuration Session
There are three methods that can be used to initiate a Configuration Session:
-
From a Sales Order or Rootstock Quote Header or Line.
-
Directly as a “stand-alone” session that can then be exported to a Sales Order or Rootstock Quote (via the Configuration Session object).
-
From some Salesforce objects, such as Accounts or Opportunities (if the related list and/or button is added to the object page).
-
Launching the Product Configurator from a Sales Order or Quote
NOTE The Sales Order may or may not have SO Lines, but must be saved initially before initiating the Product Configurator.
-
The first method is to navigate to Sales Order Header > Advanced section > Special tab. Click on the ‘Product Configurator button.
-
The second method is to use the ‘Product Configurator’ button under the Line Items section.
-
Click on ‘New Sales Order Line’ to open the “Add SO Line” page. Then, click on the ‘Product Configurator' button.
-
Click on 'Product Configurator' custom link. Consult your System Administrator if the custom link is not visible on the page.
NOTE Initializing Configuration Sessions from an Order/Line will link the session to the Order. When the user attempts to 'Export Configuration', the session will be exported to the Order automatically.
-
Using Product Configurator 'Stand Alone'
Navigation
Configuration Session
NOTE When the Configuration Session is ready to export (Complete), the configuration can be exported to an existing or new Sales Order for this Customer by clicking the 'Export Configuration' button. A pop up window is presented and provides the ability to:
-
Export to an existing Sales Order by entering the Sales Order number in the search field and clicking 'Export'.
-
Create a new Sales Order by leaving the Sales Order search field blank and clicking 'Export'.
-
From Salesforce objects (Opportunities and Accounts)
Navigation
Opportunity, Account
NOTE When the Configuration Session is ready to export (Complete), the configuration can be exported to an existing or new Sales Order for this Customer by clicking the 'Export Configuration' button. A pop up window is presented and provides the ability to:
-
Export to an an existing Sales Order by entering the Sales Order number in the search field and clicking 'Export'.
-
Create a new Sales Order by leaving the Sales Order search field blank and clicking 'Export'.
2. Configuration Session processing
The Configuration Session Header is presented once a Configuration Session has been initiated via one of the methods defined in point 1.
Fields (new Configuration Session page)
Sales Division: The Sales Division associated with the Configuration Session.
Customer: The Customer for which the Configuration Session is being processed.
Rootstock Quote/Order: When the Configuration Session is initiated from an RS Quote or Sales Order, that order number will be referenced here.
Due Date: The date used to set the Due Date on the RS Quote or SO Line when the Configuration Session is exported to an RS Quote or Sales Order.
Configured This Time: When checked, when the Configurable Product is of a Product Type = Stock, the Product will be treated as if the Product Type = Configured.
IMPORTANT 'Configurable Product' must be checked on the Product Master in order to be selectable.
NOTE When the Configuration Session is exported creating an SO Line, the SO Line will be flagged as ‘Configured This Time’ and a Work Order will be created upon the firming of the SO Line, even if the Item/Product is a Purchased Item.
Price Book: When a Price Book is selected, all pricing will come from the chosen Price Book only (and will not use any other pricing/discounting mechanisms).
Configuration Product: The 'Configurable' product to be configured in the session. If the Product Number is known, it can be entered in the ‘Configuration Product’ field. Alternatively, if the ‘Select Product’ button is clicked, configurable Products will appear in the popup (with images if set on the Rootstock Product record. For details see How to store Images on the Salesforce Platform).
Salesforce Account: The Salesforce Account (Customer) that corresponds with the Configuration Session Customer.
Salesforce Opportunity: When the Configuration Session is launched from a Salesforce Opportunity, this identifies the Opportunity.
NOTE This is set only when the Configuration Session is launched from a Salesforce Opportunity.
Previous Configuration Session: This field holds a link back to a prior Configuration Session. The prior Session can be used as the source of default selections in the current session.
NOTE Make sure the Configuration Group used on the previous Configuration Session has the “Auto-Default Selection from the Previous“ flag set to true. This will ensure that the Configuration Selections on the previous configuration session are used as defaults in the current session.
-
Processing
-
Populate the Configuration Session fields as required.
-
Click on the ‘Start’ button to enter the Product Configurator.
3. Edit 'Advanced options' on Configuration Session (optional)
When the Configuration Session is started, an “Advanced” section appears on the page:
Fields - Advanced Section
General Tab
Session Description: User-defined Session Description, up to 50 characters in length.
Discount Percentage: When a 'Discount Application Method' is being used, this is the discount percent that will be applied to the associated SO Line.
Discount Application Method: When a SO Line Discount is to be applied from this Config Session, set the application method to be used. Options are:
Comments: Optional free-form comments up to 100 alpha-numeric characters.
Previous Configuration Session: This field holds a link back to a prior Configuration Session which can be used as the source in making default selections in the current session.
Installation Customer: The Installation Customer that will be used on the Sales Order resulting from this Configuration Session. Besides the Customer for the Configuration Session itself, Related Customers to the Configuration Session Customer can also be selected. Defaults to the session Customer, but can be overridden with any valid "Related Customer" associated with the session Customer.
Installation Address: The Installation Address that will be used on the Sales Order resulting from this Configuration Session. Defaults to the Installation Customer's Default Installation Address, but can be overridden.
Ship To Address: The Ship To Address that will be used on the Sales Order resulting from this Configuration Session. Defaults to the session Customer's Default Ship To Address, but can be overridden.
Configured This Time: When checked, when the Configurable Product is of a Product Type = Stock, the Product will be treated as if the Product Type = Configured.
Price Book: When a Price Book is selected, all pricing will come from the given Price Book chosen only (and will not use any other pricing/discounting mechanisms)
NOTE The system will allow the user to change the 'Price Book' until the Configuration Session is Exported. For the exported Configuration Session, the 'Price Book' can be changed if the 'Allow Re-Export of Configuration Session' on the SO Control Configurator Tab is checked.
NOTE A Sales Order Line will be created when the Configuration Session is exported. If the 'Price Book' on the exported Configuration Session is changed, then the user needs to Re-Export the session. The existing Sales Order Line will be deleted and a new line will be created with the updated 'Price Book' value.
Inventory Tab
Inventory Division: The Inventory Division from which this Product is to ship.
Inventory Site: The Inventory Site within the specified Inventory Division from which this Product is to ship.
Export Features to Serialized Item: When checked, rather than exporting to a SO Line, the session is exported to the Inventory By Serial Number Features record (a "detail" record of the Inventory By Serial Number record).
Manufactured Item: This field is enabled when the 'Export Features to Serialized Item' flag is selected.
Inventory By Serial Number: This field is enabled when Session Export Date is blank and the 'Export Features to Serialized Item' flag is selected.
4. Product Configurator - Configuration Session, Selection, and Components addition
When the Configuration Session is started, additional fields are added to the Configuration Header.
Fields: Top Section, Configuration Session Header
Session ID: The identifier of this session, for future reference.
NOTE The Session ID is written to the RS Quote Line or SO Line once the session is exported to an RS Quote or Sales Order, when not using 'Auto Set Sales Order Number' on 'SO Control' record for the given Division.
Status: Shows ‘Incomplete’ until all required selections are made, after which it will show ‘Complete’.
IMPORTANT Status must be complete in order to export the session to a Sales Order or Quote line.
Price: The rolled-up price (using defined Price Methods for each component) based on Component selections.
NOTE Discounts defined in the 'Discount Percentage' field (General Tab) do not influence the calculated Price.
Alternate Price: The rolled-up price (using defined Alternate Price for each component) based on Component selections. The visibility of this field is determined by the settings defined on the SO Control record (Configurator Tab).
Cost: The rolled-up cost (using costs for each component) based on Component selections.
NOTE Cost will only appear if ‘Show Costs During Configuration’ is checked on the Sales Order Control record for the Sales Division being used.
Total Price of Dependent Components: Sum of Prices from Session Components that are not set to 'Output to Individual Line' (only applicable to Components Type 'Product') and are not the result of Adjusting Selections.
Status: Shows ‘Incomplete’ until all necessary selections are made, after which it will read ‘Complete’.
Salesforce Account: If generated using an API directly from the Salesforce Account, the SF Account will be shown here.
Salesforce Opportunity: If generated using an API directly from the Salesforce Opportunity, the SF Opportunity will be shown here.
Date Created: The date/time that the Configuration Session was first created.
Date Modified: The last date/time this Configuration Session was modified.
Lower Left Panel
This section displays the “Product Configuration tree” with the top level showing the Product being configured. Items beneath are the Configuration Groups that have been associated with this configurable Product.
Once selections are made and saved, the selections will appear underneath the Configuration Groups, with a blue checkmark icon.
Validate Configuration button: The user can click on the button to test if the configuration is complete. If the configuration is not complete, the user will be directed to the selections that require completion. If the configuration is complete, a popup message will appear. When the message is cleared, the ‘Export Configuration’ button will become active.
Export Configuration button: When the Export Configuration button is clicked, a Sales Order Line will be added with all of its constituent components (see Exporting Configuration Session To Sales Order article for more details).
NOTE If 'Allow Re-Export of Configuration Session' is checked on SO Control > Configurator tab, the user can export a Configuration Session multiple times after the initial export. When this setting is active, the label of this button will change to 'Re-Export Configuration' if it has been exported at least once. If the 'Allow Re-Export of Configuration Session' is unchecked, then the Export Configuration button will be disabled after the initial export.
Reprice Existing Configuration: Clicking this button will recalculate the 'Price' calculation of the Configuration Session based on any changes to the underlying price structures.
,
NOTE Clicking on this button will cause the process to check for Cost changes and re-price accordingly.
NOTE This button Reprice Existing Configuration remains enabled if the 'Allow Re-Export of Configuration Session' is checked on SO Control > Configurator tab. If the 'Allow Re-Export of Configuration Session' is unchecked, it will be disabled after the initial export.
Configuration Selection Components: When this button is clicked at any point in the configuration process, it will display components already selected (and Saved).
Lower Right Panel
This section displays the Configuration Selections within the Configuration Groups. When a Configuration Group is clicked on the Lower Left Panel, Selections within the Configuration Group will be displayed. When a Selection is clicked on the Lower Left Panel, Components within the Selection will be displayed (if 'Show Components' is checked for the Configuration Selection).
Fields
Min/Max: The minimum and the maximum number of selections required within the Configuration Group.
-
Once the maximum number of selections is reached, no more selections can be made within that Group.
-
If the minimum number is not met, you will not be able to complete the configuration.
Status: Shows ‘Incomplete’ until the required number of selections is made, after which it will show ‘Complete’.
Components button: If the Configuration Selection setup record is set to ‘Show Components When Selected’, this button will appear once a selection is made and saved.
-
If the components within that selection are “optional” and not selected by default, or if ‘Enter Qty at Configuration’ is checked for that component (as setup of configuration component records), clicking the button will detail actions required to complete the configuration.
NOTE for any given selection, you may have multiple components to select from (or that are selected by default).
Qty On Hand: The quantity on hand is displayed in the first screen (prior to clicking on the Components button) for the Primary component identified within that Selection.
NOTE The Qty On Hand is the sum of all on-hand inventory for the Item within the Division (as opposed to the Site or Project).
-
Processing - Make Selections and add Components to the Configuration Session
After selections and components are selected, click on Save or Save & Next.
When all selections are made and saved and the configuration is “Completed” (according to the ‘Validate Configuration’ button), the configuration is ready to be exported to the Sales Order or Quote.
Developer Section: Creating Configuration Session using Command Line
The Configuration Session can be invoked in New Mode from the command line. The configuration session page currently accepts several parameters on the command line to initialize values on the new sessions created before the page is presented to the user. The configuration session supports the following parameters:
-
Customer
-
Session Product
-
Export Customer
-
Predetermined Selections
-
Auto Create
-
Salesforce Account
-
Opportunity
-
Installation Customer
-
Installation Address
-
Ship To Address
-
Previous Session
EXAMPLE /apex/Confsess?sessionprod=a4k0P000000cGkc&preSell=SD,TRUE,1&installcust=a4cU0000000PC8w&exportcust=a4cU0000000PBIZ&installaddr=a2LU00000000JcWMAU&shiptoaddr=a2LU000000007lOMAQ&opportunityId=0064U00000l5cKN
Customer:
-
customerId={Customer Master record ID}
-
When specified and validated, this will be used to set "Customer".
Session Product:
-
&sessionprod={Rootstock Product Master record ID}
-
When specified and validated, this will be used to set "Configuration Product" (overriding all other defaults).
Export Customer:
-
&exportcust={Customer Master record ID}
-
When specified and validated, this will be used to set "Session Export Customer" (overriding all other defaults).
Predetermined Selections:
-
Predetermined Selections (Selection Identifier, Selection Locked Indicator, Selection Quantity)
-
&preSell={Selection Identifier},{TRUE/FALSE},{Selection Quantity}
-
Selection Identifier and Selection Locked Indicator are required; Selection Quantity is optional
-
Multiple Predetermined Selections sets can be passed on the same switch, delimited by a semi-colon.
EXAMPLE &preSell={Selection Identifier},{TRUE/FALSE}, {Selection Quantity}; {Selection Identifier},{TRUE/FALSE}; {Selection Identifier},{TRUE/FALSE}, {Selection Quantity}.
-
When the user input for field "Configuration Product" is the same as "Product Master" on the Product Configuration Pre-Selection, and the "Selection Identifier" on the Predetermined Selections is the same as "Text Selection Identifier" on the Product Configuration Pre-Selection, a new Configuration Session Selection record will be created for this Configuration Session with the values below:
-
"Configuration Selection" on the Product Configuration Pre-Selection will be used to set "Group Selection" on the Configuration Session Selection.
-
"Selection Locked Indicator" on the Predetermined Selections will be used to set "Selection Locked" on the Configuration Session Selection.
-
"Selection Quantity" on the Predetermined Selections will be used to set "Input Quantity" on the Configuration Session Selection.
Salesforce Account:
-
&accountId={Account record ID}
-
When specified and validated, this will be used to set "Salesforce Account" and "Customer".
Opportunity:
-
&opportunityId={Opportunity record ID}
-
When specified and validated, this will be used to set "Salesforce Opportunity", "Salesforce Account" and "Customer".
Installation Customer:
Installation Address:
-
&installaddr={Customer Address record ID}
-
When specified and validated, this will be used to set "Installation Address".
-
Installation Addresses must be associated with the given Installation Customer.
Ship To Address:
-
&shiptoaddr={Customer Address record ID}
-
When specified and validated, this will be used to set "Ship To Address".
Previous Session:
-
&prevsession={Configuration Session record ID}
-
When specified and validated, this will be used to set "Previous Configuration Session".
SEE ALSO
Sales Order Control
Product Configurator - Overview
Configuration Selection Component
Exporting Configuration Session To Sales Order