Commerce Transaction Arrays

Overview

Organizations using Oracle CPQ rely heavily on Oracle CPQ Commerce to sell their product offerings to customers and capture the orders. In the quote life cycle, there is a lot of information that needs to be captured at the Transaction and Transaction Line level. Some of this information is repetitive, but dynamically varies from one Transaction to another. This requires customers to maintain a large number of attributes and control their access through rules. Transaction Arrays allow customers to group multiple, scalar attributes using a single array structure to capture repeatable data and reduce administrative overhead. The array attributes can then be instantiated multiple times at runtime without explicitly defining each instance.

ClosedView User Side Transaction UI with a Transaction Array

After a Transaction Array has been created, it can be added to a JET Responsive Layout, and displayed to customers on a Transaction UI page. The following image shows a Transaction Array that has been added to a JET Transaction UI.

User side transaction with a Transaction Array

Note: The Transaction Array Add and Remove buttons are executed as Auto Update functions. As a result, inserted and deleted rows are not saved to the database until a Modify action is invoked (e.g. clicking the Save button).

Selection Checkboxes for Transaction Arrays

Transaction Array seclection checkboxes


Administrators use Commerce attributes to create and manage Transaction Arrays. The Array Set Commerce attribute type was introduced in Release 18D to support Transaction Arrays. The Array Set attribute is created using the Attribute Editor.

ClosedArray Attributes

ClosedArray Control Attribute

ClosedAccess Rules using Transaction Arrays

ClosedIncreased Pagination Limit for JET Transaction Arrays 21B

ClosedSelection Checkboxes for Transaction Arrays 21B

ClosedSort and Filter Transaction Arrays

Administration

ClosedCreate an Array Set and Array Attributes

Perform the following steps to create an array set with array attributes:

  1. Navigate to the Attribute List page.

    Admin > Commerce and Documents > Process Definition > Documents > Attributes

  2. Scroll to the bottom of the page and click Add.

    The Attribute Editor page opens.

  3. Enter the Label and Variable Name of the attribute.

    The Variable Name field populates automatically. Variable names can only contain alpha-numeric characters and underscores. You can change the entry before saving. After saving, the value is read-only.

  4. Select Array Set from the Attribute Type drop-down.
  5. Click Add.

    The Attribute Array Set Editor page opens.

    Attribute Array Set Editor

  6. If required, enter a Description.
  7. If required, select an Array Control Attribute from the Size Attribute drop-down.

    Notes:

    • If Access Rules are used to hide a transaction array, administrators should designate an Array Controller Attribute for the transaction array and set the minimum value to one or more.
    • If there are no Array Control Attributes listed refer to Designate an Attribute as an Array Control Attribute.
  8. Click New Attribute to add an array set attribute.

    The Attribute Editor page opens.

  9. Enter the Label and Variable Name of the attribute.

    The Variable Name field populates automatically. Variable names can only contain alpha-numeric characters and underscores. You can change the entry before saving. After saving, the value is read-only.

  10. The Attribute Editor page opens.

  11. Choose an Attribute Type from the drop-down, then click Add.

    The applicable Attribute Editor page opens.

    ClosedBoolean - Creates a Boolean field consisting of two radio buttons.

    Bollean Attribute Editor

    Define the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. *True Label: If required, modify the label value. The default value is "True".
    4. *False Label: If required, modify the label value. The default value is "False".
    5. Trigger Auto Update: If required, select this option to have the attribute updated by the system without the user invoking an action.

    Validation Fields

    1. Validation: If required, select a validation option:

      • None
      • Must be True
      • Must be False
    2. If translations are required, click Translations and provide translated values for the label and description fields.

      Select Order Entry to provide True and False Label translations.

    3. If required, click Order Entry to change the order of the True and False Labels or provide translated values for the True and False Labels.
    4. If required, select the Default tab to define a default value.

    5. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    6. Select one of the following options:

      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedCurrency - Creates an input field and validations for monetary inputs.

    Currency Attribute Editor

    Define the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. Trigger Auto Update: If required, select this option to have the attribute updated by the system without the user invoking an action.

    4. Decimal Places: If required, choose how many decimal places are allowed for supported currency types.

    Validation Fields

    1. Maximum Field Length: If required, define the maximum number of characters that can be input into the field. The valid range for this value is 1 through 255.

    2. Validation: If required, select one of the following options:

      • Check Currency
      • Check Currency in Range
      • Check Currency for Maximum
      • Check Currency for Minimum
      • Check Currency for Non-negative
    3. Maximum Value: If required, define the maximum monetary value that can be input into the currency attribute.

      This field must be specified if Check Currency in Range or Check Currency for Maximum validation is selected.
    4. Minimum Value: If required, define the minimum monetary value that can be input into the currency attribute. The minimum value must be less than the maximum value.

      This field must be specified if Check Currency in Range or Check Currency for Minimum validation is selected.
    5. If translations are required, click Translations and provide translated values for the label and description fields.

    6. If required, select the Default tab to define a default value.

    7. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    8. Select one of the following options:
      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedDate - Creates an input field and validations for date inputs.

    Date Attribute Editor

    Define the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. Includes Time: If required, select this checkbox to include a timestamp is with the date.

    Validation Fields

    1. Maximum Field Length: If required, define the maximum number of characters that can be input into the field. The valid range for this value is 1 through 255.

    2. Validation: If required, select a validation option:

      • None
      • Check for Future Date
      • Check Date in Range
    3. Start Date: If required, define the start date value that can be input into the date attribute.

      This field must be specified if Check Date in Range validation is selected.
    4. End Date: If required, define the end date value that can be input into the date attribute.

      This field must be specified if Check Date in Range validation is selected.

    5. If translations are required, click Translations and provide translated values for the label and description fields.

      Select Order Entry to provide True and False Label translations.

    6. If required, click Order Entry to change the order of the True and False Labels or provide translated values for the True and False Labels.
    7. If required, select the Default tab to define a default value.

    8. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    9. Select one of the following options:

      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedFloat - Creates an input field and validations for floating point numbers.

    Float Attribute Editor

    Define the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. Trigger Auto Update: If required, select this option to have the attribute updated by the system without the user invoking an action.

    4. Decimal Places: If required, choose how many decimal places are allowed for supported currency types. The maximum number of decimal places that can be supported is 16.

    Validation Fields

    1. Maximum Field Length: If required, define the maximum number of characters that can be input into the field. The valid range for this value is 1 through 255.

    2. Validation: If required, select one of the following options:

      • Check Numeric
      • Check Positive
      • Check in Range
      • Check Positive or Zero
    3. Maximum Value: If required, define the maximum value that can be input into the float attribute.

      This field must be specified if Check in Range validation is selected.

    4. Minimum Value: If required, define the minimum value that can be input into the float attribute. The minimum value must be less than the maximum value.

      This field must be specified if Check in Range validation is selected.

    5. If translations are required, click Translations and provide translated values for the label and description fields.

    6. If required, select the Default tab to define a default value.

    7. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    8. Select one of the following options:
      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedInteger - Creates an input field and validations for integer numbers.

    Integer Attribute Editor

    Define the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. Trigger Auto Update: If required, select this option to have the attribute updated by the system without the user invoking an action.

    Validation Fields

    1. Maximum Field Length: If required, define the maximum number of characters that can be input into the field. The valid range for this value is 1 through 255.

    2. Validation: If required, select one of the following options:

      • Check Numeric
      • Check Positive
      • Check in Range
      • Check Positive or Zero
    3. Maximum Value: If required, define the maximum value that can be input into the integer attribute.

      This field must be specified if Check in Range validation is selected.

    4. Minimum Value: If required, define the minimum value that can be input into the integer attribute. The minimum value must be less than the maximum value.

      This field must be specified if Check in Range validation is selected.

    5. If translations are required, click Translations and provide translated values for the label and description fields.

    6. If required, select the Default tab to define a default value.

    7. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    8. Select one of the following options:
      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedLanguage - Creates a single-select menu for Language Attribute.

    Language Attribute Editor

    Define the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. Trigger Auto Update: If required, select this option to have the attribute updated by the system without the user invoking an action.

    4. Menu Population: If required, select which languages are listed in the language menu.

    1. If translations are required, click Translations and provide translated values for the label and description fields.

    2. If required, select the Default tab to define a default value.

    3. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    4. Select one of the following options:
      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedMenu - Creates a menu field which may be multi-select or single select.

    Menu Attribute Editor

    Define the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. Menu Type: Specify if the menu attribute is a Single Select or Multi-select Menu.
      The default value is Single Select Menu.

    4. Trigger Auto Update: If required, select this option to have the attribute updated by the system without the user invoking an action.

    Menu Population

    This section is used to create options for the menu attribute.

    1. To add a menu item, enter the item name in the Menu Entry field, and click Add.
    2. To remove a menu item, highlight the item name, and click Delete.
    3. Menu items appear in the order they are listed in the menu entries list box.

      To reorder the list, highlight an item, and click the corresponding Up Up button or Down Down button button.

      The Entry Manager can also be used to manage menu items.

    4. If translations are required, click Translations and provide translated values for the label and description fields.

    5. If required, click Order Entry to change the order of the menu items and provide translated values for the menu items.
    6. If required, select the Default tab to define a default value.

    7. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    8. Select one of the following options:
      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedText - Creates an input field for short strings.

    Text Attribute Editor

    Define the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.

    Validation Fields

    1. Maximum Field Length: If required, define the maximum number of characters that can be input into the field. The valid range for this value is 1 through 255.

    2. If translations are required, click Translations and provide translated values for the label and description fields.

    3. If required, select the Default tab to define a default value.

    4. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    5. Select one of the following options:

      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedText Area - Creates a text area field for strings that are greater than 255 characters in length.

    Text Area Attribute Editor

    Define the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. If translations are required, click Translations and provide translated values for the label and description fields.

    4. If required, select the Default tab to define a default value.

    5. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    6. Select one of the following options:

      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

  12. To re-order the array set attributes, update the values in the Order column.
  13. To delete attributes, check the Select option next to the applicable attribute, and then click Delete Attribute.
  14. If translations are required, click Translations and provide translated values for the label and description fields.
  15. After all of the desired attributes have been created, select one of the following options:

    • Click Apply to save changes and remain on the Attribute Array Set Editor page
    • Click Update to save changes and return to the Attribute List page
    • Click Back to return to the Attribute List page without saving changes

ClosedDesignate an Attribute as an Array Control Attribute

Perform the following steps to designate an array control attribute:

  1. Navigate to the Attribute List page.

    Admin > Commerce and Documents > Process Definition > Documents > Attributes

    The Attribute List page opens.

  2. Select an integer or menu attribute.

    The applicable Attribute Editor page opens.

    Array Control Attribute option for Integer Attribute

  3. Select the Array Control Attribute option.

    Changing to Array Control Attribute introduces range validation, which might cause legacy issues.

  4. After all of the desired attributes have been created, select one of the following options:

    • Click Apply to save changes and remain on the Attribute Array Set Editor page
    • Click Update to save changes and return to the Attribute List page
    • Click Back to return to the Attribute List page without saving changes

Notes:

  • When an Array Control Attribute is an Integer attribute, the validation of attribute is changed to Check Range, with the minimum set to 0. The minimum and maximum values can be modified.
  • When an Array Control Attribute is a Menu attribute, it must be Single-Select Menu.
    The variable names of the menu items must be non-negative integers.
  • The add and delete actions are dynamically enabled and disabled as described below:
    • When the Array Control Attribute is set to read-only or hidden by workflow steps, Add and Delete buttons are disabled.
    • When an array set reaches the maximum size, add is disabled.
    • When an array set reaches the minimum size, delete is disabled.
    • When the Array Control Attribute is a Menu attribute, add and delete buttons are disabled.
    • When the Array Control Attribute controls more than one array set, add and delete buttons are disabled.

ClosedEdit Array Set or Array Set Attribute

Perform the following steps to edit an array set:

  1. Navigate to the Attribute List page.

    Admin > Commerce and Documents > Process Definition > Documents > Attributes

  2. Click on the name of the applicable array set attribute.

    The Attribute Array Set Editor page opens.

    Attribute Array Set Editor with Array Attributes

  3. If required, edit the Name.
  4. If required, edit the Description.
  5. If required, select an Array Control Attribute from the Size Attribute drop-down.

    If no Array Control Attributes are listed refer to Designate an Attribute as an Array Control Attribute.

  6. To edit an attribute, click on the name of the applicable attribute.

    The applicable Attribute Editor page opens.

    ClosedBoolean Attribute

    Bollean Attribute Editor

    If required, edit the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. *True Label: If required, modify the label value. The default value is "True".
    4. *False Label: If required, modify the label value. The default value is "False".
    5. Trigger Auto Update: If required, select this option to have the attribute updated by the system without the user invoking an action.

    Validation Fields

    1. Validation: If required, select a validation option:

      • None
      • Must be True
      • Must be False
    2. If translations are required, click Translations and provide translated values for the label and description fields.

      Select Order Entry to provide True and False Label translations.

    3. If required, click Order Entry to change the order of the True and False Labels or provide translated values for the True and False Labels.
    4. If required, select the Default tab to define a default value.

    5. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    6. Select one of the following options:

      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedCurrency Attribute

    Currency Attribute Editor

    If required, edit the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. Trigger Auto Update: If required, select this option to have the attribute updated by the system without the user invoking an action.

    4. Decimal Places: If required, choose how many decimal places are allowed for supported currency types.

    Validation Fields

    1. Maximum Field Length: If required, define the maximum number of characters that can be input into the field. The valid range for this value is 1 through 255.

    2. Validation: If required, select one of the following options:

      • Check Currency
      • Check Currency in Range
      • Check Currency for Maximum
      • Check Currency for Minimum
      • Check Currency for Non-negative
    3. Maximum Value: If required, define the maximum monetary value that can be input into the currency attribute.

      This field must be specified if Check Currency in Range or Check Currency for Maximum validation is selected.
    4. Minimum Value: If required, define the minimum monetary value that can be input into the currency attribute. The minimum value must be less than the maximum value.

      This field must be specified if Check Currency in Range or Check Currency for Minimum validation is selected.
    5. If translations are required, click Translations and provide translated values for the label and description fields.

    6. If required, select the Default tab to define a default value.

    7. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    8. Select one of the following options:
      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedDate Attribute

    Date Attribute Editor

    If required, edit the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. Includes Time: If required, select this checkbox to include a timestamp is with the date.

    Validation Fields

    1. Maximum Field Length: If required, define the maximum number of characters that can be input into the field. The valid range for this value is 1 through 255.

    2. Validation: If required, select a validation option:

      • None
      • Check for Future Date
      • Check Date in Range
    3. Start Date: If required, define the start date value that can be input into the date attribute.

      This field must be specified if Check Date in Range validation is selected.
    4. End Date: If required, define the end date value that can be input into the date attribute.

      This field must be specified if Check Date in Range validation is selected.

    5. If translations are required, click Translations and provide translated values for the label and description fields.

      Select Order Entry to provide True and False Label translations.

    6. If required, click Order Entry to change the order of the True and False Labels or provide translated values for the True and False Labels.
    7. If required, select the Default tab to define a default value.

    8. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    9. Select one of the following options:

      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedFloat Attribute

    Float Attribute Editor

    If required, edit the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. Trigger Auto Update: If required, select this option to have the attribute updated by the system without the user invoking an action.

    4. Decimal Places: If required, choose how many decimal places are allowed for supported currency types. The maximum number of decimal places that can be supported is 16.

    Validation Fields

    1. Maximum Field Length: If required, define the maximum number of characters that can be input into the field. The valid range for this value is 1 through 255.

    2. Validation: If required, select one of the following options:

      • Check Numeric
      • Check Positive
      • Check in Range
      • Check Positive or Zero
    3. Maximum Value: If required, define the maximum value that can be input into the float attribute.

      This field must be specified if Check in Range validation is selected.

    4. Minimum Value: If required, define the minimum value that can be input into the float attribute. The minimum value must be less than the maximum value.

      This field must be specified if Check in Range validation is selected.

    5. If translations are required, click Translations and provide translated values for the label and description fields.

    6. If required, select the Default tab to define a default value.

    7. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    8. Select one of the following options:
      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedInteger Attribute

    Integer Attribute Editor

    If required, edit the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. Trigger Auto Update: If required, select this option to have the attribute updated by the system without the user invoking an action.

    Validation Fields

    1. Maximum Field Length: If required, define the maximum number of characters that can be input into the field. The valid range for this value is 1 through 255.

    2. Validation: If required, select one of the following options:

      • Check Numeric
      • Check Positive
      • Check in Range
      • Check Positive or Zero
    3. Maximum Value: If required, define the maximum value that can be input into the integer attribute.

      This field must be specified if Check in Range validation is selected.

    4. Minimum Value: If required, define the minimum value that can be input into the integer attribute. The minimum value must be less than the maximum value.

      This field must be specified if Check in Range validation is selected.

    5. If translations are required, click Translations and provide translated values for the label and description fields.

    6. If required, select the Default tab to define a default value.

    7. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    8. Select one of the following options:
      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedLanguage Attribute

    Language Attribute Editor

    If required, edit the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. Trigger Auto Update: If required, select this option to have the attribute updated by the system without the user invoking an action.

    4. Menu Population: If required, select which languages are listed in the language menu.

    1. If translations are required, click Translations and provide translated values for the label and description fields.

    2. If required, select the Default tab to define a default value.

    3. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    4. Select one of the following options:
      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedMenu Attribute

    Menu Attribute Editor

    If required, edit the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. Menu Type: Specify if the menu attribute is a Single Select or Multi-select Menu.
      The default value is Single Select Menu.

    4. Trigger Auto Update: If required, select this option to have the attribute updated by the system without the user invoking an action.

    Menu Population

    This section is used to create options for the menu attribute.

    1. To add a menu item, enter the item name in the Menu Entry field, and click Add.
    2. To remove a menu item, highlight the item name, and click Delete.
    3. Menu items appear in the order they are listed in the menu entries list box.

      To reorder the list, highlight an item, and click the corresponding Up Up button or Down Down button button.

      The Entry Manager can also be used to manage menu items.

    4. If translations are required, click Translations and provide translated values for the label and description fields.

    5. If required, click Order Entry to change the order of the menu items and provide translated values for the menu items.
    6. If required, select the Default tab to define a default value.

    7. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    8. Select one of the following options:
      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedText Attribute

    Text Attribute Editor

    If required, edit the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.

    Validation Fields

    1. Maximum Field Length: If required, define the maximum number of characters that can be input into the field. The valid range for this value is 1 through 255.

    2. If translations are required, click Translations and provide translated values for the label and description fields.

    3. If required, select the Default tab to define a default value.

    4. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    5. Select one of the following options:

      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

    ClosedText Area Attribute

    Text Area Attribute Editor

    If required, edit the following fields:

    1. Required: Select this option to require the user to select an option before proceeding.
    2. Description: If required, enter a brief description.
    3. If translations are required, click Translations and provide translated values for the label and description fields.

    4. If required, select the Default tab to define a default value.

    5. If required, select the Document Views tab to define attribute access.

      For more information, refer to Accessing, Hiding, and Reading Attributes.

    6. Select one of the following options:

      • Click Apply to save changes and remain on the Attribute Editor page
      • Click Update to save changes and return to the Attribute Array Set Editor page
      • Click Update and New to define another attribute for the array set
      • Click Back to return to the Attribute Array Set Editor page without saving changes

  7. To re-order the array set attributes, update the values in the Order column.
  8. To delete attributes, check the Select option next to the applicable attribute, and then click Delete Attribute.
  9. If translations are required, click Translations and provide translated values for the label and description fields.
  10. After all of the desired attributes have been created, select one of the following options:

    • Click Apply to save changes and remain on the Attribute Array Set Editor page
    • Click Update to save changes and return to the Attribute List page
    • Click Back to return to the Attribute List page without saving changes
  1. To re-order the array set attributes, update the values in the Order column.
  2. To delete attributes, check the Select option next to the applicable attribute, and then click Delete Attribute.
  3. If translations are required, click Translations and provide translated values for the label and description fields.
  4. Select one of the following options:

    • Click Apply to save changes and remain on the Attribute Array Set Editor page
    • Click Update to save changes and return to the Attribute List page
    • Click Back to return to the Attribute List page without saving changes

ClosedDelete Array Set

Perform the following steps to delete an array set:

  1. Navigate to the Attribute List page.

    Admin > Commerce and Documents > Process Definition > Documents > Attributes

    The Attribute List page opens.

  2. Check the Select option next to the applicable array set attribute.
  3. Click Delete.

ClosedDelete Array Set Attribute

Perform the following steps to delete an array set:

  1. Navigate to the Attribute List page.

    Admin > Commerce and Documents > Process Definition > Documents > Attributes

    The Attribute List page opens.

  2. Click on the name of the applicable array set attribute.

  3. The Attribute Array Set Editor page opens.

  4. Check the Select option next to the applicable attribute.
  5. Click Delete Attribute.
  6. After all of the desired attributes have been delete, select one of the following options:

    • Click Apply to save changes and remain on the Attribute Array Set Editor page
    • Click Update to save changes and return to the Attribute List page

ClosedPopulate a Commerce Transaction Array from a Data Table

The following example describes how to populate a Commerce transaction array from an Oracle CPQ data table.
  1. Create a data table (e.g. Shipping_Options Data Table)

    This table contains three columns; Service_Level (String), Delivery_Timeframe (String), and Shipping_Cost (Float).

    Shipping Options Data Table Columns

    The table is populated with different shipping service levels:

    Shipping Options Data Table

    For more detailed instructions, refer to Data Table Maintenance.

  2. Create a transaction array (e.g. Shipping Options Transaction Array)

    The Shipping Options (shippingOptions) Commerce Array Set Attribute contains three array attributes: Service Level (serviceLevel), Delivery Timeframe (deliveryTimeframe), and Shipping Cost (shippingCost). These attributes correspond to the columns in the Data Table.

    Attribute Array Set Editor

    For more detailed instructions, refer to Create an Array Set and Array Attributes.

  3. Create a Commerce Modify type action to populate the transaction array (e.g. populateShippingOptions)

    Define Advanced Modify - Before Formulas option

    This example uses an Advanced Modify - Before Formula to define a function for the action.

    1. Select an attribute (e.g.Variable Name for (Transaction) tab > _transaction_document_number)
    2. Enter the BML script into the BML Editor and click Save.

      ClosedView Sample BML Script

      //  Define the String parameter that will be returned by the function.
      returnString = "";
      
      //  Define a JSON Array to hold the extracted data from the Data Table.
      shippingMethods = jsonArray();
      
      //  Perform BMQL Query of the "Shipping Options" Data Table to gather all of data rows.
      optionList = bmql("select Service_Level, Delivery_Timeframe, Shipping_Cost from Shipping_Options");
      
      //  Perform a loop over the returned Data Table rows.
      for option in optionList {
      //      Create a JSON string containing the data from the rows of the Data Table.	
              optionJson = json();
      //      Put into the optionJson string the Key:Value pairs for each column in the table.
      	jsonput(optionJson,"serviceLevel",get(option,"Service_Level"));
      	jsonput(optionJson,"deliveryTimeframe",get(option,"Delivery_Timeframe"));
      	jsonput(optionJson,"shippingCost",get(option,"Shipping_Cost"));
      
      //      Append the optionJson string to the shippingMethods JSON Array object.  Each iteration adds one row to the JSON Array.	
      	jsonarrayappend(shippingMethods, optionJson);	
      }
      
      //  Build the returnString, adding the transaction_document_number (which is required), the Array Set Commerce attribute (shippingOptions)
      //  and the JSON Reference ID of the shippingMethods JSON Array.
      returnString = returnString + _transaction_document_number + "~shippingOptions~" + jsonarrayrefid(shippingMethods) + "|";
      	
      return returnString;

      Enter Script into BML Editor

    For more detailed instructions, refer to Commerce Actions and Commerce Function Editor.

  4. Add transaction array to JET Responsive Layout
Add Transaction Array to Transaction layout

For more detailed instructions, refer to JET Responsive Editor.

The following image shows the resulting transaction array and action button on the JET Transaction UI.

User side Transaction Array


ClosedBulk Data Services and Migration Support for Array Sets

The Migration Center is the user interface where all migration takes place within CPQ. Array Attribute Set(s) displays as a granular item under the applicable Commerce document. Administrators can migrate all or individual array attribute sets in a migration package using the Migration Center functionality available in prior releases.

ClosedView Example Image

ClosedMigrating Document Designer Documents with Transaction Arrays


ClosedCommerce Steps Administration for Transaction Arrays

Commerce Steps are used to define states and permissions for array attributes. Administrators navigate to Admin > Commerce and Documents > Process Definition > Steps to access Commerce Steps. Array attributes are listed on the Attributes tab under the Document Views tab for the applicable document. Array attribute permissions can be set to Read/Write, Read-Only, or Hidden. The attribute name is displayed as "{array set label}: {array attribute label}" (e.g. Labor Services: Description).

ommerce Steps Administration for Transaction Arrays

For more information, refer to Workflow Steps.

ClosedXML Integration Support for Transaction Arrays

The bulk of back-end integration is accomplished by exchanging XML data between Oracle CPQ and other third party systems. Oracle CPQ Release supports array set data for outbound XML integrations. XML Integration is the mechanism that sends Transaction XML to a third party server when a transition rule is fired.

The following sample displays an XML fragment for the "feeArraySet"

<feeArraySet maxRowNum="4">
    <_array_set_row _row_number="1">
        <feeType>
            <![CDATA[ water ]]>
        </feeType>
        <feeAmount>
          <![CDATA[ 100.0 ]]>
        </feeAmount>
    </_array_set_row>
    <_array_set_row _row_number="3">
        <feeType>
            <![CDATA[ gas ]]>
        </feeType>
        <feeAmount>
          <![CDATA[ 200.0 ]]>
        </feeAmount>
    </_array_set_row>
</feeArraySet>

Oracle CPQ Release 18D does not supports inbound integration for Transaction Arrays.


Notes

Notes:

  • The default row limit for transaction arrays is 500 rows. To increase the default row size, open a ticket on My Oracle Support.

  • Error messages for invalid values are not displayed when Advanced Validation is set to Save without Validating for actions that modify a transaction array or line item attributes.

Custom Variable Name Conventions

In Oracle CPQ 23D, CPQ adopted Oracle CX Sales variable naming conventions for custom items. When an administrator creates a new custom Commerce item, the "_c" suffix is appended to the variable name. The new naming convention for custom variable names provides more consistency for integrations with Oracle Sales.

Beginning in Oracle CPQ 24C, customers can submit a service request to disable the "_c" suffix on variable names for custom Commerce entities (Actions, Analytics, Attributes, Data Columns, Integrations, Library Functions, Rules, Steps, etc.). The "_c" suffix is enabled by default for standard and legacy Commerce processes.

  • Customers can submit a Service Request (SR) on My Oracle Support to disable the "_c" suffix on variable names for custom Commerce entities
  • When the "_c" is disabled, the "_c" variable name suffix will not be required for newly created custom Commerce entities.
  • Disabling the "_c" variable name suffix for custom Commerce entities will not change existing variable names.
  • The "_c" suffix setting will not impact existing variable names when cloning a Commerce process or migrating Commerce items. Target variable names will be the same as the variable names from the source Commerce process.

Edits are not visible until the process is deployed (or redeployed).

Related Topics

For additional support information, refer to the following topics:

Related Topics Link IconSee Also