Maintaining System Table Codes

A table code is an item in a system table of a given table type, where the table content is used to provide a simple list of items.

Table Code Scope

Table codes are created at instance-level in the MSF010 table (so cannot be filtered by organisation or laboratory). An instance can contain multiple table codes. Table codes are scoped by table type.

All MSF010 items are secured via the same security rights, that is, the security is not dependent upon table type.

Properties of a Table Code

The MSF010 table has a flat structure where each record contains a Table Type and a Table Code, and the table type provides the grouping of records. The table contains header records, denoted with a Table Type of XX, which denote the categorised records contained within the system table. (Modify header records at your own risk.) The following header record points to the table that contains the enumerations for user QC statuses:

Table Type Table File Code Table file entry description Table File Associated Values

XX

CC32

Workflow Statuses

 

XX

CC32

QC ignore reasons

 

XX

CC33

User QC Statuses

 

For example, this indicates that all user QC statuses are contained within the records that have a Table Type of CC33. If you set the Table Type search criteria to CC33, then a search returns all user QC statuses.

Use of Table Codes

Table codes are used to hold lists used by the system. For example, the available system languages, or a CCLAS field that has a simple drop-down list is associated with a table type. Each table type has an associated list of table codes used to populate the list.

Table codes can be localised using the MSEL10—Table Code Localizations application.

Structure of the System Table

The MSF010 table, the system table, is structured in the following way:

  • Table Type—The code of the type of table, used to group table file codes. Maximum 4 characters.
  • Table File Code—The code of the table within the table type. Any combination of letters, digits and symbols. Maximum 18 characters.
  • Table file entry description—Description of the table file code.
  • Table File Associated Values—Some table codes have associated values. Associated values are used to hold additional information for a table code, for system use.
  • Active Flag—Indicates whether the table file code is active for inclusion in drop-down lists.

The table types contained with the MSF010 table are of three basic types:

  • Core-defined—The structure and contents of this table are defined by Datamine and should not be changed unless directed by Datamine. These table types and codes are delivered with each release of CCLAS and loaded into the system table using the MSETBL—Table Code Service application.
  • Customer-defined—The structure of these table types are defined by Datamine, but codes and descriptions are created and maintained by the customer to suit their individual requirements.
  • User-defined—These table types are created by the customer to allow additional descriptive codes to be recorded against various data elements. Special characters like + and $ are reserved for defining client-specific tables and can be used anywhere in the table code.

System-specific Table Codes

The following table types have a very specific system purpose.

Table Type

Description

Purpose

XX

Table File Control Record

This table type serves as an index to the other table types, which may be either core (used by CCLAS) or custom (used by scripts) table types. These other table types can contain their own table file codes, or they can be empty such that the header index record is used to hold Java infrastructure (JI) or CCLAS details only.

The content of this table type contains either:

  • A list of all the other possible table types. This is used on the drop-down lists from various fields to select the table type.

or

  • System details that do not need a whole separate group but are defined in the XX table type.

The drop-down list of Table Types on the search screen of the MSETBL—Table Code Service application contains active table file codes in the XX table type.

Layout table types never have data—they just describe the associated record of their parent type. Note that:

  • Table types are a maximum of 4 characters only.
  • Table code entries are up to a maximum of 18 characters only.

The content of the Table File Associated Values field for the XX records has specific meaning. Each character in the field can mean something different:

  • The character in position 1 indicates the ownership of the table type:
    • C—CCLAS-defined tables
    • M—JI-defined tables
    • U—user-defined tables.
  • The character in position 14 is the preserve flag for the table type:
    • Y—The table definition (including any layout types) is preserved
    • N or empty—The table is updated.

For example:

C Y 

The MSETBL—Table Code Service application does not 'know' about this break-up of the characters in the Associated Record field, as it treats all records the same.

The MSEL10—Table Code Localizations application used for configuring table code localisations does know about the meaning of each of the characters in the Associated Record field for the XX table type records.

NA

Not Available

This table type contains the list of applications that the system hides from the quick launch drop-down list of applications.

This should be updated for each site to tailor the quick launch menu to contain only those applications that may launched in this manner. Some sites prefer to launch applications via the application menu only.

MD

Modules

This table holds the module names that are associated with applications and services. The Resource Name drop-down list that is available when a Resource Type of AP (application) is selected in the search screen of the MSEREA—Resource Authorisation application contains active table file codes in the MD table type.

Configuring Table Codes

The MSETBL—Table Code Service application is used to configure table codes and includes the functionality to search and display those tables belonging to a particular table type.

The search can be refined to:

  • A particular table code
  • Active tables only

Searching for the XX table type returns all types of tables that are contained within the MSF010 table. Each type of table can be accessed to view the table codes contained within it.

The MSETBL—Table Code Service application allows new table codes to be created, and existing table codes to be flagged as active or inactive.

Other Core Table Codes

The following table types are provided with java infrastructure and are utilised by CCLAS.

Table Type

Description

Purpose

CR

Country Code

This table type contains the country codes and descriptions, available for selection when updating the country in an address for an organisation, laboratory, client, contact, or user.

Once deployed, the list of country items is updatable.

DLAN

Display system languages, used in the MSEPRF—User Preferences application.

This table type contains the list of languages (Locale + Language) available for selection when updating the language for a biofield, client's ERP details, report, paperwork and labels, or invoice.

Once deployed, the list of languages is updatable.

ER

Errors

This table contains all error codes used by CCLAS. Each error code has some descriptive text, which is the text that the users see.

JISL

JI-Core System Login

This table type contains details used by JI and only has the SCPE table code within, where the Table file entry description defines the domain scope. For CCLAS, the Table file entry description is set to 'Laboratory'. Other JI-based applications developed by Datamine may use other domain scopes. The state of the Active Flag has no bearing upon this table code.

4127

ISO 4127 Currency codes

This table contains default currencies used in the instance.

The following table types are associated with CCLAS field drop-downs.

Table Type

Description

Purpose

CC00

Analyte Type

This table type is possibly unused. Referenced in code but not visible on any screen.

CC01

Salutation

This table type contains salutations used by the CCCLNTCNCT—Client Contact Detail, CCLBRTCNCT—Laboratory Contact Details, and CCUSER—User Detail screens.

Once deployed, the list of salutations can be updated to provide salutation greetings in reports.

CC02

Reporting Method

No functional use in core CCLAS.

CC04

Scheme Type

No functional use in core CCLAS. This table type usage is replaced with hard-coded enumerations that are visible on screens.

CC05

Audit Type

This table type contains audit event types, used by the CCJAUD—Job Audit Detail screen to filter the audit types.

CC06

Job Status

No functional use in core CCLAS.

CC07

Sample Status

No functional use in core CCLAS. This table type is re-purposed for the Active or Draft column.

CC08

Related Job Object Type

This table type contains the job-related objects used for auditing purposes and in the reporting classes and views.

For example "J", "SS", "JI", etc., are used for storing the RELATED_JOB_OBJECT_TYPE in the CCJOBAUDIT table.

CC10

Job Scheme Analyte Status

No functional use in core CCLAS.

CC11

Sample Scheme Status

No functional use in core CCLAS.

 

CC12

Sample Scheme Analyte Status

No functional use in core CCLAS.

 

CC13

QC Mask Incomplete Block Selection Method

No functional use in core CCLAS.

CC14

QC Mask Placement

No functional use in core CCLAS.

CC15

QC Mask Standard Selection

No functional use in core CCLAS.

CC16

QC Mask Member Selection Type

No functional use in core CCLAS.

CC17

Time Zone

This table type contains time zones used by the CCLBRT—Laboratory Detail and CCCLNT—Client Detail screens.

CC20

Actual Different Calculation Type

No functional use in core CCLAS.

CC21

Assessment Calculation Type

No functional use in core CCLAS.

CC22

Allow Different Range Table Input

No functional use in core CCLAS.

CC23

QA Status

No functional use in core CCLAS.

 

CC24

Batch Type

No functional use in core CCLAS.

CC25

Report Type

This table type contains the list of report types, used by the CCTPLR—Report Template application.

CC26

Report Engine Type

No functional use in core CCLAS.

 

CC27

Grid Object Type

This table type is used to give context to the 'ExportToReport' report templates, and contains the list of search grid objects.

Once deployed, the list of grid object types can be updated to add other report based on a report template of Type=Grid.

Originally, this was to be used as a way of filtering the available report templates for any 'ExportToGrid' report, but this is superseded by the SEARCH_REPORT_<ApplicationName> application preferences that give greater flexibility. Therefore, this table can be used to sub-classify report templates of Type=Grid.

CC28

Script Type

This table type contains the list of script types, used in the CCSCRT—Script Detail screen.

CC30

User Statuses

This table type contains the list of user workflow statuses, used in the User Status dialog box accessed from the CCWKOP—Open Workbook Detail screen to assign a user status workflows to a sample scheme analyte.

Once deployed, the list of user workflow status items can be updated, but must be linked to a core workflow status. The Table File Associated Values field contains the core workflow corresponding enumeration.

User workflow status of a sample scheme analyte is stored in SSA.UserWorkflowStatus, and can be reported in internal and certificate reports using the descriptions from the MSF010 table.

Refer to the Enumerations related to User Workflow Statuses.

CC31

Workflow Statuses

No functional use in core CCLAS. However, these descriptions could be used in the future for reporting strings and descriptions.

Describes the core workflow statuses and their abbreviations, with lookups for the hard-coded enumerations.

These 'should' be used when reports are generated to place the literal name of the workflow status on the report.

Refer to the Enumerations related to Core Workflow Statuses.

CC32

QC Ignore Reasons

This table type contains the list of QC ignore reasons, used in the Ignore QC Failure dialog box accessed from the CCWKOP—Open Workbook Detail screen to apply a reason as to why a composite QC failure for a sample scheme analyte was ignored.

Once deployed, the list of QC ignore reasons can be updated as they do not have any implied business rules. These reasons are instanced-based, not laboratory-based.

CC33

User QC Statuses

This table type contains the list of user QC statuses, used in the User QC Status dialog box accessed from the lower panel on the CCWKOP—Open Workbook Detail screen to assign a user QC status to a sample scheme analyte.

Once deployed, the list of user QC status items can be updated as they do not have any specific business rule logic, and do not have to be associated with a core QC status.

User QC status of a sample scheme analyte is stored in SSA.UserQCStatus, and can be reported in internal and certificate reports using the descriptions from the MSF010 table.

Refer to the Enumerations related to User QC Statuses.

CC34

Product Types

This table type contains the list of products, used in the Product Type tab in the CCPRDT—Product Detail screen.

Once deployed, the list of product types can be updated as they do not have any specific business rule logic.

CC35

Analytical Sample Types

This table type contains the list of sample types, with short and long descriptions for the enumerations.

CC36

Laboratory Type

This table type contains the list of laboratory types, used in the CCLBRT—Search Laboratory and CCLBRT—Laboratory Detail screens.

CC37

QC Statuses

This table type contains the list of core QC statuses, with short and long descriptions for the enumerations.

Once deployed, the list of core QC statuses should not be added to, however the reportable descriptions can be updated.

Refer to the Enumerations related to Core QC Statuses.

CC40

Cancel Job Reasons

This table type contains the list of reasons for why a job may be cancelled, used in the CCREGN—Job application when a job is cancelled.

CC41

Reinstate Job Reasons

This table type contains the list of reasons for why a job may be reinstated, used in the CCREGN—Job application when a job is reinstated.

CC42

Audit Events

This table type contains the list of audit events for a job, used whenever any core or custom call is made to audit a job event.

CC43

Audit Application Definitions

This table type contains the list of functional areas to which job audits apply.

Business Rules

The following business rules govern this process:

  • Core tables should only be modified under advice from Datamine Software's support groups.
  • Associated values for tables are defined by Datamine.

Localising Table Code Records

The related MSEL10—Table Code Localization application is used to maintain the MSF010 records and their alternative language records, and is used to report table file strings in an alternate language to the default.

System Updates to Table Codes

When a system update is applied to CCLAS,

  • 'U' table types are not normally updated.
  • The XX table type preserve flag applies to 'C' and 'M' table type definitions.
  • Any incoming 'M' or 'C' table type definitions (by default) replace an existing 'U' definition with same key.
  • Layout table types are preserved if their parent type is preserved
  • Incoming core data may include new layout types which is added to the database, but preserved layout types are not changed even if new definitions are incoming.