Setting Up Data Container Types in Workbench

This topic provides basic information on how to set up data containers in STEP Workbench. Once setup is complete, users can begin working with data containers in workbench and start configuring Web UI screens and components.

This topic includes the following information:

  • Prerequisites
  • Adding Data Container Types
  • Configuring Data Container Types
  • Deleting Data Container Types

Prerequisites

Before setup begins, users should be familiar with basic information regarding using data containers and associated limitations. This information is available in the Data Containers topic in System Setup documentation here.

To create a new data container object type and work with related attributes, you must have all the proper privileges.

The following setup actions are related to data containers:

  1. Maintain Data Container Type
  2. View Data Container Type

The following user actions are related to data containers:

  1. Approve data containers
  2. Create data containers
  3. Delete data containers
  4. Modify metadata for data container
  5. View data containers
  6. View metadata for data containers

For more information, refer to the Action Sets section of the System Setup documentation here.

Adding Data Container Types

New data container types, distinguished via the icon, are created in workbench within System Setup > Attribute Groups. Insert data containers into new or existing attribute groups using the same functionality used to create new attribute groups and new attributes. For more information, refer to the Attributes (here) and Attribute Groups (here) topics.

  1. In System Setup, right-click the attribute group that will hold the data container type, and select New Data Container Type, as shown below.

  1. Enter the data container type ID and Name, and click Create.

Note: Data Containers IDs are global and unique across objects.

The new data container type editor displays four tabs: Data Container Type, References, Validity, and Log. Each one is described in the Data Container Tabs section later in this topic.

Configuring Data Container Types

Data container types can contain description attributes and references, and these attributes / references can be used in multiple data container types. Also, a data container can reside in multiple attribute groups.

  1. In System Setup, select the Data Container Type and click the Validity tab to set valid object types. A data container can only be valid for entity or product object types, not both.

Note: To change the object type validity of a data container, you must first clear all current settings before choosing the other object type. If existing values are found on a data container type when attempting to remove the validity of an attribute, the user is asked to confirm or reject the deletion of existing values.

  • Open the Valid for Entity Types flipper and select the valid types of entities. Selecting an entity object type makes the Inheritance, Restriction, and Mandatory product-related parameters on the Data Container Type editor tab read only. If those parameters have already been modified, they must be restored to the default settings before the validity can be modified.
  • Open the Valid for Product Types flipper and select the valid types of products. The Inheritance, Restriction, and Mandatory product-related parameters on the Data Container Type editor tab can now be edited.

Note: If a data container is made invalid for an object type, and it had data container instances of that type, those instances are orphaned by a background process. The values are still displayed in the Tree, but only the delete functionality is available while the object type is not valid.

  1. Select the Data Container Type tab, and on the Description flipper, set the following parameters:

  • For ID Pattern, which is required to add, edit, and delete the data container in Web UI, enter a pattern. If nothing is entered, users are able to determine their own data container ID when adding them to an object.
  • For Allow multiple data containers, the default setting of 'No' means only one of this data container type can exist on the same object in the tree and the individual data container attributes are displayed as rows. Change this parameter to 'Yes' if two or more container instances should be allowed on the same object in the tree and to display individual data container attributes as columns

When set to 'Yes', if multiple instances of the data container type exists on a single object, reverting to 'No' requires some data clean up, as defined in the Changing 'Allow multiple data containers' back to 'No' section below.

Once set, although this parameter can be modified, doing so requires special handling. For Oracle databases, this action requires single-update mode (SUM), as defined in the Single-Update Mode topic. For Cassandra databases, this action uses Lock-free Schema Change (LFSC) functionality, as defined in the Lock-free Schema Change topic.

  • For Inheritance, on product data containers only, the default setting of 'None' means values of the valid attributes are not inherited. Change this parameter to 'Inherited' if values should be inherited as they would be on a standard specification attribute. For entity data containers, this parameter is read only.
  • For Restriction, for product data containers only, the default setting of 'None' means the data container can be used at all levels of the hierarchy. Change this parameter to 'Validity restricted to hierarchies' if the data container usage should be limited to specified nodes in the hierarchy, as determined by the References tab. For entity data containers, this parameter is read only.
  • For Mandatory, for product data containers only, the default setting of 'No' means the data container attribute values can be left blank. Change this parameter to 'Yes' if the data container attribute values are required. For entity data containers, this parameter is read only.
  1. On the In Attribute Groups flipper, click the Add Attribute Group link to display the data container type in one or more attribute groups.

  1. On the Valid Attributes flipper, click the Add Attribute link to add attributes to the data container type. Individual attributes must be selected (no attribute groups); however, multiple attributes can be selected and added at the same time.

Note: Formatting of attributes is not supported. If formatting is used, the attributes are displayed as read only in the Web UI and, in the case of multi-valued data containers, locked for editing. Calculated attributes can be used. And, if using inline references in attribute values, the received value is displayed as read only.

Alternatively, attributes can be added to a data container from the attribute's 'Validity' tab, under the 'Valid for Data Container Types' flipper.

Once validity is set for an entity object type, although this parameter can be modified, doing so requires special handling. For Oracle databases, this action requires single-update mode (SUM), as defined in the Single-Update Mode topic. For Cassandra databases, this action uses Lock-free Schema Change (LFSC) functionality, as defined in the Lock-free Schema Change topic.

  1. If product object types are valid, and the Restrictions parameter on the Data Container Type editor tab is set to 'Validity restricted to hierarchies', then click the References tab, and set the node in the hierarchy where the data container can be used.

  • Click the 'Link to Classifications' or 'Link to Product' links to define classification or product nodes for the data container.
  1. Select the Log tab to display the history of changes made to the data container. Users may download this record via the 'Download...' button.

Refer to the Adding and Maintaining Data Container Instances topic to work with data containers in the Tree here.

Adding references to a data container type

To add a reference to another object on a data container, a new reference type must be created in System Setup. Specifically, when configuring the new reference type, select the relevant data container as a valid source type.

For more information on creating reference types, refer to the Creating a Reference Type section of the System Setup documentation here. For more detailed information on configuring references on data containers, refer to the References on Data Containers section of the System Setup documentation here.

Changing 'Allow multiple data containers' back to 'No'

If the 'Allow multiple data containers' parameter is set to 'Yes,' and two or more container instances exist for any object, it is no longer possible to set it to 'No' until all the objects include a maximum of one instance.

To identify objects that have more than one instance of a data container type:

  1. In System Setup, select the data container type, change the 'Allow multiple data containers' parameter from 'Yes' to 'No'.
  2. If multiple instances exist on any single object, a dialog similar to the following is displayed for an optional auto search.

  1. Choose an option:
  • Click Cancel to close the dialog and leave the data container set to allow multiple instances.
  • Click OK to display a Search tab with the relevant criteria is already supplied.

For more information on executing searches, refer to the Advanced Search section of the Getting Started documentation here.

  1. To search for multiple instances, click the Search button to display the results.
  2. Review the objects with multiple instances of the same data container type and delete as necessary to leave a maximum of one for all reported objects.
  3. Back in System Setup, select the data container type again, change the 'Allow multiple data containers' parameter from 'Yes' to 'No'. This indicates it is a single-valued object type.

Deleting Data Container Types

Data container types can be force deleted, even if they have visible or deleted instances. Deleting a data container type starts a background process that also purges any associated data container instances.

Data Container Keys

Data containers can be identified and modified by using key definitions, which can be created using a combination of attributes and/or references. For more information, refer to the Data Container Keys topic in the Data Containers documentation here.