SalesPad Support Hours

8am-5pm EST Monday-Thursday

8am-4pm EST Friday

Start a conversation

Configurator Advanced Part One

Overview

The Configurator is a tool that allows the user to create items that can be configured to customer specifications (i.e. computers, custom t-shirts, furniture, etc.) by selecting the available options (i.e. monitor, hard-drive, color, etc.) when entering an order. Upon order entry, options will be selected and the customer-specified selection will be saved to the relative line item in the form of a string code. The configured items can have items (components) attached to them.

This documents explains advanced set up and usage for the following components:

  • Status and Versioning
  • Adding Existing Options
  • Configured Items (Components)
  • Pricing
  • Restrictions
  • Value Mapping
  • Default Selection
  • Nested Configurations
  • Excel Import

Please refer to Configurator documentation for a basic description of the tool and examples of configurations.

Contents
Status and Versioning

The Configurator allows users to have different versions of the same configuration, helping them keeping track of the changes made over time. In order to turn on versioning, set the Save Configuration As New Version in Security to True.”

With versioning enabled, a new version is created the first time a user make and save changes on an existing configuration.

Note: Any subsequent save (on the open configuration) will keep the same version number, until the user closes and reopens the configuration.

Users can load older versions by click the ellipsis in the field Version.

An input box with a drop down allows users to select the version to load:

Note: Older configurations are all marked as Historical (only the current version can be Active). Notice that all the buttons are disabled, since this configuration is read only. The user can still launch the Test Configuration plugin to check what the previous configuration was like.

Users can resume older version by changing their Status and saving the configuration. In order to do that, you will have to turn on the Security setting Can Resume Historical Configurations.

Status

A configuration can have one of the following statuses:

  • Historical – Older versions; they cannot be used in a sales document. The configuration is read-only.
  • Active – The current version that can be used in a sales document.
    • Note: There can only be one active configuration for the same item.
  • Pending – Future version; not active yet; therefore, it cannot be used in a sales document.

The status of a configuration works in conjunction with versioning. The user can manually change it depending on the use case. These are some examples of use cases:

1. From “Historical” to “Active” – This will copy the current (older) configuration into a new version (which will be marked as “Active”), and it will change the status of the latest Active configuration into Historical. This requires the Security setting Can Resume Historical Configurations in the plugin Configurator to be set to True.

Example (version 1 to be changed):

Version Status
1 Historical
2 Historical
3 Active

Result:

Version Status
1 Historical
2 Historical
3 Historical
4 Active

2. From “Historical” to “Pending” – This will copy the current (older) configuration into a new version (which will be marked as Pending), and it will preserve the status of the latest Active configuration. This requires the Security setting Can Resume Historical Configurations in the plugin Configurator to be set to True.

Example (version 1 to be changed):

Version Status
1 Historical
2 Historical
3 Active

Result:

Version Status
1 Historical
2 Historical
3 Active
4 Pending

From “Active” to “Active” – Making any changes to an Active configuration will save a new version of it and mark the previous configuration as Historical. This requires the Security setting Save Configuration As New Version to be set to True.

Example (version 3 to be changed):

Version Status
1 Historical
2 Historical
3 Active

Result:

Version Status
1 Historical
2 Historical
3 Historical
4 Active

Note: Any subsequent changes to the configuration will not trigger a new version until the configuration is closed and reopened.

4. From “Pending” to “Active” – Pending configuration can be switched to Active. This will make the previous (active) configuration Historical. This will not create a new version.

Example (version 4 to be changed):

Version Status
1 Historical
2 Historical
3 Active
4 Pending

Result:

Version Status
1 Historical
2 Historical
3 Historical
4 Active

5. From “Active” to “Historical” – You can make the Active configuration Historical by changing its status.

Example (version 4 to be changed):

Version Status
1 Historical
2 Historical
3 Historical
4 Active

Result:

Version Status
1 Historical
2 Historical
3 Historical
4 Historical

6. From "Pending" to "Historical" –  You can make the Pending configuration Historical by changing its status. This will make the current Active configuration Historical as well.

Example (version 4 to be changed):

Version Status
1 Historical
2 Historical
3 Active
4 Pending

Result:

Version Status
1 Historical
2 Historical
3 Historical
4 Historical

Note: Users can make a configuration Historical by just deleting it: clicking the Delete button does not remove the record from the database but it simply changes its status to Historical.

Adding Existing Options

Configurator allows users to easily add existing options from the current or other configurations. This functionality is designed for different configurations that have similar (or the same) set of options.

Steps:

1. Open the configuration CHAIR screen and select the Options page for the attribute Color (see CHAIR example in Configurator documentation).

2. Click the little triangle next to the New button and select the Add Existing Options from the menu.

3. In Add Existing Options screen, choose the desired configuration and the Attribute from which you want to copy the Options from (in this example T-SHIRT):

     a. Make sure the option Make a Copy (top right corner) is checked.

4. Select the Options to copy and click OK: the options are now copied from the configuration T-SHIRT into the CHAIR.

Note: These new options are a hard copy of the ones from T-SHIRT, which means that any change made inside the configuration CHAIR does not affect the values in configuration T-SHIRT.

Options can be copied as a link instead of hard copy, meaning that one or more configurations can share the same values for the options. In order to do that, simply uncheck the box Make a Copy before copying the options.

Options that are linked (or shared) with other configurations are denoted by the blue foreground.

This solution is particularly useful if the users want to keep a single set of options that is the same across several configurations; this simplifies the maintenance because changes will not have to be made on each configuration, but only in one of them.

Note: Any change made to an option that is linked will affect all the configurations that share the option.

Configured Items (Components)
Dynamic Configured Items (Simple)

This sections shows how to create dynamic configured items. The example of the COMPUTER (see Configurator documentation) showed a 1-to-1 relationship between the option and the configured item (each option corresponds to one configured item):

Option Selected Configured Item
15" M1500
17" M1700
21" M2100
20 GB HD-200
40 GB HD-40
60 GB HD-60
80 GB HD-80
1 GHz 1GPROC
2 GHz 2GPROC
Inkjet 3-D2094A
Laserjet 4-E2094A

There are case in which the list of items depends on the selection of more than just one option. For instance, assume that the configuration CHAIR has only three items (or components), and each component can be one of the following item numbers:

Leg component:

Option Selected Configured Item
Legs Height Color
16" leg Wood
Black
White
000116WD
000116BLK
000116WHI
17" leg Wood
Black
White
000117WD
000117BLK
000117WHI
18" leg Wood
Black
White
000118WD
000118BLK
000118WHI

Back component:

Option Selected Configured Item
Legs Height Color
Classic style Wood
Black
White
0002CLWD
0002CLBLK
0002CLWHI
Modern style Wood
Black
White
0002MDWD
0002MDBLK
0002MDWHI

Seat component:

Option Selected "Color Configured Item
Wood
Black
White
000300WD
000300BLK
000300WHI

Instead of listing each one of the items shown above, users can use the Dynamic Configured Items to define masks and treat the items as smart part numbers. For instance, the items “000300WD,” “000300BLK,” and “000300WHI” can all be combined into “000300{COLOR.1}” (the string “{COLOR.1}” will be automatically replaced with the color code upon the selection of that option).

Note: The configurator generates the numbers; it does not create the items in Great Plains. Each item must be an existing inventory item in GP.

Steps to create dynamic configured items:

1. Determine which attributes play a role in the configured item numbers. From the tables above, we can see that Legs Height, Style, and Color are used to define the items.

2. In the Details tab, Attributes page, find the column Parameter Name and add the values as shown below:

    a. They are the parameter (or variable) names that will be used in the masks.

3. Select the Attribute, Legs Height, and move to the Option page. Make the column Configured Item Code visible (if not already visible) and add the values as shown below:

    a. These values represent the partial code that will create the final configured item (i.e. the digits “17” in the item 000117BLK)

4. Move to the Attribute, Style and add the following codes:

    a. They will represent, for instance, the string CL in the item 0002CLBLK

5. Do the same for Color:

    a. In this case they will represent, for instance, the string BLK in the item 0002CLBLK

6. Now that the parameters and the partial codes are defined, we can create the actual masks. Move to the Dynamic Configured Items tab and click New to add a new row.

    a. This row represents the first item (leg component).

    b. Click on the ellipsis to open up the String Formatter helper screen.

7. String Formatter is a tool that allows users to define the mask that will generate the configured item (in this case the leg component) based on the selection.

Look at the possible items for the leg component again: notice that all the items start with 0001, followed by 2 digits that represent the legs height, and some text that defines the color. This will be translated into a mask with the String Formatter.

Option Selected Configured Item
Legs Height Color
16" leg Wood
Black
White
000116WD
000116BLK
000116WHI
17" leg Wood
Black
White
000117WD
000117BLK
000117WHI
18" leg Wood
Black
White
000118WD
000118BLK
000118WHI

8. Click New, leave the Format Type to Fixed Text and add 0001 under String.

9. Click New again to add the second part of the item (the 2-digit code that represents the legs height).

    a. Under Format Type select Attribute: Legs Height. You will notice that the Attribute Parameter will automatically be filled in with LEG, which is the value we added before in the Attribute under Parameter Name.

10. Add the third part (for Color). This is the final mask:

The mask “0001{LEG.1}{COLOR.1}” represents all the possible items for the leg component. In the Sample Item Number you can see the item number that would be generated when selecting the first options for Legs Height and Color.

11. Click OK to return to the main form. Under the column “Description” you can put “Leg component” as a note to yourself.

12. Add the appropriate UOfM (in this case EACH), and include the Quantity (in this case there are four legs):

Note: String Formatter is just a tool to help users create the masks. Users do not have to use this tool, as they can simply paste the string (in the example above “001{LEG.1}{COLOR.1}”) in the field String Format.

13. Add the second item (Back Component).

     a. This items is composed of the fixed text “0002,” followed by two characters that represent the Style, and the text for Color.

14. The third one (Seat Component) is simpler because it only has the fixed text “000300” with the text for Color at the end. You should end up with a definition like this:

As you can see, all the possible items/components (9 for the leg component + 6 for the back + 3 for the seat) can be grouped in these three masks.

15. Run the plugin from the configuration screen (button Test Configuration at the top). Select some random options and test that the Configured Items return the expected list.

In this example, making a change on one attribute (for instance Color) will return a completely different set of items, while some attributes (i.e. Width) do not play any role as far as building the list of items:

Dynamic Configured Items can also be used without masks.

16. Add the item for the Gloss Paint if the user flags the check box, the item GLOSS PAINT will be added to the list of configured items.

In this case, we cannot use the Configured Item Code like before because this attribute does not have any option. Instead of using the string format, we will use the “Conditions”. 

17. Click Add to add the item, and under String Format type GLOSS PAINT (notice that this time there is no mask: this is the actual item number). Fill in the appropriate values for UOfM and Quantity.

18. With GLOSS PAINT line selected, move to the right hand panel to Conditions and click New to add a condition:

This condition is satisfied when the Attribute Gloss Paint is equal to True. This means that the item GLOSS PAINT will be added only when this option is checked.

Dynamic Configured Items (Advanced)

In the example before we assumed that the same option would generate the same item code. For instance, the color selection would produce the suffix -WD, -BLK, or –WHI for all the three components (leg, back, and seat). This may not be always the case.

Assume that the color codes for leg and back component are alphanumeric (what we saw before), but for the seat component these codes are numeric (“-001,” “-002,” and “-003”):

Option Selected "Color Configured Item
Wood
Black
White
000300001
000300002
000300003

 

In order to make this to work we need to make few adjustments to the dynamic configured items and the masks we created before.

Steps:

1. First thing to do is add the additional suffixes to the existing ones. Go to the option page for Color.

    a. The Configured Item Code column currently has the alphanumeric code.


2. Select any row and click the ellipsis in the field Configured Item Code. This will pop up the Configured Item Code Helper.

3. In this helper screen you can the first set of codes (-WD, -BLK, or -WHI). You can add a new one by clicking the  button on the top field.

    a. In the input box that appears after, simply type a description of the codes that you are about to add (this will be just a note to yourself).

4. Click OK. You will see that the column Config Item Code is now blank. Here you will type the new (numeric) codes (“-001,” “-002,” and “-003”).

The helper screen allows you to quickly navigate through all your set of codes using the drop down at the top.

From here you can also edit the name of the code by clicking the ellipsis button (  ). You can also delete an entire set with the delete button (  ).

5. Click OK to close the helper screen. You will see that Configured Item Code now has to sets of codes, separated by a comma.

Note: Since this case is a simple one (as there are only three options and two sets of code), you could have simply added the new values directly in the grid view, by separating them with other ones with a comma.

6. Go to the Dynamics Configured Items, select the row with the seat component, and click the ellipsis on the String Format column

In the String Formatter screen, click the little triangle on the right border of the form

This will expand the screen, showing some information from the Options page.

As you can see, this mask currently points to the alphanumeric codes (creating the Sample Item Number, 000300WD on the bottom left of the screen).

8. Click the Partial Item Code drop down and select the second element from the list (Numeric code)

This will switch the configured codes to the second set (the numeric values recently added in the options).

Notice that this also changes the Sample Item Number to 000300001, which is what we were trying to achieve.

Because of the simplicity of this example (there are only two sets of codes), you could have simply changes the number in the Sub String Position (for the Attribute: Color) from 1 to 2.

9. Click OK, save the configuration, and load the plugin from Test Configuration.

Notice that the last component (Chair Seat) has a different suffix compared to the other two (-003 instead of -WHI).

Note: You can have unlimited sets of configured item codes.

Conditions

Conditions can also be used in conjunction with masks in Dynamic Configured Items. For instance, we can create a condition so that we can only have two possible seat components (000300WD and 000300WHI), even if we have three colors.

Steps:

1. In the Dynamic Configured Items tab, select the third row (000300{COLOR.1}) and click New in the Conditions section.

2. Add the conditions as shown below:

3. With these conditions, we will have a configured item only if Color is either Wood or White.

We can include more than one attribute in the same condition.

In this case, the item will be included in the list if Color is either Wood or White, and the Style is Classic. Notice that all the conditions – for all the attributes – must be true (Color and Style). Within the same attribute, though, conditions are evaluated with the operator (i.e. either Wood OR White).

In case the attribute does not have any options, you can use the Operator and Value fields to create your condition (you can still use these fields when the attribute has options).

In this case, the item will be added only if Width is either less than 20 or between 22 and 24 inclusive.

Quantity Formula

The Dynamic Configured Items screen allows users to dynamically calculate the quantity using formulas. For instance, instead of having a fixed value, the quantity for the item GLOSS PAINT can be calculated based on the dimensions of the chair using this formula: 0.25 * width * (0.03 * back height + 0.02 * leg height).

Steps:

1. Open the configuration CHAIR, and in the Attributes page add the following parameter names for Width and Back Height.

    a. These will be the parameters used in the formula (together with the LEG parameter already present).

The values for Width and Back Height will come directly from the user’s input: this is because the attributes are Text Box that already have numeric values. On the other hand, for the leg height we will need to associate the numeric value for the formula for each option.

2. Select the attribute Legs Height and move to the Options page.

    a. Make the column Option Value visible and add the values as shown below:

Note: We need to specify these values only because the text in Name is not numeric (it contains the inch symbol "). If it did not have that, we could have used the values from Name without defining the values in Option Value.

3. Move to the Dynamic Configured Items tab and make the column Qty Formula visible.

4. Paste the following text into the Qty Formula field: 0.25 * WIDTH * (0.03 * BACK + 0.02 * LEG)

    a. Notice the names WIDTH, BACK, and LEG are the parameter names specified before.

    b. Make sure you set the Quantity field to 1 This value is going to be multiplied with the result of the formula.

5. Run Test Configuration and select a couple of different options to check that the formula works correctly.

Note: Quantity and Quantity Formula are applicable to all Configuration Type, while Quantity Fixed and Qty Fixed Formula are only for Manufacturing configurations.

Pricing

The price in Configurator can be defined in the following ways:

  • By specific configuration (static pricing)
  • By attribute-options break down (dynamic pricing)
  • With a formula

A configuration can have any of the three types of pricing methods, or combination of them.

Note: Configurator allows users to define partial pricing details with amounts up to 5 decimal places; however, the final price of the configured item will be rounded to the number of decimal places set up in Great Plains for that item.

Static Pricing

With static pricing, you can set a price for each specific configuration, meaning that each selection of options will have a specific price.

Steps:

1. Open the configuration CHAIR and select the tab Pricing.

    a. The tab contains a table with a column for each attribute in your configuration, plus a column for Price.

2. Click New to add the first price definition and start adding the options. Put 18 for Width and Back Height.

    a. Notice that if the attribute has a Control Type of Text Box, the cell will be free-type.

3. Choose 17 under Legs Height.

    a. Notice that if the attribute has a Control Type of Drop Down Single or Drop Down Multiple, the cell will be have a drop down with the available options listed in it.

4. Add the rest of the details as shown below. In this example, the price $740.00 will be applied only when the user chooses this exact configuration.

Multiple configurations can be combined together. For instance, we can extend the previous price to all the available colors. Meaning that, no matter what color the user chooses, the price will be $740.00 when the user selects the options specified in the definition.

Note: Listing all the options (like in this case for Color) has the same meaning as leaving the field blank.

Attributes that are Text Box can include a single value, a list of values (separated by commas like for Drop Down), or a range of values. For instance, we can extend the price $740.00 to all widths between 18 and 24 inclusive.

If the attribute has a Control Type of Check Box, the cell will have a check box with three states: checked, unchecked, and indeterminate (grayed out). Use the indeterminate state if you want the price to apply regardless if the option is selected (checked) or not in the plugin.

Using the static pricing could end up with a big pricing table definition. The best way to handle this is to keep all the prices into an Excel file, and then use the import tool to add the prices into the configuration (see section Excel Import for details).

Dynamic Pricing

Unlike static pricing, which requires you to define the price for each configuration (or group of configurations), with dynamic pricing the price can be broken down into three levels:

Configuration – This value will always be added to the final price, no matter the options selected.

Attributes – The value will always be added to the final price, unless the attribute is “Check Box.” In this case, the value will be added only if the option is checked.

Options – The price will be applied only if the option is selected.

The final price is built up by adding all the single prices from all the three levels describe before, depending on the selections made by the user.

Example of possible configuration with the final price of $760.00 for the configuration CHAIR:

In this example, the final price is the sum of the following single units:

Users can click the price amount on the attribute to see the pricing details (breakdown) for that attribute:

Note: The price details can be hidden from Security. In order to implement this, go to Sales Line Configurator and set Show Attribute Price to False. This will hide all the prices of the single attributes and show only the final price of the configured item.

Pricing Formula

Configurator allows users to define a formula that dynamically calculates the final price of a configured item. For instance, the final price of the item could be dictated by the dimensions of the product like this: $20 * width + $10 * (back height + leg).

Steps:

1. Open the configuration CHAIR, and in the Attributes page make sure you have following parameter names for Width, Back Height, and Legs Height.

    a. These will be the parameters used in the formula

2. Select the attribute Legs Height and move to the Options page.

    a. Make sure you have the following values:

3. On the Configuration header, make the field Price Formula visible:

    a. Right-click anywhere on the header, and click Customize Layout from the little context menu

    b. From the Customization screen, drag the field Price Formula anywhere on the header, and the close the screen.

4. Paste the following text into the Price Formula field: 20 * WIDTH + 10 * (BACK + LEG)

    a. Notice the names WIDTH, BACK, and LEG are the parameter names specified before.

    b. Make sure you set the Price field to 1. This value is going to be multiplied with the result of the formula.

5. Run Test Configuration, select a couple of different options, and check that the formula works correctly.

Combining Different Pricing Methods

Static pricing, dynamic pricing, and the formula can be used concurrently: the final price will be the sum of each single part. Combining static and dynamic pricing could be useful when one type of pricing is the addition (or the discount) of the other. For instance, a configuration can use static pricing to define the unit prices, and use dynamic pricing as a discount for particular configurations.

Assuming the above configuration uses static pricing for the base price, $15.00 will be deducted from the final price when a configuration will look like the one above.

This could also work the other way around:

Assuming the above configuration uses dynamic pricing for the base price, $50.00 will be added to the final price each time the Color selected is Wood.

Pricing

The final price for the configured item (the item generated by the Sales Line Item Configurator plugin) can be created in Great Plains or in Configurator. The administrator can define which pricing option to apply by setting the Pricing Type accordingly:

The options for Pricing Type are:

  • Default: Use the price from the configured item that gets generated, if the item number already exists in GP (standard item*). Otherwise, (custom item) use Configurator pricing.
  • Configurator: Always use the price defined in Configurator.
  • Great Plains: Always use the price from Great Plains: if the configured item that gets generated already exists in GP (standard item*), use its price. Otherwise, (custom item) load the GP price for the Configurator Item Number.

*Standard items are applicable, for instance, in Manufacturing, where the Configurator plugin can either create a new item number, or reuse an item previously created in Great Plains. See documentation Configurator – Manufacturing for more details.

Restrictions

Restrictions is a functionality that allows administrators to set up rules that restrict one or more options/attributes based on the user’s selection. There are several type of restrictions:

  • Option-to-Option – An option is restricted (not available) when another option is selected.
  • Option-to-Attribute – An attribute is restricted (not available) when a specific option is selected.
  • Minimum and Maximum Values – Restrict the range of values (in case of “Text Box”) based on a specific selection.

Restrictions are maintained in the Restrictions tab. The tab is divided into two sections

  • The left hand side (Configuration Options) shows a list of all the options grouped by attributes
  • The right hand side (Restrictions) shows the restrictions. All the options are available for the selected option (item on the left)

Option-to-Option Restrictions

A configuration can be set up such that a particular option requires other options (from different attributes). For instance, the configuration COMPUTER can be created so that:

  • The 21” Monitor requires the 2 GHz Processor.
  • The 20 GB can be sold only with the 15” Monitor and 1 GHz Processor.

Steps:

1. Open the configuration COMPUTER” and select the tab Restrictions.

2. Set the first restriction: a 21” monitor requires the 2 GHz processor. Expand the attribute Monitor and select the option 21.

Once again, the right hand side shows all the possible options for (in this case) the option 21. By default, all the options are checked (available).

3. On the grid view on the right, expand the Processors row and uncheck the option 1 GHz.

    a. This creates the restrictions between the option 21” Monitor and the 1 GHz Processor, leaving the 2 GHz the only available processor for the 21” monitor.

4. Now we will set the other restriction; the 20 GB can be sold only with the 15” Monitor and 1 GHz Processor. Expand the attribute Hard-Drive and select the option 20 GB.

5. In the Restrictions grid view, expand the attribute Monitor and uncheck the options 17” Monitor and “21” Monitor.

6. Also expand Processor and uncheck 2 GHz. You should end up with a screen like this:

7. To test these restrictions, launch the plugin from the configuration form, select the 17” Monitor, and click the drop down for attribute Processor. You will see both processors on the list.

8. Clear out the selection for Processor and change the monitor to 21”. If you click the drop down for Processor, now you will see only the option 2 GHz.

9. Clear out all the selections and choose the 20 GB hard drive. Click either the Monitor or the Processor drop downs: you will only see the options 15” and 1 GHz, respectively.

Option-to-Attribute Restrictions

Restrictions can be applied to an entire attribute. For instance, the configuration COMPUTER can have a restriction that does not allow any printer if the 15” monitor selected.

Steps:

1. Load the configuration COMPUTER and select the tab Restrictions.

2. Expand the attribute Monitor and select the option 15” Monitor

3. In the Restrictions panel, uncheck the entire attribute Printer.

Note: If you want to restrict the entire attribute, you must uncheck the row Printer, and not all the single options under that attribute, otherwise the restriction would not work as expected.

4. Run the Test Configuration. You will see that as soon as you select the 15” Monitor, the attribute Printer will be completely disabled.

Note: In this case, the attribute restricted (Printer) was optional; the restriction would work fine even if the attribute was required.

Minimum and Maximum Values Restrictions

Restrictions allow users to change the minimum and maximum values for text box under specific conditions. Recall that the configuration CHAIR has two text boxes that accept numerical values within a certain range:

We can create a restriction such that the minimum value for Width becomes 20” if the Style selected is Modern.

Steps:

1. Load the configuration CHAIR and select the tab Restrictions.

2. In the Configuration Options grid view (on the left), expand the attribute Style and select the option Modern.

3. On the right hand side, find the row for Width and change the field Value Min to 20”.

    a. Values that are different from the default are bold.

4. Launch the Test Configuration. Make sure that the minimum value is still 18 when no other options are selected.

5. Select the Modern for Style. You will notice that the value for Width has been deleted. This is because, as specified in our restriction, the value 18 became invalid due to the option Modern (the minimum would now be 20)

6. If we try to enter a value that is less than “20,” we will receive an error message

An attribute (or an option) can have as many restrictions as needed. The restrictions, though, are evaluated separately and cannot be combined. For instance, we could not set up a restriction such that the 20” Width is applied when the Style is Modern and the Color is Wood. If we had these restrictions for Width, each would be applied separately like this:

Width is minimum 20” when Style is Modern.

OR Width is minimum 21” when Color is Wood.

As you can see, we need to make only one selection to restrict the Width.

In case we select both Modern and Wood, the most restrictive value will be applied (in this case 21”). This also means that Value Min and Value Max inside the restrictions should always be (respectively) greater than and less than the original Value Min and Value Max from the attributes.

To achieve more elaborated restrictions, administrator can use validation scripts (see section Validation Script for more details).

Clearing the Restrictions

There are several ways to remove the restrictions from a configuration:

  • Re-check all the Available options and attributes previously unchecked.
  • Restore the original values for columns Value Min and Value Max.
    • In this case, you can make the columns Base Value Min and Base Value Max visible to see the default values.

  • Use the Clear Restrictions buttons: these buttons will restore the Available check marks, as well as the Value Min and Value Max values.
    • There are two Clear Restrictions buttons: the one of the right hand side (in the Restrictions grid view) will remove the restrictions only for the attribute or option selected on the left; the one on the left hand side (in the Configuration Options grid view) will remove all the restrictions from the configuration, for all the attributes and options.

Validation Script

Validation script allows administrators to create C# scripts that integrate (or override) the core Restrictions functionality, making it possible to create more advanced restrictions.

For instance, we can restrict the Width to a minimum value of 20 only when the Style is Modern and the Color is Wood (in this case, both have to be true, something not possible to do using the standard “Restrictions”). This example assumes that there are no other standard restrictions in this configuration.

Steps:

1. Load the configuration CHAIR.

2. In the Attributes page, make the column Validation Script visible.

3. Select the row Width and click the ellipsis under the column Validation Script.

    a. This will open the standard SalesPad C# Scripts editor.

4. Copy the code found here and paste it into the script editor. Click Compile to make sure there are no errors.

This scripts checks if Style is Modern and the Color is Wood, and if it is the case, the minimum value for Width is changed to 20.

This script alone is not enough, we need to add two more: one for Style and one for Color. This is because the script is for the attribute Width only, meaning that it is triggered only when the user enters a value in this field.

Therefore the script does not prevent users from entering first a Width that is valid by default (but invalid with Modern and Wood), and then selected these two options. With a script on each of the three attributes involved, we will make sure that the restrictions are applied regardless of the order of entries.

Note: There are instances in which one script is enough, even if there are more than two attributes that play a role in the validation script. These instances occur if there is already a standard restriction for the attributes in the script.

5. Select the attribute “Style,” open the script editor, and paste the code found here

6. Now select the attribute “Color,” open the script editor, and paste the code found here

The last two scripts also check if Style is Modern and the Color is Wood like the first one; in this case, though, if the script returns true, the field for Width is cleared out if it contains an invalid entry.

7. Run Test Configurator

First test:

    a. Select Modern and Wood

    b. Try to type 18 in Width. You should get an error message (this is from the first script).

8. Second test:

    a. Clear out all the previous selections.

    b. Type 18 in Width (you should NOT see any error message since this is a valid entry).

    c. Select Modern and then Wood. As you make your second selection, you should see the field Width getting clear out (this is from one of the other two scripts).

Validation script can also be used to increase the range defined by Value Min and Value Max from the attributes, as well as change the Value Increment (this is not possible with the standard Restrictions functionality).

Value Mapping
Quantity and Unit of Measure

Configurator allows users to map any attribute to the field Quantity and/or Unit of Measure. With this mapping, the String Code generated by the selection will carry the quantity and/or unit of measure information (along with the user’s selection).

Steps:

1. Load the configuration COMPUTER.

2. In the Detail tab, add a new attribute called Unit (the name is just an example).

3. Make the column Map To visible and select Unit Of Measure from the drop down. This will map the attribute Unit with the Unit Of Measure field.

4. Move to the Options page and add two rows as shown below.

    a. Make sure to include values for String Code.

5. Make the column Map To Value visible and add the specific values (units of measure) that you want the options to be associated with.

In this example, the first option Single Computer will be mapped with the unit of measure EACH, whereas Whole Box will be mapped to CASE.

Note: The values in Map To Value must be valid GP unit of measures for the current item (in this case “COMPUTER”).

6. Launch the Test Configuration and test the new attribute.

Changing the attribute Unit will update the Unit of Measure field (as well as the String Code). At the same time, any changes made in the Unit of Measure field will also update the attribute Unit. With mapping, the unit of measure will be saved in the String Code. The field Quantity can be mapped as well in the same way as Unit of Measure.

Parent Configuration

This option is used to pre-populate fields of sub configurations with values from the parent (top) configuration. See section “Nested Configurations” for more details.

To continue reading Advanced Configurator, click here.

Choose files or drag and drop files
Was this article helpful?
Yes
No
  1. SalesPad Support

  2. Posted
  3. Updated

Comments