## Oracle NetSuite CPQ User Guide

January 21, 2022 Copyright © 2022, Oracle and/or its affiliates PublicPublic

## CONTENTS

| 1. Administrator                                                                                                 | 4   |
|------------------------------------------------------------------------------------------------------------------|-----|
| Overview                                                                                                         | 4   |
| Themes                                                                                                           | 6   |
| Customizations                                                                                                   | 8   |
| Overview: 1-Level tree with code editor that allows for custom Javascript to be run on any page of NetSuite CPQ. | 8   |
| Sharing                                                                                                          | 9   |
| User Maintenance                                                                                                 | 9   |
| 2. Product Maintenance                                                                                           | 11  |
| Product Properties                                                                                               | 11  |
| Set Properties                                                                                                   | 12  |
| Group Properties                                                                                                 | 13  |
| Question Properties                                                                                              | 14  |
| Answer Properties                                                                                                | 16  |
| CPI                                                                                                              | 17  |
| Lookups                                                                                                          | 19  |
| Pricing                                                                                                          | 21  |
| Rule Import/Export                                                                                               | 22  |
| Validations                                                                                                      | 22  |
| Actions                                                                                                          | 24  |
| CodeExec                                                                                                         | 25  |
| Action Types                                                                                                     | 27  |
| 3. Assembly Maintenance                                                                                          |     |
| Materials                                                                                                        | 27  |
| Multipliers                                                                                                      | 29  |
| Routings                                                                                                         | 30  |
| 4.CommonQA                                                                                                       | 31  |
| 5. CommonActions                                                                                                 | 32  |
| 6. CommonCPI                                                                                                     |     |
| 7. CommonLookups                                                                                                 |     |
| 8. CommonValidations                                                                                             |     |
| 9. CommonMaterials                                                                                               |     |
| 10. CommonRoutings                                                                                               |     |
| 11. CommonMultipliers                                                                                            |     |
| 12. CommonData Director                                                                                          |     |
| 13. CommonPricing                                                                                                |     |
| 14. Data Management                                                                                              |     |
| Data Director                                                                                                    | 34  |
| Detail Mappings Editor                                                                                           | 35  |
| Doc-Gen                                                                                                          | 36  |
| Document Editor                                                                                                  | 36  |
| Section Editor                                                                                                   | 36  |
| File Manager                                                                                                     | 37  |
| 15. Flow Control                                                                                                 |     |
|                                                                                                                  | 39  |
| Overview Header Properties                                                                                       | 39  |
| Header Set Properties                                                                                            | 40  |
| Header Questions                                                                                                 | 41  |

Header Answers

Header Groups

Header Actions

Main

Header Lookups

Header Validations

16. Appendix

42

44

45

47

48

50

51

## 1. ADMINISTRATOR

## O VERVIEW

Overview : Administrator settings have control over several high-level site functions.

## Site

   - Site Title: Enter text to be displayed in the browser tab.
   - Meta Description: HTML attributes that provide concise explanations of contents of the page. Commonly used for search engine results.
   - Meta Author: Author of the meta description.
   - Site Logo URL: Set custom URL that will be used when user clicks site logo o Site Theme: Set the theme from the dropdown menu.
   - Home Page URL: Set custom URL that will be used when "Home" is clicked.

## Order/Quote Settings

   - Next Quote Number: Set the number of the next generated Quote.
   - Quote Prefix - Set a prefix to appear before the Quote number.
   - Next Order Number: Set the number of the next generated Order.
   - Order Prefix: Set a prefix to appear before the Order number.
   - Set Title for New Catalog Item: Change the label on the '+ New Catalog Part' button.
   - Hide New Order Icon: Hide from home screen.
   - Hide Orders List: Hide from home screen.
   - Hide New Quote Icon: Hide from home screen.
   - Hide Quotes List: Hide from home screen.
   - Hide New Part Catalog Button: Hide from Line Item Summary page.
   - Hide New Configuration Button: Hide from Line Item Summary page.
   - New Configuration Button URL: Set custom URL for button.
   - Product Selection: Choose the method of selecting a product. Choose Wheel or Product Selector.

## Site Email Settings

   - From Name: Enter the name that confirmation emails will be sent from
   - From Address: add "Required if emails will be sent from site. Must follow &lt;address&gt;@eoscpq.com format
   - Confirmation BCC Address: Enter and email address to send a copy of all Order/Quote confirmations to.

## NetSuite CPQ Connect Settings

   - NetSuite CPQ Connect Server: Enter IP address where NetSuite CPQ Connect server is installed.
   - NetSuite CPQ Connect Port: Enter the server port that NetSuite CPQ Connect is configured to operate through.
   - 4 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |

## Order Table Configuration

   - Source: Select from the following sources.
   - Value: Enter a Value based on the selected source. See below for available source references. o Map to: Enter the desired column heading.
   - ■ Order / Quote List Sources and Values
   - ■ String: Displays the characters entered in the value field.
   - ■ Q/A (Header): Displays resolved Q/A entered in the value field from header configuration using standard NetSuite CPQ resolve syntax.
   - i.e. {EOS/ORDERNO}
   - ■ Order Header (DB Field): Displays data column value from order record. The following column names can be entered in the value field to pull the corresponding data from the header.
   - product\_name - Displays the header's name defined in the header properties.
   - created\_date - Displays the original creation date of the header.
   - modified\_date - Displays the most recent modification date of the header.
   - ■ Order line (DB Field): Displays data column value from order record.
   - #code - Displays EOS/ORDERNO as a link to the record's summary page.
   - quote\_id - Displays the Mongo database id of the quote or order.
   - status - Displays the status of the order / quote.
   - ■ created\_date - Displays the date of the record's creation.
   - ■ User Name
   - created\_by\_id: Displays original record creator's username.
   - ■ User Group: Displays original record creator's user group.
   - created\_by\_id: Displays original record creator's user group.
   - ■ Validity: Displays whether header records is 'Valid' or 'Invalid' based on Incompatible Rules and Validations.
   - Value field input is ignored.
   - ■ Order Total: Displays the total price of the order.
   - Value field input is ignored.
   - ■ Order / Quote Item List Sources
   - String: Displays the characters entered in the value field.
   - Item Line (DB Field): Displays data column value from header record.
   - type: Displays whether the line number is a configuration or catalog item.
   - product\_name - Displays the product's name defined in the configured product's properties. ▪ part\_number - Displays the configured product's Smart Part number.
   - 5 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - quantity - Displays the quantity of configured products for the line.
   - created\_date - Displays the original creation date of the line..
   - modified\_date - Displays the most recent modification date of the line.
   - #line\_number - Displays the item's line number as a link to the configuration.
   - Q/A: Displays resolved value from line configuration.
   - i.e. {LENGTH}
   - Validity: Displays whether item is 'Valid' or 'Invalid' based on Incompatible Rules and Validations.
   - Value field input is ignored.
   - Item Price: Displays line item price.
   - Value field input is ignored.
   - User Name
   - created\_by - Displays original record creator's username.
   - modified\_by - Displays the username of user that most recently saved the record.
   - User Group: Displays original record creator's user group.
   - created\_by - Displays original record creator's user group..
   - modified\_by - Displays the user group of user that most recently saved the record.
   - Attachments: This is a special column that opens the item attachments interface.
   - Value field input is ignored.

## Includes

   - Add Field: Click this to add fields.
   - Select a Source: Choose the type of script being uploaded. Either JS or CSS.

Map too…: Paste the link of the text file with the script. It must first be uploaded to the file manage

## T HEMES

Overview: Allows for customized site colors, fonts, etc.

## Main

   - Theme Name: Add New Theme to the System.
   - Site Logo: Assign an image to the main site header.
   - Theme Template: Can choose between Classic, Midnight &amp; Minton template.

## Background Settings

   - Main Background: Set a theme or color or gradient or assign an image to the main site header.
   - Branding Header Background: Set a theme or color or gradient or assign an image to the main site header.
   - 6 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - Main Navigation Bar: Set a theme or color or gradient or assign an image to the top navigation bar.
   - Main Navigation Bar (mouse over / selected) Background: Set a theme or color or gradient or assign an image to the top navigation bar when a link is selected or hovered over with the mouse. o Sub Navigation Bar Background: Set a theme or color or gradient or assign an image to the bottom navigation bar.
   - Sub Navigation Bar (mouse over / selected) Background: Set a theme or color or gradient or assign an image to the bottom navigation bar when a link is selected or hovered over with the mouse.

## Text Settings

   - Main Text: Set the appearance of text in body of site pages.
   - ■ Text Color: Select the color for the text to be displayed.
   - ■ Link: Select the color for link text to be displayed.
   - ■ Hover: Select the color for the text.
   - ■ Visited link: Selected the color for the text.
   - ■ Font Family: Choose the font style for link text.
   - ■ Font Size: Choose the font size for link text.
   - ■ Uppercase: Will convert all link text to uppercase.
   - Main Navigation Bar: Set the appearance of text in the top navigation bar.
   - ■ Text Color: Select the color for the text to be displayed.

■

Link: Select the color for link text to be displayed.

   - ■ Hover: Select the color for the text.
   - ■ Visited link: Selected the color for link.
   - ■ Font Family: Choose the font style for link text.
   - ■ Font Size: Choose the font size for link text.
   - ■ Uppercase: Will convert all link text to uppercase.
   - Sub Navigation Bar: Set the appearance of text in the bottom navigation bar.
   - ■ Text Color: Select the color for the text to be displayed.
   - ■ Link: Select the color for link text to be displayed.
   - ■ Hover: Select the color for the text.
   - ■ Visited link: Selected the color for link.
   - ■ Font Family: Choose the font style for link text.
   - ■ Font Size: Choose the font size for link text.
   - ■ Uppercase: Will convert all link text to uppercase

## Tables

   - Tables Background: Set the theme or color or gradient or assign an image for table background.
   - 7 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - Table Header Background: Set the theme or color or gradient or assign an image for tables header background.
   - Odd Rows Background: Set the theme or color or gradient or assign an image of the text in odd numbered table rows background.
   - Even Rows Background: Set the theme or color or gradient or assign an image of the text in even numbered table rows.
   - Odd Rows (mouse over / selected) Background: Set the theme or color or gradient or assign an image of the text in odd numbered table rows background when a link is selected or hovered over with the mouse.
   - Even Rows (mouse over / selected) Background: Set the theme or color or gradient or assign an image  of the text in even numbered table rows background when a link is selected or hovered over with the  mouse.
   - Table header: Set the theme or color or gradient or assign an image for tables header. o Odd rows: Set the theme or color or gradient or assign an image in the text in odd numbered table rows.
   - Even rows: Set the theme or color or gradient or assign an image in the text in even numbered table rows.

## Buttons

   - Button Text: Set the appearance of the text on the 'New Order' and 'New Quote' buttons. o New Order: Set the appearance of the background of the 'New Order' button.
   - New Quote: Set the appearance of the background of the 'New Quote' button.

## C USTOMIZATIONS

Overview : 1-Level tree with code editor that allows for custom Javascript to be run on any page of NetSuite CPQ.

## Group Editor

   - Main
   - ■ Name: Enter a name for this module
   - ■ Description: Enter a detailed description for the module
   - Rules
   - ■ This maintenance tab serves no purpose in this module and will be removed in a future update.
   - System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - Properties
   - ■ Page: Enter URL location for the code to be run.
   - 8 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - Examples
   - A value of / would run the code on the system's main menu.
   - A value of product/manage would run the code on the product maintenance pages.
   - 'Run Always': Check this option to have the customization script added to each page of the system.
   - Code
   - ■ Enter the code to run here. Though it is the familiar code editor from CodeExec Actions, the NetSuite CPQ javascript library is not natively defined outside of the configurator. Use the Includes feature to add functions, or define them globally within  the customization.

## S HARING

Overview : 1-Level tree that allows viewing of orders and quotes across user groups.

## Group Editor

   - Main
   - ■ Reference Code: Enter a code for referencing this Module in tree searches and  Actions. This code CANNOT contain any special characters or lowercase letters (REQUIRED).
   - ■ Name: Enter a name for this group
   - ■ Description: Enter a detailed description for the group.
   - Rules
   - ■ This maintenance tab serves no purpose in this module and will be removed in a future update.
   - System (Automatically Populated)
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - User Access
   - ■ Select users that belong to this group.

## U SER M AINTENANCE

Overview : Allows for creation of users and login credentials.

## Group Editor

   - Main
   - ■ Group Name: Enter a name for the group.
   - 9 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |

## ○ System

   - ■ Access Settings - Check or uncheck box to set/unset.
   - Login Required
   - Maintenance Screens
   - Administrator Settings

## ○ Oders

   - ■ Order Settings - Check or uncheck box to set/unset.
   - Add Orders
   - Add Lines
   - View All Orders
   - Group Can Save Invalid Configurations

## ○ UDF

   - 5 generic fields are available for additional User Group properties.

## User Editor

## ○ Main

   - ■ Username: User will use this name to log in with.
   - ■ Email: Enter an email address for this user.
   - ■ New Password: Enter a password that this user will login with.
   - ■ Confirm New Password: When entering a password for the first time, enter it a second time to confirm.
   - ■ Customer Number: Associate a customer number with this user.
   - ■ First Name: Enter this user's first name.
   - ■ Last Name: Enter this user's last name.
   - ■ Company: Enter name of the company this user is associated with.

## ○ Properties

   - ■ Permission Settings - Check or uncheck box to set/unset.
   - Active - User is active and can login with correct credentials.
   - View All Group Orders - If checked, any order created by a user in the same  group will be visible.
   - Disable View Order Summary - Removes icon from Line Item Summary page.
   - Disable Convert to Order - Removes icon from Line Item Summary page.
   - Disable Order Confirm - Removes icon from Line Item Summary page.
   - Disable Order Download - Removes icon from Line Item Summary page.
   - Disable Edit Header - Removes icon from Line Item Summary page.
   - 10 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - Disable Change Status - Removes icon from Line Item Summary page.
   - Disable Order Attachments Download - Removes icon from Line Item Summary page.
   - UDF
   - ■ 5 generic fields are available for additional User properties.
   - Flow
   - ■ Quote Header Name: Assign a Quote Header for this user (REQUIRED).
   - ■ Order Header Name: Assign a Order Header for this user (REQUIRED).
   - ■ Selector: Assign a Selector for this user.

## 2. PRODUCT MAINTENANCE

## P RODUCT P ROPERTIES

Overview : Allows for flexible, rule-based product representation inside Configurator through a 5-level tree structure (Product, Sets, Groups, Questions, and Answers).

## Product

   - Product Code: Enter a code for tree search reference (Optional).
   - Product Name: The name that will display on the product within the Product Carousel.
   - Tree Text: How the record will be labeled within the tree.
   - Select a Product Layout: Select where the CPI, Validations, and Product Summary containers will appear within the configurator.
   - Requires Login: Select this option if you must be logged in to view this product.
   - Unavailable for Orders: Select this option if the product is Unavailable for Orders.
   - Unavailable for Quotes: Select this option if the product is Unavailable for Quotes.
   - Line Item Label: The product name on an Order Summary.
   - Set Display Options: Choose if you want the Sets to be displayed as Pills or Tabs.
   - Silent: Choose this option to prevent messages in the console.

## Rules

   - Currently, rules at this level do not serve a function.

## System (Automatically Populated)

   - Date Created: Original record creation date.
   - Date Edited: Date of a record's last edit and save.
   - Created By: User that created the record.
   - Edited By: User who last edited/saved the record.

## Labels

   - 11 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - Top Label: Use the rich text editor to enter desired content to be displayed between the sub menu bar and configurator form.
   - Bottom Label: Use the rich text editor to enter desired content to be displayed below the configurator form.

## Image

   - Select Image: Upload or select an image from the NetSuite CPQ library to display on the Product Carousel.
   - Specify an image URL: Enter the URL of a hosted image to display on the Product Carousel.

## Widget Panel

   - CPI Label: Change the default text that appears at the top of the CPI container.
   - Validations Label: Change the default text that appears at the top of the Validations container.
   - Product Summary Label: Change the default text that appears at the top of the Product Summary container.
   - Header Label: Change the default text that appears in the header.
   - Validations Height: Define the height of the Validations container.
   - Product Summary Height: Define the height of the Product Summary container.

## Extras

   - Do not use Smart Part: Select this option when no part number generation is desired, or when using an alternative method of part number generation.
   - Do not use Window Sticker: Select this option when no Window Sticker is desired, or when using an alternative method.
   - Do not use Pricing Rules: Select this option when no pricing is desired, or when using an alternative method.
   - Do not save CPI Image for order summary (CORS disabled fix): Select this option when utilizing outside hosted images for CPI rules.

## S ET P ROPERTIES

## Properties

   - Set Code: Enter a code for tree search reference (Optional).
   - Set Name: Enter a record name for tree search reference. (Optional)
   - Tree Text: How the record will be labeled within the tree.
   - Layout: Select how groups will be displayed within the Set (Vertical or Horizontal).
   - Groups Per Column/Row: Select desired number of Groups per row/column, depending on selected layout.
   - Custom CSS Style: Used to enter CSS style markup code(s) for the Set.

## Rules

   - Incompatible When: Assign rules to determine when the Set is not valid for a configuration.
   - Don't Show When: Assign rules to determine when the Set will not be displayed.
   - Display Only When: Assign rules for when the Set will be visible to the user.
   - Read-Only When: Assign rules for when the Set will become disabled.
   - Upsell Condition: Rule does not serve a purpose at this level.

## System (Automatically Populated)

   - Date Created: Original record creation date.
   - Date Edited: Date of a record's last edit and save.
   - Created By: User that created the record.
   - Edited By: User who last edited/saved the record.

## Labels

   - Top Label: Use the rich text editor to enter desired content to be displayed on the Set tab at the top of the configurator form.
   - Bottom Label: Use the rich text editor to enter desired content to be displayed at the bottom of the the configurator form.

## Extras

   - Tool Tip: Use the rich text editor to enter desired content to be displayed when a user's mouse is hovering over the Set's tab.

## G ROUP P ROPERTIES

## Properties

   - Group Code: Enter a code for tree search reference (Optional).
   - Group Name: Enter a record name for tree search reference. (Optional)
   - Tree Text: How the record will be labeled within the tree.
   - Layout: Select how Questions will be displayed within the Group (Vertical or Horizontal). o Questions Per Row: Select desired number of Questions per row (Horizontal Only)
   - Span: Enter a number (1-12) to set how far the Group will span horizontally across the Set.
   - Do Not Show Header Bar: Select this option if you do not want a header bar displayed at the top  of the Group.
   - Transparent Group Background: Select this option if you prefer the header bar to not follow branding settings for color, and only display text.
   - Group Header (Underline Style): Select this option if you prefer the header bar to have a line as a divider.
   - Custom CSS Style: Used to enter CSS style markup code(s) for the Group.

   - Popup Group: Select this if the Group should be a popup overlay, rather than on the form.

## Rules

   - Incompatible When: Assign rules to determine when the Group is not valid for a configuration.
   - Don't Show When: Assign rules to determine when the Group will not be displayed.
   - Display Only When: Assign rules for when the Group will be visible to the user.
   - Read-Only When: Assign rules for when the Group will become disabled.
   - Upsell Condition: Rule does not serve a purpose at this level.

## System (Automatically Populated)

   - Date Created: Original record creation date.
   - Date Edited: Date of a record's last edit and save.
   - Created By: User that created the record.
   - Edited By: User who last edited/saved the record.

## Labels

   - Top Label: Use the rich text editor to enter desired content to be displayed within the Group's header bar on the configurator form.
   - Bottom Label: Use the rich text editor to enter desired content to be displayed at the bottom of the the Group on the configurator form.

## Image

   - Select Image: Upload and/or assign an image to be displayed for the Question on the configuration form. If this is used in conjunction with a Top Label, the image will appear below the label.
   - Specify an image URL: Enter a URL here to assign an externally hosted image to the question.

## Q UESTION P ROPERTIES

## Properties

   - Question Code: Enter a code for referencing this question rules and resolves. This code CANNOT contain any special characters or lowercase letters. (REQUIRED)
   - Question Name: Enter a record name for tree search reference. (OPTIONAL)
   - Tree Text: How the record will be labeled within the tree.
   - Layout: Select how Answers to this Question will be displayed within the configuration form (List, Dropdown, Tiles, or Buttons).
   - Flexbox Layout: Check this to enable flexboxes to be used for answers under this question. o Flexbox responsivity: The level of responsivity for flexboxes.
   - Select Type: Set the type of Answers for the Question (None (all options are always ON), Multiple, or Single).

   - Answer Layout: Choose a layout for the Answers to this Question (Vertical or Horizontal)
   - Answers Per Row: Enter desired number of Answers per row (Horizontal Only).
   - Span: Enter a number (1-12) to set how far the Question will span horizontally across the Group.
   - Show Image Border: Choose whether or not to display a border around tiled Answers.
   - Use Answer Codes instead of Labels: Mark this checkbox to display the Answers' Code's within the configuration form, instead of Labels.
   - Use Answers from Common Question: Enter a Question Code from a common Question to assign the common Answers to this Question.
   - Custom CSS Style: Used to enter CSS style markup code(s) for the Group.
   - Popup Question: Select this if the Question should be a popup overlay, rather than on the form. o No Background Color: Select this option to remove the Question's background color on the  configuration form.
   - Alignment: Choose the Question's text alignment (Left, Center, or Right).

## Rules

   - Incompatible When: Assign rules to determine when the Question is not valid for a configuration.
   - Don't Show When: Assign rules to determine when the Question will not be displayed.
   - Display Only When: Assign rules for when the Question will be visible to the user.
   - Read-Only When: Assign rules for when this Question will be disabled.
   - Upsell Condition: Assign rules for when this Question should be considered for upsell.
   - ■ When this rule is true, a green border and fill will be applied to this question.

## System (Automatically Populated)

   - Date Created: Original record creation date.
   - Date Edited: Date of a record's last edit and save.
   - Created By: User that created the record.
   - Edited By: User who last edited/saved the record.

## Labels

   - Top Label: Use the rich text editor to enter desired content to be displayed at the top of the Question in the configurator form.
   - Bottom Label: Use the rich text editor to enter desired content to be displayed at the bottom of the the Question on the configurator form.

## Image

   - Select Image: Upload and/or assign an image to be displayed for the Question on the
   - 15 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |

configuration form. If this is used in conjunction with a Top Label, the image will appear below the label.

   - Specify an image URL: Enter a URL here to assign an externally hosted image to the question.

## User Defined Properties

   - Add Field: Clicking this button will result in the appearance of two input fields.
   - Name: Assign a name to the UDP. This will be used for referencing and/or resolving.
   - Value: Assign a value to the UDP.

## A NSWER P ROPERTIES

## Properties

   - Answer Code: Enter a code for referencing this Answer rules and resolves. This code CANNOT contain any special characters or lowercase letters. (REQUIRED)
   - Answer Name: Enter a record name for tree search reference. (OPTIONAL)
   - Tree Text: How the record will be labeled within the tree.
   - Data: Select this option to present an input field within the configurator form.
   - Type of Variable (If Variable Selected): Select the format of required input on a variable field  (Input, Text Area, Numeric, Date, Uppercase, Currency).
   - Variable Input Location (If Variable selected): Select where to locate the input field (Below Label or Right of Label).
   - Width of Label (pixels): Type a width (in pixels) for the width of the Answer Label.
   - Hide Radio Button/Checkbox: Select this option to hide either item next to an input field on the configurator form.
   - Input Length: Select a size for an input field (Mini, Small, Medium, Large, X-Large, XX-Large).
   - Custom Input Height (EM): Set the input height of a variable Answer relative to the text height of the rest of the configurator form.
   - Span: Enter a number (1-12) to set how far the Answer will span horizontally across the Question.
   - Text Color: Choose a text color for this answer.
   - Background Color: Choose a background color for this answer.
   - Answer Description: Use this field for notes or tree search reference.
   - Custom CSS Style: Used to enter CSS style markup code(s) for the Group.

## Rules

   - Incompatible When: Assign rules to determine when the Answer is not valid for a configuration.
   - Don't Show When: Assign rules to determine when the Answer will not be displayed.
   - Display Only When: Assign rules for when the Answer will be visible to the user. o Read-Only When: Assign rules for when this Answer will be disabled.

   - Upsell Condition: Assign rules for when this Answer should be considered for up-sell.
   - ■ When this rule is true, a green border and fill will be applied to this answer.

## System (Automatically Populated)

   - Date Created: Original record creation date.
   - Date Edited: Date of a record's last edit and save.
   - Created By: User that created the record.
   - Edited By: User who last edited/saved the record.

## Labels

   - Top Label: Use the rich text editor to enter desired content to be displayed at the top of the Answer in the configurator form.
   - Bottom Label: Use the rich text editor to enter desired content to be displayed at the bottom of the Answer on the configurator form.
   - Side Label: Use the rich text editor to enter desired content to be displayed to the side of the Answer on the configurator form.
   - Side Label Position: Select whether the side label will appear to the right or left of the Answer.

## Image

   - Select Image: Upload and/or assign an image to be displayed for the Answer on the configuration form. If this is used in conjunction with a Top Label, the image will appear below the label.
   - Specify an image URL: Enter a URL here to assign an externally hosted image to the Answer.

## User Defined Properties

   - Add Field: Clicking this button will result in the appearance of two input fields.
   - Name: Assign a name to the UDP. This will be used for referencing and/or resolving.
   - Value: Assign a value to the UDP.

## Extras

   - Smart Part: Enter a value to be stored within the product's smart part number for this Answer.
   - Window Sticker: Use the rich text editor to enter desired content to be displayed in the Product Summary container on the configuration sidebar.
   - Tool Tip: Use the rich text editor to enter desired content to be displayed when a user's mouse is hovering over the Answer.

## CPI

Overview : Allows for rule-based image placement within CPI container.

## View Editor

## ○ Main

   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - Name: Enter a record name. This is how the Group will be displayed in the tree. ▪ Description: Use this field for a detailed description of the View.

## ○ Rules

   - ■ Assign rules that determine under what circumstances the View tab will display within the CPI container.

## ○ System (Automatically Populated, except for Effectivity Dates )

   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.

## ○ Properties

   - ■ Height: Enter a desired pixel height for the CPI container. This setting does not affect anything when using a product layout where the CPI is on either side. It will only affect a top/bottom orientated CPI.
   - ■ Use CPI from Common CPI: Enter a CPI Code from a common CPI to assign the  common CPI to this CPI.

## Image Editor Main

## ○ Main

   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Group will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Image.

## ○ Rules

   - ■ Assign rules to determine under what circumstances the image will be displayed on the parent View's tab within the CPI container.

## ○ System (Automatically Populated, except for Effectivity Dates )

   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.
   - 18 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |

## ○ Properties

   - ■ Specify URL: Enter a valid image URL when utilizing externally hosted images.
   - ■ Turn off cross-origin anonymous: Click this checkbox when specifying a URL for an externally hosted image.
   - ■ X-Offset (Pixels) - Enter a number of pixels to offset the image on the X axis.
   - ■ Y-Offset (Pixels) - Enter a number of pixels to offset the image on the Y axis.
   - ■ X-Offset (%) - Enter a percentage to offset the image on the X axis.
   - ■ Y-Offset (%) - Enter a percentage to offset the image on the Y axis.
   - Image
   - ■ Upload to or select from images on the ECS server.

## L OOKUPS

Overview : Allows for rule based manual and automatic data retrieval from Local or Live Lists..

## Group Editor

   - Main
   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Group will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Lookup Group.
   - Rules
   - ■ Assign rules that determine under what circumstances a manual lookup will function.
   - ■ See 'Product Actions - Action Types - Perform Lookup' for more information on rules  and Auto Lookups.
   - System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.

## Lookup Editor

   - Main
   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - 19 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - ■ Name: Enter a record name. This is how the Lookup will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Lookup.

## ○ Rules

   - ■ Assign rules that determine under what circumstances a lookup will function.
   - ■ See 'Product Actions - Action Types - Perform Lookup' for more information on rules  and Auto Lookups.

## ○ System (Automatically Populated, except for Effectivity Dates )

   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.

## ○ Lookup

   - ■ Select List: Choose a Local or Live list to retrieve data from.
   - ■ Master Field: See individual Lookup Type for more information.
   - ■ Lookup Types

## ● Manual (rule + button)

   - Displays a popup modal list, in which a user can make a selection by clicking on a row.

## ● Auto (rule only or run from an Action)

   - List is automatically filtered when rules are met. If only one result is found, data is mapped accordingly. If more than one result is found, the first record returned is mapped. Can be run from a 'Perform Lookup' Action if required to run in sequence. If this is needed, make the rule on the individual Lookup X(*/*).

## ● Input (rule + input fill)

   - Selecting this Lookup type will display a field for 'Number of Characters after which to perform Auto Lookup'. Once that character count has been met, Auto Lookup filter and map results.
   - ■ Show warning for no results found: Select this checkbox to display a popup when an Auto Lookup yields no results.

## ■ Filters

   - Local Lists: Filters for local lists are written as LIST/Column\_Name[='Query'].

   - Live Lists: Filters for live lists can vary depending on the source of the list.
   - e.g. A live SQL database list would be filtered by using WHERE (Column\_Name = 'Query').
   - ■ Column Mapping: Choose which Question or Q/A destination to map the data from each  column of the list.

## P RICING

Overview : Allows for rule-based pricing with firm pricing or by leveraging Multipliers

## Group Editor

   - Main
   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Group will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Pricing Group.
   - Rules
   - ■ Assign rules that determine under what circumstances the pricing values in the group will be added to the overall configured product's total price.
   - System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.

## Price Editor

   - Main
   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Price will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Price.
   - Rules
   - ■ Assign rules that determine under what circumstances the individual pricing value will be  added to the overall configured product's total price.
   - System (Automatically Populated, except for Effectivity Dates )

   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.
   - Properties
   - ■ Price: Enter a price value in dollars and cents.
   - ■ Multiplier: Assign a multiplier to the Price value. This can either be a Multiplier reference code or resolved Q/A's value.
   - ■ Discount %: Enter a Discount percent value.

## ○ Result

   - ■ Store result in item price: Check to include this cost in the overall price of the line item.

## R ULE I MPORT /E XPORT

Overview : Overwrite or append rules to an existing ruleset.

## Buttons - Located in the upper right corner of standard rule maintenance forms.

   - Rule Export
   - ■ Click to download .json file of current ruleset.
   - Full Export (ZIP)
   - ■ Click to to download a .zip folder containing .json files for all of current product's rulesets.
   - ■ Folder must be unzipped.
   - Rule Import
   - ■ Click to open popup.
   - ■ Choose source file from your local drive.
   - ■ Choose to Overwrite or Append to current ruleset.
   - ■ Click Upload button.
   - ■ Wait for page to refresh.
   - ■ When importing from a different domain or product, references to specific system ID's will need to be checked and adjusted accordingly. This applies to things such as list IDs in formulas, ShowSet actions, and ShowCPIView actions.

## V ALIDATIONS

   - 22 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |

Overview : Allows for rule based messages to be passed along to the user configuring a product.

## Group Editor

   - Main
   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Group will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Validations Group.
   - Rules
   - ■ Assign rules that determine under what circumstances the Validations within the group will be displayed.
   - System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.

## Validation Editor

## ○ Main

   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Validation will be displayed in the tree. ▪ Description: Use this field for a detailed description of the Validation.

## ○ Rules

   - ■ Assign rules that determine under what circumstances the individual Validation message will be displayed.

## ○ System (Automatically Populated, except for Effectivity Dates )

   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.

## ○ Validation

   - ■ Type
   - Incomplete: Validation light becomes yellow, indicating that additional selections  must be made in order to complete the configuration.
   - Invalid: Validation light becomes red, indicating that the current configuration contains selections that are not compatible with one another.
   - Note: Validation light becomes green, and displays a message to the user.
   - ■ Message: Enter text to be displayed in the Validation container when the rules for the validation are met.

## A CTIONS

Overview : Product Actions allow for a variety of rule-based functions during a configuration.

## Group Editor

   - Main
   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Group will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Action Group.
   - Rules
   - ■ Assign rules that determine under what circumstances the Actions within the Group will run.
   - System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.
   - Properties
   - ■ Use Answers from Common Actions: Enter an Action Code from a common Action to assign the common Answers to this Action.

## Action Editor

   - Main

   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Action will be displayed in the
   - tree.
   - ■ Description: Use this field for a detailed description of the Action (OPTIONAL).
   - Rules
   - ■ Assign rules that determine under what circumstances the Actions will run. Rules of the group (parent) will be inherited by Action (child).
   - System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.
   - Action
   - ■ Action Type: Select an Action type from the dropdown.
   - Transfer: See 'Product Actions: Action Types' for more information.
   - CodeExec: See 'Product Actions: CodeExec' for more information.
   - ResetAction: See 'Product Actions: Action Types' for more information.
   - ShowSet: See 'Product Actions: Action Types' for more information.
   - ShowCPIView: See 'Product Actions: Action Types' for more information.
   - Perform Lookup: See 'Product Actions: Action Types' for more information.

## C ODE E XEC

## CodeExec allows execution of custom JavaScript code within a Product or Header.

   - Context
   - ■ inQuote - True/false if you're in a quote or not
   - ■ inOrder - True/false if you're in an order or not
   - ■ inStandalone - True/false if you're in not in 'standalone' mode.
   - Generalized Product
   - ■ getAllSets() - returns all sets for product.

   - ■ getQuestions () - returns all questions for group.
   - ■ getAnswers (question code) - returns answer code in object array [{answer, uservalue},{answer, uservalue}].
   - ■ getUdp (reference, UDP) - returns a UDP for a given reference, e.g. COLOR/RED.
   - ■ getValue (question code, answer code) - Returns user value.
   - ■ getUnansweredQuestions () - returns array of unanswered questions
   - ■ setValue (question code, answer code, value) - Sets user value for answer.
   - ■ setAnswer (product code, question code) - Sets answer to a question.
   - ■ reset (question code, answer code) - If only question is sent, this will reset all answers for question. If both Q&amp;A are sent, all answers are reset.
   - ■ isAnswered (question) - returns true/false depending on whether question is answered.
   - ■ hasValue (question,answer) - returns true/false depending on whether answer has a value in it.
   - ■ isNumeric (question , answer) - returns true/false depending on whether answer has numeric value.
   - ■ clickSave - clicks the save button virtually.
   - ■ clickCancel - clicks the cancel button virtually.
   - ■ passiveRules ('Maintenance') - Options are Materials, Routings, Pricing, Validations, or Multipliers. Will return an object that can be iterated.

## ○ Order

   - ■ getLineItem (item id) - Returns data about a line item given it's ID.
   - ■ editLineItem (item id, data) - Will change data in database for a given order or quote  item.
   - Lists
   - ■ loadList (list code, filter)
   - Returns the list data
   - Filter is Optional
   - ■ addToList (ID, data)
   - Stores data to a list. The 'data' variable must be an array that has the row elements in the same order as the list.
   - ■ deleteFromList (list code, filter)
   - Deletes data from a list with the given list code based on the filter.

## ○ User Interface

   - ■ eosPopup (text, type) - Text will send them a message. 3 types - info, warn and error,  changes color to show user different levels.
   - Misc
   - ■ loadConfig (config) - Loads a config string. Can pass either a configuration object or a  string containing a configuration.
   - 26 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - ■ getConfig (type) - Can send 'json' as a type to return the value as an object. If parameter is empty, returns a string.

## A CTION T YPES

   - Transfer
   - ■ Destination: Enter QUESTION\_CODE/ANSWER\_CODE of the target.
   - ■ Transfer Value: Enter a value to transfer. This can be a resolve {QUESTION/ANSWER}, text, or number if the destination is a variable field. Leave this field blank to transfer only a 'true'  value.
   - CodeExec
   - ■ See:'Product Actions: CodeExec' for more information.
   - ResetAction
   - ■ QA Code to Reset: Enter the desired Question code to reset.
   - ShowSet
   - ■ Set ID to Activate: Enter the Set ID of the desired Set to activate. This can be found on the  Main tab of the Set-in product maintenance

## ○ ShowCPIView

   - ■ CPI View ID to Activate: Enter the View ID of the desired view to activate. This can be found on  the Main tab of the Set-in product maintenance.
   - Perform Lookup (REQUIRED for Auto Lookups)
   - ■ Lookup: Select an Auto Lookup from the dropdown menu. Rules on the Auto Lookup and it's group will be ignored. The function will run based on the Action's rule.
   - Launch Product
   - ■ Rule based action that will open a specific product.
   - (Un)share With Group
   - ■ Group: Select a Share Group to grant order / quote viewing privileges.
   - ■ Unshare: Check this box if you want to remove viewing rights with the selected Share Group.
   - Set Order Status
   - ■ Status: Select the desired Status from the dropdown. The Order / Quote's state will be set accordingly and appear within the appropriate tab on the list page.
   - Send Email

## 3. ASSEMBLY MAINTENANCE

## M ATERIALS

Overview : Allows for rule-based Bill of Materials (BOM) generation.

## Group Editor

## ○ Main

   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Group will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Materials Group.

## ○ Rules

   - ■ Assign rules that determine under what circumstances the materials in the group will be  included in the BOM.

## ○ System (Automatically Populated, except for Effectivity Dates )

   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.

## Material Editor

## ○ Main

   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Material will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Material.

## ○ Rules

   - ■ Assign rules that determine under circumstances the individual material will be included  in the BOM.

## ○ System (Automatically Populated, except for Effectivity Dates )

   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.
   - Costs, Quantities, Relationships, and Other
   - ■ These five tabs provide fields for relevant BOM data

## M ULTIPLIERS

Overview : Allows for rule-based Multipliers to calculate values for Pricing, Materials, Routings.

## Group Editor

   - Main
   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Group will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Multiplier Group.
   - Rules
   - ■ Assign rules that determine under what circumstances the Multiplier values in the group  will be used.
   - System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.

## Multiplier Editor

   - Main
   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Multiplier will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Multiplier.
   - Rules
   - ■ Assign rules that determine under what circumstances the individual the Multiplier value will be used.
   - System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.

   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.
   - Properties
   - ■ Type
   - Quantity
   - Order/Line Data
   - Q/A
   - ■ Value: Enter number, database field, or Q/A code.

## R OUTINGS

Overview : Allows for rule-based Routings generation for shop floor use.

## Group Editor

   - Main
   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Group will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Routings group.
   - Rules
   - ■ Assign rules that determine under what circumstances the Routings in the group will be  part of the assembly process.
   - System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.

## Routing Editor

   - Main
   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Routing will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Routing.
   - Rules

   - ■ Assign rules that determine under circumstances the individual the Routings in the group will be part of the assembly process.
   - System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.
   - Properties, Operation Data, RTC Values, Run Values, Machine Values, Move Values, Rate Values, Pricing, Relationships
   - ■ These ten tabs provide 49 fields for relevant Routing data, such as Work Center, Operation Sequence, Set-up and Run Rates.

## 4. COMMON QA

## Properties

   - Reference Code: Enter a code for referencing this Answer rules and resolves. This code CANNOT contain any special characters or lowercase letters. (REQUIRED)
   - Name: How the record will be labeled within the tree.
   - Description:
   - Data: Select the type of data the answer will hold.
   - Type of Variable (If 'Variable' Chosen): Select the format of required input on a variable field  (Input, Text Area, Numeric, Date, Uppercase, Currency).
   - Variable Input Location (If 'Variable' Chosen): Select where to locate the input field (Below Label or Right of Label).
   - Hide Radio Button/Checkbox: Select this option to hide either item next to an input field on the configurator form.
   - Input Length: Select a size for an input field (Mini, Small, Medium, Large, X-Large, XX-Large).
   - Custom Input Height (EM): Set the input height of a variable Answer relative to the text height of the rest of the configurator form.
   - Span: Enter a number (1-12) to set how far the Answer will span horizontally across the Question.
   - Answer Description: Use this field for notes or tree search reference.

## Rules

   - Incompatible When: Assign rules to determine when the Answer is not valid for a configuration.
   - Don't Show When: Assign rules to determine when the Answer will not be displayed.

   - Display Only When: Assign rules for when the Answer will be visible to the user.
   - Read-Only When: Assign rules for when this Answer will be disabled.
   - Upsell Condition: Assign rules for when this Answer should be considered for up-sell.
   - ■ When this rule is true, a green border and fill will be applied to this answer.

## System (Automatically Populated)

   - Date Created: Original record creation date.
   - Date Edited: Date of a record's last edit and save.
   - Created By: User that created the record.
   - Edited By: User who last edited/saved the record.

## Extras

   - Smart Part: Enter a value to be stored within the product's smart part number for this Answer.
   - Window Sticker: Use the rich text editor to enter desired content to be displayed in the Product Summary container on the configuration sidebar.
   - Tool Tip: Use the rich text editor to enter desired content to be displayed when a user's mouse is hovering over the Answer.

## Labels

   - Top Label: Use the rich text editor to enter desired content to be displayed at the top of the Answer in the configurator form.
   - Bottom Label: Use the rich text editor to enter desired content to be displayed at the bottom of the the Answer on the configurator form.
   - Side Label: Use the rich text editor to enter desired content to be displayed to the side of the  Answer on the configurator form.
   - Side Label Position: Select whether the side label will appear to the right or left of the Answer.

## Image

   - Select Image: Upload and/or assign an image to be displayed for the Answer on the  configuration form. If this is used in conjunction with a Top Label, the image will appear below  the label.
   - Specify an image URL: Enter a URL here to assign an externally hosted image to the Answer.

## User Defined Properties

   - Add Field: Clicking this button will result in the appearance of two input fields.
   - Name: Assign a name to the UDP. This will be used for referencing and/or resolving.
   - Value: Assign a value to the UDP.

## 5. COMMON ACTIONS

Common Actions are actions accessed by the entire product. To access those actions for the other

   - 32 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |

products we must map them. The mapping is done by adding the reference code from the Main Menu  of the Parent group into the Common Action Reference Code in the Properties tab of the New Group or child group.

## 6. COMMON CPI

Common CPI are CPI's accessed by the entire product. To access those CPI's for the other products we must map them. The mapping is done by adding the reference code from the Main Menu of the  Parent group into the Common CPI Reference Code in the Properties tab of the New View or child  group.

## 7. COMMON LOOKUPS

Common Lookups are Lookups accessed by the entire product. To access those Lookups for the other products we must map them. The mapping is done by adding the reference code from the Main Menu  of the Parent group into the Common Lookups Reference Code in the Properties tab of the New Group or child group.

## 8. COMMON VALIDATIONS

Common Validations are Validations accessed by the entire product. To access those Validations for the other products we must map them. The mapping is done by adding the reference code from the  Main Menu of the Parent group into the Common Validations Reference Code in the Properties tab of  the New Group or child group.

## 9. COMMON MATERIALS

Common Materials are Materials accessed by the entire product. To access those Materials for the other products we must map them. The mapping is done by adding the reference code from the Main Menu of the Parent group into the Common Materials Reference Code in the Properties tab of the New Group or child group.

## 10. COMMON ROUTINGS

Common Routings are Routings accessed by the entire product. To access those Routings for the other products we must map them. The mapping is done by adding the reference code from the Main  Menu of the Parent group into the Common Routings Reference Code in the Properties tab of the New Group or child group.

## 11. COMMON MULTIPLIERS

Common Multipliers are Multipliers accessed by the entire product. To access those Multipliers for the

33 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |

other products we must map them. The mapping is done by adding the reference code from the Main Menu of the Parent group into the Common Multipliers Reference Code in the Properties tab of the New Group or child group.

## 12. COMMON DATA DIRECTOR

Common Data Directors are Data Directors accessed by the entire product. To access those Data Directors for the other products we must map them. The mapping is done by adding the reference code  from the Main Menu of the Parent group into the Common Data Directors Reference Code in the Properties tab of the New Output Header or child group.

## 13. COMMON PRICING

Common Pricing are Pricing accessed by the entire product. To access those Pricing for the other products we must map them. The mapping is done by adding the reference code from the Main Menu  of the Parent group into the Common Pricing Reference Code in the Properties tab of the New Group or  child group.

## 14. DATA MANAGEMENT

## D ATA D IRECTOR

Overview : Allows for rule-based downloads of NetSuite CPQ data into your ERP/CRM or other proprietary systems

## Output Header Editor

   - Main
   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Group will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Output Header Group.
   - Rules
   - ■ Assign rules that determine under what circumstances the mappings within the Group will be executed.
   - System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.

   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.
   - Output
   - ■ Output SQL Database: Enter the name of target database for mappings.

## D ETAIL M APPINGS E DITOR

   - Main
   - ■ Reference Code: Enter a code for tree search reference (REQUIRED).
   - ■ Name: Enter a record name. This is how the Detail Mappings rule will be displayed in the tree.
   - ■ Description: Use this field for a detailed description of the Detailed Mappings rule. (OPTIONAL).
   - Rules
   - ■ Assign rules that determine under what circumstances the individual mappings will be executed.
   - System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.
   - Output
   - ■ Output SQL Table Name: Enter the name of the target data table.
   - Source
   - ■ Output From: Choose a source for data to be mapped from.
   - Product
   - Materials
   - Routings
   - Pricing
   - Validations
   - Mappings
   - ■ Add Field: Click to display the 3 fields for a new mapping.
   - Select a Source
   - String: Pass a string of characters.
   - Order Header (DB Field)
   - 35 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - Order Line (DB Field)
   - Catalog Product Property
   - Q/A: Resolve a Q/A value from a Product or Header.
   - Passive Ruleset: Pass data from a Materials, Routings, etc. ruleset.
   - Value: Enter the value, field name, or Q/A to pass.
   - Map to…: Enter the name of the destination table column.

## D OC -G EN

Overview: Allows for custom document generation. Documents can be selected and viewed from the 'Select a Document' dropdown on the Line Item Summary page. If you have no documents, this menu will not appear.

## D OCUMENT E DITOR

   - Main
   - ■ Title: Enter a record name. This is how the Group will be displayed in the tree and the Line Item Summary page.
   - ■ Description: Use this field for a detailed description of the Document Group.
   - Rules
   - ■ Assign rules that determine under what circumstances the document will be generated.
   - o System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.
   - User Access
   - ■ Manually select users that the document is available to.
   - PDF Options
   - ■ File Name: Enter the name of the created document
   - ■ Include Page Numbers: Select this option if you want page numbers to appear on the  document.
   - ■ Page Size: Choose the size of the pages for the document.

## S ECTION E DITOR

   - 36 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - Main
   - ■ Title: Enter a record name. This is how the Section will be displayed in the tree. ▪ Description: Use this field for a detailed description of the Section.
   - Rules
   - ■ Assign rules that determine under what circumstances the Section will be generated.
   - System (Automatically Populated, except for Effectivity Dates )
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - ■ Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - ■ Effective Ending: See Appendix 'Effectivity Dates' for more information.
   - Output
   - ■ Use the WYSIWYG text editor to define the content of the Section.
   - Properties
   - ■ Run
   - Header - Use this setting to create the top area of the Document. Q/A from the header is available for resolves.
   - Footer - Use this setting to create the bottom area of the . Q/A from the header and configuration is available for resolves.
   - Every Item - Use this setting to create the body area of the Document. This section will run up against each line item

## F ILE M ANAGER

Overview : Provides a central location for file uploads and maintenance.

   - Upload Files
   - ■ Select file(s) from your local machine and upload them to the NetSuite CPQ instance.
   - Replace Selected File
   - ■ Replace selected file(s) with uploaded file(s).
   - Select All
   - ■ Select all visible files in table.
   - Select None
   - ■ Deselect all selected files in table.
   - Delete Selected
   - 37 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |

○

   - ■ Delete all selected files.
   - Show # of Entries
   - ■ Select how many files to be displayed in table.
   - Search
   - ■ Executes real-time search of available files. Results will filter and show only matching records.

## L ISTS

Overview: Allows local or live data table storage or retrieval.

   - Main Tab
   - ■ Form Type
   - Local List: A list stored within an NetSuite CPQ instance.
   - Live List: A list retrieved from an outside source via query (e.g. SQL).
   - ■ Protected
   - A protected list cannot be utilized by a user that is not logged in.
   - ■ List Name
   - Assign a name to the list.
   - ■ Query Text
   - Enter a query to return data into a list.
   - ■ List Description
   - A text field to provide a list description.

Data Tab (Local List)

   - ■ Excel ( XLS ) Import
   - Used to import an excel .xls file to replace current data.
   - ■ Excel (XLS) Export
   - Downloads a .xls format of the local list that can be used to edit data.
   - ■ Make List Editable
   - Allows for the editing of data fields in the list.
   - ■ Delete / Add
   - Used to delete an entry in a list, or add a new entry (row) of data.
   - Data Tab (Live List)
   - ■ Query
   - Enter a query to return data into a list.
   - 38 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - ■ Preview
   - Will run the query from the editor and return results in a table below. When using preview, the {FILTER} syntax must be removed or commented out first.

## 15. FLOW CONTROL

## O VERVIEW

Allows for flexible, rule-based Header for gathering user and/or customer information through a 5-level tree structure (Product, Sets, Groups, Questions, and Answers). Header Q/A is inherited by each line item and can be leveraged for Rules, Pricing, etc.

## H EADER P ROPERTIES

   - Product
   - ■ Product Code: Enter a code for tree search reference (Optional).
   - ■ Product Name: The name that will display on the Header within the Product Carousel in  Standalone.
   - ■ Tree Text: How the record will be labeled within the tree.
   - ■ Select a Product Layout: Select where the CPI, Validations, and Product Summary  containers will appear within the configurator.
   - ■ Requires Login: Select this option if you must be logged in to view this product.
   - ■ Unavailable for Orders: Select this option if the product is Unavailable for Orders. o Unavailable for Quotes: Select this option if the product is Unavailable for Quotes. o Line Item Label: The product name on an Order Summary.
   - ■ Set Display Options: Choose if you want the Sets to be displayed as Pills or Tabs. o Silent: Choose this option to prevent messages in the console.
   - Rules
   - ■ Currently, rules at this level do not serve a function.
   - System (Automatically Populated)
   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - Labels
   - ■ Top Label: Use the rich text editor to enter desired content to be displayed between the sub menu bar and configurator form.
   - ■ Bottom Label: Use the rich text editor to enter desired content to be displayed below the configurator form.

## ○ Image

   - ■ Select Image: Upload or select an image from the NetSuite CPQ library to display on the Product Carousel.
   - ■ Specify an image URL: Enter the URL of a hosted image to display on the Product Carousel.

## ○ Widget Panel

   - ■ CPI Label: Change the default text that appears at the top of the CPI container. o Validations Label: Change the default text that appears at the top of the Validations container.
   - ■ Product Summary Label: Change the default text that appears at the top of the Product Summary container.
   - ■ Header Label: Change the default text that appears in the header.
   - ■ Validations Height: Define the height of the Validations container.
   - ■ Product Summary Height: Define the height of the Product Summary container.

## ○ Extras

   - ■ Do not use Smart Part: Select this option when no part number generation is desired, or when using an alternative method of part number generation.
   - ■ Do not use Window Sticker: Select this option when no Window Sticker is desired, or when using an alternative method.
   - ■ Do not use Pricing Rules: Select this option when no pricing is desired, or when using an  alternative method.
   - ■ Do not save CPI Image for order summary (CORS disabled fix): Select this option when utilizing outside hosted images for CPI rules.

## H EADER S ET P ROPERTIES

## ○ Properties

   - ■ Set Code: Enter a code for tree search reference (Optional).
   - ■ Set Name: Enter a record name for tree search reference. (Optional)
   - ■ Tree Text: How the record will be labeled within the tree.
   - ■ Layout: Select how groups will be displayed within the Set (Vertical or Horizontal). o Groups Per Column/Row: Select desired number of Groups per row/column, depending on  selected layout.
   - ■ Custom CSS Style: Used to enter CSS style markup code(s) for the Set.

## ○ Rules

   - ■ Incompatible When: Assign rules to determine when the Set is not valid for a configuration. o Don't Show When: Assign rules to determine when the Set will not be displayed. o Display Only When: Assign rules for when the Set will be visible to the user.
   - ■ Read-Only When: Assign rules for when the Set will become disabled.
   - ■ Upsell Condition: Rule does not serve a purpose at this level.

## ○ System (Automatically Populated)

   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.

## ○ Labels

   - ■ Top Label: Use the rich text editor to enter desired content to be displayed on the Set tab at the top of the configurator form.
   - ■ Bottom Label: Use the rich text editor to enter desired content to be displayed at the bottom of the the configurator form.

## ○ Extras

   - ■ Tool Tip: Use the rich text editor to enter desired content to be displayed when a user's mouse is hovering over the Set's tab.

## H EADER Q UESTIONS

## ○ Properties

   - ■ Question Code: Enter a code for referencing this question rules and resolves. This code CANNOT contain any special characters or lowercase letters. (REQUIRED)
   - ■ Question Name: Enter a record name for tree search reference. (Optional)
   - ■ Tree Text: How the record will be labeled within the tree.
   - ■ Layout: Select how Answers to this Question will be displayed within the configuration form (List, Dropdown, Tiles, or Buttons).
   - ■ Flexbox Layout: Check this to enable flexboxes to be used for answers under this question. o Flexbox responsivity: The level of responsivity for flexboxes. See this page for a more detailed explanation.
   - ■ Select Type: Set the type of Answers for the Question (None (all options are always ON), Multiple, or Single).
   - ■ Answer Layout: Choose a layout for the Answers to this Question (Vertical or Horizontal) o Answers Per Row: Enter desired number of Answers per row (Horizontal Only).
   - ■ Span: Enter a number (1-12) to set how far the Question will span horizontally across the Group.
   - ■ o Show Image Border: Choose whether or not to display a border around tiled Answers.
   - ■ Use Answer Codes instead of Labels: Mark this checkbox to display the Answers' Code's within the configuration form, instead of Labels.
   - ■ Use Answers from Common Question: Enter a Question Code from a common Question to assign the common Answers to this Question.
   - ■ Custom CSS Style: Used to enter CSS style markup code(s) for the Group.
   - ■ Popup Question: Select this if the Question should be a popup overlay, rather than on the form. o No

Background Color: Select this option to remove the Question's background color on the configuration form.

   - ■ Alignment: Choose the Question's text alignment (Left, Center, or Right).

## ○ Rules

   - ■ Incompatible When: Assign rules to determine when the Question is not valid for a  configuration.
   - ■ Don't Show When: Assign rules to determine when the Question will not be displayed.
   - ■ Display Only When: Assign rules for when the Question will be visible to the user. o Read-Only When: Assign rules for when the Question will become disabled.
   - ■ Upsell Condition: Assign rules for when this Question should be considered for up-sell.
   - ■ When this rule is true, a green border and fill will be applied to this question.

## ○ System (Automatically Populated)

   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.

## ○ Labels

   - ■ Top Label: Use the rich text editor to enter desired content to be displayed at the top of the Question in the configurator form.
   - ■ Bottom Label: Use the rich text editor to enter desired content to be displayed at the bottom of the the Question on the configurator form.

## ○ Image

   - ■ Select Image: Upload and/or assign an image to be displayed for the Question on the  configuration form. If this is used in conjunction with a Top Label, the image will appear below the label.
   - ■ Specify an image URL: Enter a URL here to assign an externally hosted image to the question.

## ○ User Defined Properties

   - ■ Add Field: Clicking this button will result in the appearance of two input fields. o Name: Assign a name to the UDP. This will be used for referencing and/or resolving. o Value: Assign a value to the UDP.

## H EADER A NSWERS

## ○ Properties

   - ■ Answer Code: Enter a code for referencing this Answer rules and resolves. This code CANNOT contain any special characters or lowercase letters. (REQUIRED)
   - ■ Answer Name: Enter a record name for tree search reference. (Optional)
   - ■ Tree Text: How the record will be labeled within the tree.
   - ■ Hide on Order Summary: Select this checkbox if you wish to hide the Answer from the Line Item
   - 42 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |

Summary page and Order/Quote summary.

   - ■ Data: Select this option to present an input field within the configurator form. o Type of Variable (If Variable Selected): Select the format of required input on a variable field (Input, Text Area, Numeric, Date, Uppercase, Currency).
   - ■ Variable Input Location (If Variable selected): Select where to locate the input field (Below Label or Right of Label).
   - ■ Width of Label (pixels): Type a width (in pixels) for the width of the Answer Label. o Hide Radio Button/Checkbox: Select this option to hide either item next to an input field on the configurator form.
   - ■ Input Length: Select a size for an input field (Mini, Small, Medium, Large, X-Large, XX Large).
   - ■ Custom Input Height (EM): Set the input height of a variable Answer relative to the text height of the rest of the configurator form.
   - ■ Span: Enter a number (1-12) to set how far the Answer will span horizontally across the Question.
   - ■ Text Color: Choose a text color for this answer.
   - ■ Background Color: Choose a background color for this answer.
   - ■ Answer Description: Use this field for notes or tree search reference.
   - ■ Custom CSS Style: Used to enter CSS style markup code(s) for the Group.

## ○ Rules

   - ■ Incompatible When: Assign rules to determine when the Answer is not valid for a  configuration.
   - ■ Don't Show When: Assign rules to determine when the Answer will not be displayed. o Display Only When: Assign rules for when the Answer will be visible to the user. o Read-Only When: Assign rules for when this Answer will be disabled.
   - ■ Upsell Condition: Assign rules for when this Answer should be considered for up-sell.
   - ■ When this rule is true, a green border and fill will be applied to this answer.

## ○ System (Automatically Populated)

   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.

## ○ Labels

   - ■ Top Label: Use the rich text editor to enter desired content to be displayed at the top of the Answer in the configurator form.
   - ■ Bottom Label: Use the rich text editor to enter desired content to be displayed at the bottom of the the Answer on the configurator form.
   - ■ Side Label: Use the rich text editor to enter desired content to be displayed to the side of the  Answer on the configurator form.
   - ■ Side Label Position: Select whether the side label will appear to the right or left of the  Answer.

## ○ Image

   - ■ Select Image: Upload and/or assign an image to be displayed for the Answer on the  configuration form. If this is used in conjunction with a Top Label, the image will appear below the label.
   - ■ Specify an image URL: Enter a URL here to assign an externally hosted image to the  Answer.

## ○ User Defined Properties

   - ■ Add Field: Clicking this button will result in the appearance of two input fields. o Name: Assign a name to the UDP. This will be used for referencing and/or resolving. o Value: Assign a value to the UDP.

## ○ Extras

   - ■ Smart Part: Enter a value to be stored within the product's smart part number for this Answer.
   - ■ Window Sticker: Use the rich text editor to enter desired content to be displayed in the Product Summary container on the configuration sidebar.
   - ■ Tool Tip: Use the rich text editor to enter desired content to be displayed when a user's mouse is hovering over the Answer.

## H EADER G ROUPS

   - Properties
   - ■ Group Code: Enter a code for tree search reference (Optional).
   - ■ Group Name: Enter a record name for tree search reference. (Optional)
   - ■ Tree Text: How the record will be labeled within the tree.
   - ■ Layout: Select how Questions will be displayed within the Group (Vertical or Horizontal). o Questions Per Row: Select desired number of Questions per row (Horizontal Only) o Span: Enter a number (1-12) to set how far the Group will span horizontally across the Set. o Do Not Show Header Bar: Select this option if you do not want a header bar displayed at the  top of the Group.
   - ■ Transparent Group Background: Select this option if you prefer the header bar to not follow branding settings for color, and only display text.
   - ■ Group Header (Underline Style): Select this option if you prefer the header bar to have a line as a divider.
   - ■ Custom CSS Style: Used to enter CSS style markup code(s) for the Group.
   - ■ Popup Group: Select this if the Group should be a popup overlay, rather than on the form.

## ○ Rules

   - ■ Incompatible When: Assign rules to determine when the Group is not valid for a  configuration.
   - ■ Don't Show When: Assign rules to determine when the Group will not be displayed. o Display Only When: Assign rules for when the Group will be visible to the user. o Read-Only When: Assign rules for when the Group will become disabled.
   - ■ Upsell Condition: Rule does not serve a purpose at this level.

## ○ System (Automatically Populated)

   - ■ Date Created: Original record creation date.
   - ■ Date Edited: Date of a record's last edit and save.
   - ■ Created By: User that created the record.
   - ■ Edited By: User who last edited/saved the record.
   - Labels
   - ■ Top Label: Use the rich text editor to enter desired content to be displayed within the Group's header bar on the configurator form.
   - ■ Bottom Label: Use the rich text editor to enter desired content to be displayed at the bottom of the the Group on the configurator form.
   - Image
   - ■ Select Image: Upload and/or assign an image to be displayed for the Question on the  configuration form. If this is used in conjunction with a Top Label, the image will appear below the label.
   - ■ Specify an image URL: Enter a URL here to assign an externally hosted image to the  question.

## H EADER A CTIONS

## CodeExec

CodeExec allows execution of custom JavaScript code within a Header.

   - Context
   - ■ inQuote - True/false if you're in a quote or not
   - ■ inOrder - True/false if you're in an order or not
   - ■ inStandalone - True/false if you're in not in 'standalone' mode.
   - Generalized Product
   - ■ getAllSets() - returns all sets for product.
   - ■ getQuestions () - returns all questions for group.
   - ■ getAnswers (question code) - returns answer code in object array [{answer, uservalue},{answer, uservalue}].
   - ■ getUdp (reference, UDP) - returns a UDP for a given reference, e.g. COLOR/RED.
   - ■ getValue (question code, answer code) - Returns user value.
   - ■ getUnansweredQuestions () - returns array of unanswered questions.
   - ■ setValue (question code, answer code, value) - Sets user value for answer.
   - ■ setAnswer (product code, question code) - Sets answer to a question.
   - ■ reset (question code, answer code) - If only question is sent, this will reset all answers for question. If both Q&amp;A are sent, all answers are reset.
   - ■ isAnswered (question) - returns true/false depending on whether question is answered.
   - 45 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - ■ hasValue (question,answer) - returns true/false depending on whether answer has a value in it.
   - ■ isNumeric (question , answer) - returns true/false depending on whether answer has numeric value.

■

clickSave

   - clicks the save button virtually.

   - ■ clickCancel - clicks the cancel button virtually.
   - ■ passiveRules ('Maintenance') - Options are Materials, Routings, Pricing, Validations, or Multipliers. Will return an object that can be iterated.

## ○ Order

   - ■ getLineItem (item id) - Returns data about a line item given it's ID.
   - ■ editLineItem (item id, data) - Will change data in database for a given order or quote item.
   - Lists
   - ■ loadList (list code, filter)
   - Returns the list data
   - Filter is Optional
   - ■ addToList (ID, data)
   - ■ Stores data to a list. The 'data' variable must be an array that has the row elements in the same order as the list.

## ○ User Interface

   - ■ ▪ eosPopup (text, type) - Text will send them a message. 3 types - info, warn and error,  changes color to show user different levels.
   - Misc
   - ■ loadConfig (config) - Loads a config string. Can pass either a configuration object or a  string containing a configuration.
   - ■ getConfig (type) - Can send 'json' as a type to return the value as an object. If parameter is empty, returns a string.

## Action Types

## ○ Transfer

   - ■ Destination: Enter QUESTION\_CODE/ANSWER\_CODE of the target.
   - ■ Transfer Value: Enter a value to transfer. This can be a resolve {QUESTION/ANSWER}, text, or number if the destination is a variable field. Leave this field blank to transfer only a  'true' value.

## ○ CodeExec

   - ■ See: 'Product Actions: CodeExec' for more information.
   - ResetAction
   - ■ QA Code to Reset: Enter the desired Question code to reset.
   - ShowSet
   - 46 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - ■ Set ID to Activate: Enter the Set ID of the desired Set to activate. This can be found on the  Main tab of the Set in product maintenance.

## ○ ShowCPIView

   - ■ CPI View ID to Activate: Enter the View ID of the desired view to activate. This can be found on the Main tab of the Set in product maintenance.

## ○ Perform Lookup (REQUIRED for Auto Lookups)

   - ■ Lookup: Select an Auto Lookup from the dropdown menu. Rules on the Auto Lookup and  it's group will be ignored. The function will run based on the Action's rule.

## M AIN

Overview : Header Actions allow for a variety of rule-based functions while a user is filling out the Header form.

## ○ Group Editor

   - ■ Main
   - Reference Code: Enter a code for tree search reference (REQUIRED).
   - Name: Enter a record name. This is how the Group will be displayed in the tree.
   - Description: Use this field for a detailed description of the Action Group.

## ■ o Rules

   - Assign rules that determine under what circumstances the Actions within the Group will run.

## ■ System (Automatically Populated, except for Effectivity Dates )

   - Date Created: Original record creation date.
   - Date Edited: Date of a record's last edit and save.
   - Created By: User that created the record.
   - Edited By: User who last edited/saved the record.

●

Effective Starting: See Appendix 'Effectivity Dates' for more information.

   - Effective Ending: See Appendix 'Effectivity Dates' for more information.

## ■ Properties

   - Use Answers from Common Actions: Enter an Action Code from a common Action to assign the common Answer to this Action.

## ○ Action Editor

## ■ Main

   - Reference Code: Enter a code for tree search reference (REQUIRED).
   - Name: Enter a record name. This is how the Action will be displayed in the tree.
   - Description: Use this field for a detailed description of the Action (OPTIONAL).
   - 47 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |

## ■ Rules

   - Assign rules that determine under what circumstances the Actions will run. Rules of the group (parent) will be inherited by Action (child).

## ■ System (Automatically Populated, except for Effectivity Dates)

   - Date Created: Original record creation date.
   - Date Edited: Date of a record's last edit and save.
   - Created By: User that created the record.
   - Edited By: User who last edited/saved the record.
   - Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - Effective Ending: See Appendix 'Effectivity Dates' for more information.

## ■ Action

   - Action Type: Select an Action type from the dropdown.
   - Transfer: See 'Product Actions: Action Types' for more information.
   - CodeExec: See 'Product Actions: CodeExec' for more information.
   - ResetAction: See 'Product Actions: Action Types' for more information.
   - ShowSet: See 'Product Actions: Action Types' for more information.
   - ShowCPIView: See 'Product Actions: Action Types' for more information.
   - Perform Lookup: See 'Product Actions: Action Types' for more information.

## H EADER L OOKUPS

Overview : Allows for rule based manual and automatic data retrieval from Local or Live Lists.

## ○ Group Editor

## ■ Main

   - Reference Code: Enter a code for tree search reference (REQUIRED).
   - Name: Enter a record name. This is how the Group will be displayed in the tree.
   - Description: Use this field for a detailed description of the Lookup Group.

## ■ Rules

   - Assign rules that determine under what circumstances a manual lookup will function.
   - See 'Product Actions - Action Types - Perform Lookup' for more information on rules and Auto Lookups.

## ■ System (Automatically Populated, except for Effectivity Dates )

   - Date Created: Original record creation date.
   - Date Edited: Date of a record's last edit and save.
   - 48 Oracle NetSuite CPQ User Guide | January 21, 2022 Copyright © 2022, Oracle and/or its affiliates  |
   - Created By: User that created the record.
   - Edited By: User who last edited/saved the record.
   - Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - Effective Ending: See Appendix 'Effectivity Dates' for more information.

## ○ Lookup Editor

## ■ Main

   - Reference Code: Enter a code for tree search reference (REQUIRED).
   - Name: Enter a record name. This is how the Lookup will be displayed in the tree.
   - Description: Use this field for a detailed description of the Lookup.

## ■ Rules

   - Assign rules that determine under what circumstances a lookup will function.
   - See 'Product Actions - Action Types - Perform Lookup' for more information on rules and Auto Lookups.

## ■ System (Automatically Populated, except for Effectivity Dates )

   - Date Created: Original record creation date.
   - Date Edited: Date of a record's last edit and save.
   - Created By: User that created the record.
   - Edited By: User who last edited/saved the record.
   - Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - Effective Ending: See Appendix 'Effectivity Dates' for more information.

## ■ Lookup

   - Select List: Choose a Local or Live list to retrieve data from.
   - Master Field: See individual Lookup Type for more information.
   - Lookup Types

## ○ Manual (rule + button)

   - Displays a popup modal list, in which a user can make a selection by clicking on a row.

## ○ Auto (rule only or run from an Action)

   - List is automatically filtered when rules are met. If only one result is found, data is mapped accordingly. If more than one result is found, the  first record returned is mapped. Can be run from a 'Perform Lookup' Action if required to run in sequence. If this is needed, make the rule on the individual Lookup X(*/*).

## ○ Input (rule + input fill)

   - Selecting this Lookup type will display a field for 'Number of Characters  after which to perform Auto Lookup'. Once that character count has been  met, Auto Lookup filter and map results.

   - Show warning for no results found: Select this checkbox to display a popup when an  Auto Lookup yields no results.

## ● Filters

   - Local Lists: Filters for local lists are written as LIST/Column\_Name[='Query'].
   - Live Lists: Filters for live lists can vary depending on the source of the list.
   - o e.g. A live SQL database list would be filtered by using

WHERE (Column\_Name = 'Query').

   - Column Mapping: Choose which Question or Q/A destination to map the data from each column of the list.

## H EADER V ALIDATIONS

Overview : Allows for rule based messages to be passed along to the user at the Header.

## ○ Group Editor

## ■ Main

   - Reference Code: Enter a code for tree search reference (REQUIRED).
   - Name: Enter a record name. This is how the Group will be displayed in the tree.
   - Description: Use this field for a detailed description of the Validations Group.

## ■ Rules

   - Assign rules that determine under what circumstances the Validations within the group will be displayed.

## ■ System (Automatically Populated, except for Effectivity Dates )

   - Date Created: Original record creation date.
   - Date Edited: Date of a record's last edit and save.
   - Created By: User that created the record.

●

Edited By: User who last edited/saved the record.

   - Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - Effective Ending: See Appendix 'Effectivity Dates' for more information.

## ○ Validation Editor

## ■ Main

   - Reference Code: Enter a code for tree search reference (REQUIRED).
   - Name: Enter a record name. This is how the Validation will be displayed in the tree.
   - Description: Use this field for a detailed description of the Validation.

## ■ Rules

   - Assign rules that determine under what circumstances the individual Validation message will be displayed.

## ■ System (Automatically Populated, except for Effectivity Dates )

   - Date Created: Original record creation date.
   - Date Edited: Date of a record's last edit and save.
   - Created By: User that created the record.
   - Edited By: User who last edited/saved the record.
   - Effective Starting: See Appendix 'Effectivity Dates' for more information.
   - Effective Ending: See Appendix 'Effectivity Dates' for more information.

## ■ Validation

   - Type
   - Incomplete: Validation light becomes yellow, indicating that additional selections must be made in order to complete the configuration.
   - Invalid: Validation light becomes red, indicating that the current configuration contains selections that are not compatible with one another.
   - Note: Validation light becomes green, and displays a message to the user.
   - Message: Enter text to be displayed in the Validation container when the rules for the validation are met.

## 16. APPENDIX

   - Effectivity Dates
   - ■ Overview: Allows for date-restricted use of rules.
   - ■ Effectivity Dates control the start and end dates for a rule. The rule will only be considered 'in effect' between those periods of time. It's important to note that it compares the current order date to the effective start/end dates to determine whether a rule should be used.
   - ■ Start and end date fields are found on the 'System' tab of rules in all 2-level maintenance trees, A note field is also available for each..
   - ■ If no Effectivity Dates are set, the rule will come into play regardless of the order date.
   - ■ If only the Effective End Date is in place, the rule will be considered Effective unless the current order date is passed the Effective End Date.
   - ■ If only the Effective Start Date is in place, the rule will be considered Effective unless the current order

date is before the Effective Start Date.

## ○ Writing Rules

| Control ler   | Function                                                                                                                           | Example       | Translation                                                                                       |
|---------------|------------------------------------------------------------------------------------------------------------------------------------|---------------|---------------------------------------------------------------------------------------------------|
| /             | Separates Questions from their Answers.                                                                                            | A/1           | The Answer to Question A is 1.                                                                    |
| &             | Hard AND: Conditions on both sides of this operator must be true to satisfy this argument.                                         | A/1&B/2       | The Answer to Question A is 1 AND the Answer to Question B is 2.                                  |
| +             | Soft AND: Only to be used between two or more Answers belonging to the same Question.                                              | A/1+2         | The Answers to Question A are 1 AND 2.                                                            |
| #             | Hard OR: Only one of the conditions on either side of the operator must be true to satisfy this argument.                          | A/1#B/2       | The Answer to Question A is 1 OR the Answer to Question B is 2.                                   |
| ,             | Soft OR: Only to be used between two ore more Answers belonging to the same Question.                                              | A/1,2         | The Answer to Question A is 1 OR 2.                                                               |
| ()            | Parenthetical expression. Applies principles of Boolean logic to group together one or more arithmetic statements.                 | (A/1&B/2)#C/3 | The Answer to Question A is 1 AND the Answer to Question B is 2 OR the Answer to Question C is 3. |
| []            | Used to interrogate the value of an Answer that contains variables.                                                                | A/1[='10 ″ ]  | The entered value of Question A, Answer 1 is 10.                                                  |
| X()           | NOT clause. Negative rules statement.                                                                                              | X(A/1)        | The Answer to Question A is NOT 1.                                                                |
| *             | Wildcard. Depending on placement, will be satisfied by any option with the same character(s), either before or after the asterisk. | A/1*          | The Answer code to Question A begins with 1.                                                      |
| %%            | Identifies whether any options for a particular question have been selected.                                                       | A/%%          | Question A is not answered.                                                                       |
| */*           | Common to all.                                                                                                                     | */*           | Always true.                                                                                      |

| [-]     | Range     | A/1[10~20]         | The entered value of Question A, Answer 1 is between 10 and 20.                                      |
|---------|-----------|--------------------|------------------------------------------------------------------------------------------------------|
| [{}=''] | Substring | A/1[{3;4}='BCD E'] | The Answer code to Question A, Answer 1 has a four character value of BCDE, beginning in position 3. |