Columns

The Columns (md_column) view allows you to add, modify, copy, and delete the records in the columns table. The columns table Defines the columns for a database table.

The following special action is available:

  • The Generate Staging Options action works with the Staging Options column defined in the staging tables to generate a JSON structure using selected columns. This structure can be used to set up interfaces in staging. The structure is generated in the format needed by the staging process to implement the staging options functionality. Selecting the columns and then clicking the Generate Staging Options action generates the file which can be accessed from your My Attachments view.

The following list defines every field available in the columns (md_column) table in alphabetical order:

  • Alternate Identifier - an alternate to the column name. Default value set to the value of the Column Name field.

    • One usage of this field is to generate the method names for Java Table Objects and their supporting classes. In the future, may also be used for Web Services SOAP tags.

  • Apply Blank - the following options are available:

    • Yes - defaul(t) indicates that if the column is passed through the staging process and the value is blank, a blank value will be passed into the target table.

    • No - indicates that if the column is passed through the staging process and the value is blank, the column will be skipped and will not pass into the target table.

  • Column Attributes - this field is not maintainable. An expression column that includes a hyperlink to the Column Attributes view. Click the hyperlink to see the attributes of the column and any subsequent columns.

  • Column Name - this field is maintainable in creation mode only, when it appears in the key subview. The unique identifier for a column name within a table, view, or synonym.

    • The name must be the same as the column schema name and may only contain lowercase characters.

    • If the column is derived by extension, the name given to the column should be alphanumeric with underscores. Refer to the Type field description for more details.

  • Created By - displays the name of the user who created the record you are viewing or maintaining. May not be overridden.

  • Created On - displays the date on which the record that you are creating or maintaining was created. May not be overridden. May also represent the creation date of the records you are attempting to retrieve.

  • Database Name - this field is maintainable in creation mode only, when it appears in the key subview. The foreign key to the database entity. Validated against the databases table.

  • Default Value - a default value for data entry. A macro may be entered. For more information on supported macros, refer to the Column Default Value Expression Macros topic.

  • Description - the description for language 1 users.

  • Description Literal Key - the literal key for the description. Validated against the literals table.

  • Domain Name - the column domain. The foreign key to the domain entity. Validated against the domains table.

  • Extra Attributes - a CLOB-type field used to store additional JSON information.

  • Is Available for Criteria - a flag that indicates whether or not the column is available in the criteria section of a view's Search page. The following options are available:

    • Yes - (default) indicates that this column may be used as a criterion field in business views.

    • No - indicates that this column may not be used as a criterion field in business views.

  • Is Available for Results - a flag that indicates whether or not this column is available in the results section of the Search page or on the Details page of a given business view. The following options are available: Yes (default) and No.

    • Yes - (default) indicates that this column is available in search results or on the Details page.

    • No - indicates that this column is not available in search results or on the Details page.

    Note: If this field is set to Yes, the user may enter a value only if the Maintainability Scope field is also set to Maintainable or Maintainable in Creation Mode Only.

  • Is Included in Global View - an expression column that indicates whether or not the column is included in the global comparison tool. The following options are available:

    • Yes - indicates that the column is included in the global comparison tool.

    • No - (default) indicates that the column is not included in the global comparison tool.

  • Is Required - a flag that indicates whether or not the column requires a value. The following options are available:

    • Yes - indicates that this is a mandatory column.

    • No - (default) indicates that the corresponding column does not require a value.

    This setting is used to determine if a user is required to enter a value for a column. Note that the system will remove leading and trailing spaces from user-provided data. Consequently, when the user enters one or more spaces as a value, the system treats it as if a value was not entered. If this column is set to Yes, the user will receive an appropriate error message.

    If a value is provided by the user, the system will update the column using the data provided.

    If a value is not provided by the user, and the column is not required, the system will update the entry based on the data type (see Domain topic). If the data type is Character (Not Null), the system will update the column with a single space. All other data types will be updated with null values.

    When a column has domain values and the column's Is Required flag is set to No, the system automatically adds a blank entry to the list of selections available. The update of the column is based on the data type, as described above.

    The system treats columns defined as data type Boolean Smallint or Boolean Character as required.

    Note: If this is an extension column, set the value of this field to No.

  • Is Version-Controlled - a flag that indicates whether or not a column is version-controlled. The following options are available: Yes (default) and No.

    • Yes - (default) indicates that the column is version-controlled.

    • No - indicates that the column is not version-controlled.

    Non-version-controlled columns are not maintainable; therefore, they are system-maintained.

    Version-controlled columns require the audit columns (e.g. create_user, create_stamp, mod_stamp, mod_counter) to be defined on its table. You will recognize an audit column as one that is labeled as Created By, Created On, Modified By, Modified On, Modification Counter, and so on. If a record update involves at least one version-controlled column, the audit columns will be updated. If the update does not involve any version-controlled columns, the audit columns will not be updated.

    The purpose of non-version-controlled columns is to allow updates to occur to a given record without triggering a stale data error. A stale data error is an error that occurs when two or more users or processes attempt to update the same record simultaneously, with the result that the data from the second user or process errors out. The non-version-controlled column can prevent this from occurring by allowing a single record to be updated simultaneously by a given user as well as some other automatic process, or vice versa, without one affecting the other. Note that given that non-version-controlled columns are system-maintained, they require program changes to implement.

    Non-version-controlled columns are kept accurate by a lock-first policy. The application will lock the record and read the latest database values before updating such columns.

    Notes:

    • Expression- and extension-type columns must be version-controlled.

    • Maintainable columns must be version-controlled.

    • Columns belonging to transactional tables must be version-controlled.

    • Non-version-controlled column updates do not affect audit columns.

    • The audit columns concept should not be confused with the audit history feature, in which, for affected tables, all record changes (create/update/delete) are logged to an audit history table, regardless of whether or not the columns are version-controlled.

  • Key Part Type - this field is not maintainable. An expression column that identifies whether or not the column is part of both the business and primary key, the primary key, the business key, some other candidate key, or neither. The following options are available:

    • None
    • Candidate Key
    • Business Key
    • Primary Key
    • Business and Primary Key

  • Lookup Parent Code Column - this field is not maintainable. The lookup parent code column.

    • This field can be personalized in the search results and on the Details page, but not in the criteria section of the Search page.

  • Lookup Parent Code Column Database - this field is not maintainable. The lookup parent code column database.

    • This field can be personalized in the search results and on the Details page, but not in the criteria section of the Search page.

  • Lookup Parent Code Column Table - this field is not maintainable. The lookup parent code column table.

    • This field can be personalized in the search results and on the Details page, but not in the criteria section of the Search page.

  • Lookup Relationship - this field is not maintainable. The lookup relationship.

    • This field can be personalized in the search results and on the Details page, but not in the criteria section of the Search page.

  • Lookup View - this field is not maintainable. The lookup view.

    • This field can be personalized in the search results and on the Details page, but not in the criteria section of the Search page.

  • Maintainability Scope - a field's maintainability scope determines whether it can be edited or not (either while creating or modifying a record). The following options are available: 0 - Not Maintainable (default), 1 - Maintainable, 2 - Maintainable in Key Section Only, and 3 - Maintainable in Creation Mode Only.

    • Not Maintainable - (default) indicates that maintenance operations may not be performed against this column.

    • Maintainable - indicates that maintenance operations may be performed against this column during record creation and modification.

    • Maintainable in Key Section Only - indicates that this field can be only be maintained while adding a new record to the database, when the field appears in the key subview of the Create or Quick Add page. Once the record is added, the field becomes non-maintainable.

    • Maintainable in Creation Mode Only - indicates that this field can be maintained while adding a new record to the database, regardless of whether the field appears in the key subview of the Create or Quick Add page, or the Main subview of the Details page. Once the record is added, the field becomes non-maintainable.

    Note: If the Is Version-Controlled flag is set to Yes, then this field must be set to Not Maintainable.

  • Modification Counter - this field is not maintainable. The date and time a given record was last modified.

  • Modified By - this field is not maintainable. The user or system process that last modified the record.

  • Modified On - this field is not maintainable. The date on which the record was last modified.

  • More Default Values - this field is not maintainable. An expression column that indicates whether or not there are additional default values defined for this column via the use of database-specific expressions.

    • The column can be rendered as a hyperlink to quickly jump to and view records in the column attributes table.

    • Refer to the Default Value field description for more details on database-specific expressions.

  • Note - optional. User-defined information about the current entity.

    • The information is available to the metadata administrator.

  • Physical Sequence - the column's physical sequence within the table. If this is an extension-type table, sequence the columns logically.

    • Assign the sequence number 9999 to columns of type Extension or Expression.

  • Renderer Code - an attribute used in deciding how to render the field in the user interface. The following options are available:

    • Default - indicates that you wish to let the system delegate to the renderer code based on the value of the Data Type field defined at the domain level.

    • Date - indicates that you wish to render the field as a date. Dates can be configured in any one of a number of formats for a given environment.

    • Timestamp - indicates that you wish to render the field as a timestamp. Timestamp columns are formatted as defined in the ISO 8601 standard (i.e. yyyy-mm-dd hh:mm:ss).

    • Single Line String - indicates that you wish to render the field as a single-line character string. One example of its implementation is to display 4-digit values in a field that displays a given year.

    • Enumeration - indicates that you wish to render the field as an enumeration of domain values. Static codes use this renderer code. Boolean data types too may use it since their domain values can be Yes or No.

    • URL - indicates that you wish to render the field as a URL (Uniform Resource Locator). When the field is rendered, a contextual icon is also displayed. If the user clicks the URL icon, a new browser window is opened using the predefined data as the address.

    • Email - indicates that you wish to render the field as an email address. When the field is rendered, a contextual icon is also displayed. If the user clicks the email icon, a new message window is opened using the predefined data as the address.

    • Multiple Line String - indicates that you wish to render the field as a multiple-line character string.

    • Formatted Numeric - indicates that you wish to render the field as a numeric value with format characteristics (where applicable), thereby including the separator used to identify integer digit groupings and the separator used to identify decimals. Such numbers are generally used for quantities, monetary amounts and any numbers that require thousands separators.

    • Unformatted Numeric - indicates that you wish to render the field as a numeric value, with or without decimals. Such numbers are generally used for sequences, flags, percentages and any numbers that do not require thousands separators.

    • Password - indicates that you wish to render the field as a password. In this case, any text entered by the user is hidden through the use of asterisks or dots.

    • External Image - indicates that you wish to render the field as an external image.

    • External Thumbnail Image - indicates that you wish to render the field as an external thumbnail image.

    • External Thumbnail Document - indicates that you wish to render the field as an external document.

    • Render by Domain - indicates that you wish to render the field using a custom domain renderer.

    • Input Device Renderer - displays a button that allows you to retrieve a value from an external input device connected to the computer.

    • HTML Editor - is reserved for future use.

    • Check Box - renders editable boolean type fields in a view's search results as check boxes. Also known as the One-Click Editing feature, this functionality allows the value of a boolean check box to be modified to its inverse value with just one click. Consequently, if the check box was checked, it will become unchecked. If the check box was unchecked, it will become checked. This rendering is applicable only to boolean and other binary data type fields, such as boolean smallint and boolean character. One-Click Editing is enabled by setting the edit.grid.checkbox.enabled view attribute to 1 via the View Attributes resource.

    • Exposed Enumeration - indicates you wish to render a field to always display the enumerated domain values visually. Use this when there are only a few values to display. A column attribute (i.e. render.html.class.name) enables you to control through a CSS class whether the values are rendered vertically or horizontally. If no class is defined, the enumerations will wrap when the available space is insufficient.

    • Icon Image - indicates that you wish to display a predefined icon image representing the field value. The icon image is saved as a base64-encoded string in a CLOB field that supports a file upload mechanism in the Domain Values resource. The CLOB field also supports pasting in the data URI or a macro referring to an icon used for another domain value.

  • Ruling Scope - an attribute that determines how the column can be used in an action or a condition in the Rules Engine. The following options are available: 1 - Any (default), 2 - None, 3 - Read, and 4 - Write.

    • Any - (default) indicates that the column can be used in any case by the Rules Engine.

    • None - indicates that the column cannot be used by the Rules Engine.

    • Read - indicates that the column can only be used in conditions and as a source column in actions.

    • Write - indicates that the column can only be used in target columns of actions.

    Note: Applicable to physical columns only.

  • Table Name - this field is maintainable in creation mode only, when it appears in the key subview. The foreign key to the table entity. Validated against the tables table.

  • Topic Help - this field is not maintainable. An expression column that provides a hyperlink that allows you view the column entity's help topic file, if one exists.

  • Track Changes - the following options are available:

    • Yes - indicates that this column will keep track of changes made if the affected database and table are also tracking changes.

    • No - (default) indicates that no changes for this column will be tracked. This will override the Track Changes flag at the database and table level.

  • Type - the column type. The following options are available:

    • Physical - (default) indicates that this is a column that is part of the table. When the table type is Table, then this column must be physically located in the database. When the table type is View, then this column is part of the view. When the table type is Extension (i.e. derived by extension), this column is the main part of the table.

    • Extension - indicates that this is a column that is either computed by code (i.e. by a Java class) or is needed to compute another extension column. Such columns are only available at the record level or as parameters to a search operation (i.e. search criteria and/or results and Details).

    • Expression - indicates that this is a logical table column, which is not persisted into the physical database, but is associated with a physical table and for which the value is calculated by a database query (i.e. computed/derived using physical columns within a single table or a table within the table's identifying tree).

    Notes:

    • Expression columns are a superset of external artifact columns. As such, external artifact columns are included as part of expression columns. They are defined as synonyms to the primary key column. For example, the ICE database's country Flag column is defined as an expression column for which the Default Value is set to {column.country.country_code}.

    • The Table Search feature does not support expression columns.

    • Only physical and expression columns may be grouped on and sorted in the Results tab of the Personalization window.

    • The following features do not support extension columns:

      • Macros, as column references must be physical columns;
      • Column expressions, as the latter must reference only physical columns;
      • Relationships, as column references must be physical columns;
      • Rule conditions; and,
      • Table search.

    • The Is Version-Controlled flag must be set to Yes, when this field is set to Extension or Expression.

  • Use Defaults When Copying - this attribute determines, when copying a record, whether the new record should use the default value assigned to the field within the columns table or the value assigned to the record that is being copied.

    Examples of where it is recommended that field values be reset to the default value defined within the database during a copy operation include the following:

    • A customer's credit limit—The value should be reset to zero; therefore, the default value should be set to zero.

    • A user's email address—The address should be cleared out; therefore, the default value should be blank.

    The following options are available:

    • Yes - (default) indicates that the default value defined in the columns table should be used.

    • No - indicates that the value assigned to the record that is being copied should be taken for the operation.

For the functionality of each action (i.e. button) available on this view, refer to the About the Actions topic.