specs/models/M_TABLE_RECORD_FIELD

Table Record Field

A Table Field describes a single column of a table record (see Table Record for details).

Field Properties

Table IDFields are tied to a table. This is implicit in the UI.
Unique NameA unique name for a column that cannot change after creation. This is not visible in the UI, but is relevant when accessing the Tulip API.
LabelThe display name of the field. This is shown in the UI. This property can be changed after a field is created.
DescriptionA short description of the field which can be added by the user.
OrderThe order fields are displayed. This is implicit in the UI.
Field typeEntries in this field must be of this data type. See Field Types below for a full list. Cannot be changed after the field is created.
HiddenWhen archiving fields from a table, they are hidden in the UI. Archived fields can be viewed or restored, along with the corresponding data.
UniqueOnly true for the ID field. Displays an error to the user if they ever tries to create a record with a duplicate value in this field.
Table Link (Linked Record field type only)The table that the Linked Record field is linked to

System Fields

All tables have a unique ID field which is added automatically and cannot be edited. The unique ID for a give Table Record is provide by the user and:

  • must be unique across all records in this table
  • is always data type "Text"
  • must be specified when adding a record, and cannot be edited after the record is created.

All tables also have two metadata fields “Date Created” and “Date Updated”. These are datetime fields that cannot be directly edited by the user, only viewed. They track when the record was created and last updated respectively. By default, these fields are not visible. To see them, a user needs to toggle “View Metadata Fields”.

User Specified Fields

Users can specify up to 197 custom fields. Each field will have a user specified data type, described below. A record may or may not have an entry for any given field.

  • Can be created and archived from the UI.
  • Users specify the label, type, and description for their field. Label and description can be edited after the field is created, but type cannot.
  • All user specified fields are optional, as in a record can either have a value for a given field or leave it blank.
  • All user specified fields are not unique, so multiple records in the same table can have the same value for a given user specified field.
  • Archived fields can be restored.
  • A table can have no more than 197 user specified fields (200 total column max).

Field Types

TypeDescription
TextSometimes known as a string, this corresponds to the “text” type in postgres and can include any series of characters. The only restriction is that it must be less than 1 Gb as enforced by Postgres.
NumberOtherwise known as a float, corresponds to a Postgres “double precision”. It can represent any real number with 15 decimal digits of precision.
BooleanA true of false value. Commonly displayed as a localized “Yes” or “No” in the UI.
IntegerA number without a decimal point. Uses the Postgres “bigint” type. It can represent an integer between -9,223,372,036,854,775,808 and 9,223,372,036,854,775,807
IntervalAn interval of time. Internally, we represent this as a decimal number of seconds, though we often display with an hour:minutes:seconds.milliseconds format.
ImageA URL of an image. Users can manually enter a URL or upload the image to our storage.
UserA string corresponding to the ID of a user within this Tulip instance
DatetimeA Postgres “timestamp with time zone”, this is a specific time on a specific day. By convention, a day with time midnight is often used to refer to whole days.
ColorAn RGB color corresponding to the standard CSS representation for that color. How To Specify Color Value
Linked RecordA link to the ID field of another table with one of four types of mappings: One to One, One to Many, Many to One, Many to Many
VideoA URL of a video. Users can manually enter a URL or upload the video to our storage.
MachineA link to a single [Machine](/models/M_MACH) within Tulip.

Additional Information on Linked Record Fields

Linked Record fields provide additional options within Triggers. The following options are available from the 'Table Linked Record Field' menu option within the 'If, If/Else' clause of a Trigger:

NameDescription
Is Linked ToReturns true if a placeholder field is linked to another placeholder
Is Not Linked ToReturns true if there are no links between two placeholders
Has LinksReturns true if a placeholder field has any links
Has no LinksReturns true if a placeholder field does not have any links

Tests

IDName
QA-T84Table Management : 05 - Add columns to a table
QA-T85Table Management : 06 - Edit a table column
QA-T86Table Management : 07 - Edit a table column description
QA-T87Table Management : 08 - Delete a table column
QA-T88Table Management : 09 - Restore a deleted table column
QA-T89Table Management : 10 - Reorder table columns
QA-T93Table Management : 13 - Sort table records by column in table view
QA-T245Embedded Tables : 05 - Handle deleted fields in embedded tables
QA-T464Tables CSV Import : 01 - Import to table
QA-T467Tables CSV Import : 03 - Import from export
QA-T702Table Management : 05 / Table Columns must be named
QA-T705Table Management : 06 / Table Columns labels cannot be blank and ID cannot be edited

Requirements

IDRequirement
PLAT-8729 (260)Ability to track equipment use in production execution by material unit and work order.
PLAT-8732 (258)Ability to complete steps with process values that are not within the predefined limits if appropriate exception/deviation information and approval is entered
PLAT-8739 (463)Ability to browse (view and display) forward and backwards batch/lot and material genealogy at all level of the material tracking hierarchy.
PLAT-8755 (16)Manage the release to use of content based on approval status.
PLAT-8757 (327)Ability to route and disposition materials based on results of sample testing (off-line) and/or quality testing (in-line) Eg. hold, reject, scrap, or release materials based on sample result
PLAT-8759 (326)Ability to route and disposition materials based on sampling plans Eg. hold or future hold materials until sample testing results are available
PLAT-8763 (406)Ability to consume by pre-configured unit of measure (UoM) quantities such as weight, volume, etc.
PLAT-8806 (148)Ability to provide multi-media work instructions
PLAT-8847 (119)Ability to configure procedural elements for work on orders, materials or equipment in a workflow
PLAT-8850 (118)Ability to configure steps and states for work on orders, materials or equipment in a workflow
PLAT-8864 (125)Ability to define conditions to route process between steps in the workflow. These conditions can be based on state change in other steps or time constraints, equipment status, critical alarms, completion of other steps or defined timers.
PLAT-8872 (830)All data changes must be captured in audit trail. Audit trail can be turned off or on GxP needs. This may only be performed by an administrator; it cannot be performed by a user executing an APP.
PLAT-8877 (274)Ability to start processing for work orders by starting to track material (batches, lots, units, etc.). Tracking information should respect tracking hierarchy (kits, trays, wells, flasks, jigs, etc.)
PLAT-8878 (253)Disallow steps from completing until the correct material, material quantity, has been consumed or identified
PLAT-8880 (278)Dispatch priority of work orders and batches/lots can be controlled using predefined configurable dispatching strategies
PLAT-8882 (276)Work order have to be approved and released for production before any material can be started. Ie starting batches/lots
PLAT-8889 (188)Standard non configurable material attributes must include quantity, UOM, status, expiration date, location, process step
PLAT-8896 (809)All records and electronic signatures have to include an accurate date and time stamp. Date & time stamps shall be configurable with the possibility to include the day, month, year, hour, minutes, seconds and time zone.
PLAT-8897 (179)Ability to assign material properties to any level of the material tracking hierarchy
PLAT-8963 (303)Ability to track batch/lot and material rework based on the Master Recipe or material workflow configuration.
PLAT-8964 (261)Ability to track equipment substitution during process execution.
PLAT-8976 (350)All material tracking history will include context of material hierarchy levels
PLAT-8990 (337)Ability to track material consumption in a process step. Material consumption may include processing, assembly, weighing, dispensing, etc.