Specifications |
Content |
||||||||||||||||||
|
Adds and edits Specifications.
Concepts |
• | Concepts of Specifications |
• | Concepts of Transformations and Calculations |
Example |
![]() |
Description |
|
|
Specification |
Fields of the Specification element:
Field | Description | ||||||||||||||||||||||||||||||
Specification | Identifier of the Specification. | ||||||||||||||||||||||||||||||
Version | Specification Version. | ||||||||||||||||||||||||||||||
Version Status | Specification Version Status. | ||||||||||||||||||||||||||||||
Description | Description of the Specification. | ||||||||||||||||||||||||||||||
OOS Generating | When a Specification is marked "OOS Generating"
(referred to as "OOS"), Spec Conditions and SDI Conditions are
recognized and reported throughout the system as formal indications of the
"quality" of entered data. This provides traditional LabVantage
Specification mechanisms. Spec Conditions are evaluated against Specification
Limits and reported during Data Entry, and the corresponding SDI Conditions
for the Sample are evaluated against Specification Rules and reported on
the relevant SDI pages (such as List and Maintenance).
When a Specification is not marked "OOS Generating" (referred to as "non-OOS"), Spec Conditions and SDI Conditions are provided as "information only" results that are not intended to be formal indications of "quality". Spec Conditions and SDI Conditions are essentially excluded from evaluation. Refer to the intentionally simple example below, which assumes the OOB configuration whereby the worst Spec Condition and SDI Condition are reported:
|
||||||||||||||||||||||||||||||
Spec Usage | This can be used to provide an indication of how the Specification
is used or to whom it applies. These values are defined by the SpecUse Reference
Type.
|
||||||||||||||||||||||||||||||
Rule Type | Type of Specification Rule. | ||||||||||||||||||||||||||||||
Default Condition | Spec Condition applied if no Specification Limits are met (see Default Condition below). | ||||||||||||||||||||||||||||||
Effective Date
Approval Date |
See Concepts of SDI Versioning and Approval. |
Limit Type |
For each Spec Limit you want to define, add a Spec Limit Type by clicking Add. Each Spec Limit Type applies to all Parameters.
You will enter the Specification Limit (actual numerical or textual value) for each Limit Type in the Parameter Limits tab. LabVantage checks Specification Limits from left to right. If you want to rearrange the order of Limit Types, click the up and down arrows. Click Remove to eliminate the selected Limit Type.
Fields of the Limit Type element:
Field | Description |
Limit Type | Identifier of the Spec Limit Type. |
Condition | Spec Condition associated with the Spec Limit Type. |
After you have defined your Specification Limits in the Parameter Limits detail, you can also change the way each Specification Limit is displayed for each Limit Type. For available display options, see Limit Types.
Parameter Limits |
This where you define the Specification Limits (labeled "Parameter Limits").
![]() |
In General |
For each Spec Limit Type, the following definitions apply to identify unlabeled fields in the interface:
Operator | Value1 | Operator | Value2 |
Operator is the arithmetic operator applied to the Value. Value1 and Value 2 are the upper and lower limits for each Spec Limit Type.
Examples of Operators and Values for Numeric Specification Limits |
The following are examples of numeric limits. The relevant Parameter List must define the Data Type as Numeric.
Single Values | ||||
Operator | Value1 | Operator | Value2 | Meaning |
= | 20 | x = 20 | ||
< | 20 | x < 20 | ||
<= | 20 | x < or = 20 | ||
> | 20 | x > 20 | ||
>= | 20 | x > or = 20 | ||
(none) | no value | |||
Ranges | ||||
Operator | Value1 | Operator | Value2 | Meaning |
>= | 15 | <= | 20 | 15 <= x <= 20 |
> | 15 | < | 20 | 15 < x < 20 |
Discrete Values | ||||
Operator | Value1 | Operator | Value2 | Meaning |
In | 12;14 | x = 12 or x = 14 | ||
Not In | 12;14 | x not equal to 12 or 14 |
Note that you can enter the entire expression in the Value1 field. When you tab out of the field, the Operator is automatically populated. For example, if you enter In 12;14 for Value1, then tab out of the field, In is automatically placed in the Operator field, and 12;14 remian in the Value1 field.
In the SpecParamLimits table, the Value1 and Value 2 columns store the entered Limit value as strings (VARCHAR2(2000)), while the Value1Num and Value2Num columns store these values as numeric data types (NUMBER). All Limit evaluation functionality uses the values in Value1Num and Value2Num (if they contain data).
Fractional Specification Limits |
You can also enter fractional limits such as 1/4 and 2 1/2. Fractional values are converted to decimal and stored in the Value1Num and Value2Num columns.
Examples of Operators and Values for Textual Specification Limits |
The following are examples of textual limits. The relevant Parameter List must define the Data Type as either a Reference Type or Text.
Reference Types versus Text | |
Data Type | Description |
Reference Type | If the Parameter List defines the Value as a Reference Type,
you can choose the values from a Lookup List. The example below uses
a Reference Type named Color, which contains Reference values red, orange,
yellow, green, blue, violet. Each value you choose is inserted into
a semicolon-delimited list. LabVantage arranges the list in the order
in which you select the values. In the example below, if we insert
values from the Color Reference Type in the following order
the resulting list is: red;orange;yellow;green;blue;violet |
Text | If you define a value as Text, you must enter semicolon-delimited
values. The example below uses values
red;orange;yellow;green;blue;violet Operators act upon these values based on the order listed. |
Examples of Textual Values | ||||
Operator | Value1 | Operator | Value2 | Meaning |
In | red;green;blue | Data is one of the values red, green, or blue. | ||
Out | red;green;blue | Data is some value other than red, green, or blue. | ||
(none) | no value |
Default Condition |
There may be situations where you want the Specification to "Pass" or "Fail" when no defined values or ranges match the entered data. In such cases, it is not necessary to define all Limits that would correspond to "Pass", "Warning", and "Fail" Conditions. You can simply define a set of Limits, then specify a "Default Condition" on the Specification tab (shown on the example screen) that will be used when none of the defined Limits match the entered data.
When a Specification Cannot be Evaluated |
The "Rule for Undetermined Spec Limits" property of the Data Entry Policy can determine how to handle cases where a Specification Limit cannot be evaluated.
Reporting Labels for Specification Limits |
A Specification Limit can express a string used as a reporting label for the defined limit. For example, rather then reporting a limit as ">=90 <=100", you can express the limit as the string "90 to 100% of label claim". This is persisted in SpecParamItems.LimitLabel. The OOB COA Jasper Reports are preconfigured to display the LimitLabel value when not null.
Parameter Details |
This shows additional detail concerning each Parameter.
![]() |
Field | Description | ||||||||||
Param List (Ver) Variant | Parameter List, Version, and Variant of the Parameter List associated with the Parameter. | ||||||||||
Param and Param Type | Parameter Id and Parameter Type. | ||||||||||
Limit Type Rule | When non-numeric tags such as BDL (below detection limits) or Nil (no value) are entered, Specification Limits cannot be used to evaluate these because they define only numerical ranges. To evaluate textual entry against a Specification, Specifications provide a Limit Type Rule, which associates a Parameter Limit Type (such as BDL) with a Spec Condition (such as Warning). See Using Non-Numeric Tags for an example of how to use this. | ||||||||||
Units | Unit SDIs associated with the Parameter. | ||||||||||
Rounding Function
#Digits |
These let you specify a rounding function and precision
to apply before the Specification Limits are evaluated. If you specify these
(if one is entered, the other is mandatory), the "Display Format"
and "Transformation Rule" are automatically determined based on
the rounding function and precision, then displayed as read-only fields.
This operation ensures that the displayed results reflect accurate calculation
results.
The "Rounding Function" dropdown and "#Digits" field specify the rounding function and arithmetic precision to use. For a translation of this terminology to the actual calculation syntax (and a description of the function), see Expression Library and Expression Editor → Expression Editor → LabVantage Aggregate Expressions).
|
||||||||||
Display Format | Defines how Specification information is displayed. For descriptions, see Display Format for Parameter Lists. This is automatically populated if a Rounding Function and #Digits are specified. | ||||||||||
Transformation Rule | Transformation Rule to apply immediately before evaluating Specification Limits. See How Transformations and Calculations are Processed in Concepts of Transformations and Calculations. This is automatically populated if a rounding Function and #Digits are specified. | ||||||||||
Any |
For a given Parameter, the selected option determines which Parameter
Lists will be evaluated against the Specification during Data
Entry:
Although these options work when adding Data Sets and Specifications directly to Samples, these options are perhaps most useful when adding a Test (applying a Test Method) to a Sample. The Test Method can contain the Specification with the desired options. The Specification is then applied only if the above matches can be made. |
||||||||||
Report | When generating a Report, you can use this flag to specify whether or not to print the Specification evaluation in the Report. When checked, this sets the SDIDataItemSpec.ReportFlag column to Y. This is checked when adding a new row. |
Rules |
Defines Specification Rules for Spec SDI Checking:
Banded |
Banded Rules cover the most basic case. Multiple "bands" can be specified, with the final band being the default condition.
This refers to the Spec Condition | This refers to the SDI Condition | |||
If there are any items set to | Pass
Fail Warning (none) |
set the spec condition to | Pass
Fail Warning (none) |
otherwise |
set the spec condition to | Fail
Warning Pass |
Structured |
Structured Rules let you create multiple rules, each defining a series of conditions according to fixed grammar. The Rules Engine processes each rule individually, stopping after it processes a rule that returns true. A final (default) rule can optionally be defined.
This refers to the SDI Condition | This refers to the SDI Condition | ||||||||
Set condition to | Pass
Fail Warning (none) |
if | all spec results are entered and
all mandatory spec results are entered |
any
at least 2 at least 3 at least 4 at least 5 all |
mandatory | items | are
are not |
Pass
Fail Warning (none) |
otherwise |
Set condition to | Pass
Fail Warning (none) |
|
Required Parameter Lists |
When you assign a Specification to an SDI, you can arrange to have LabVantage automatically assign Parameter List Instances (Data Sets) to that SDI. Use Add and Remove to choose the Parameter List Instances you want to automatically assign.
![]() |
Secondary Customers |
This tab is displayed if "Spec Usage" is "Customer", in which case a "Primary Customer" lookup is provided on the Specification form. This allows "Secondary Customers" to be added.
Dealing with Rule Types |
|
|
Unsupported Rule Types |
This warning is issued for Rule Types that are not supported in Web pages (such as Expression-Based Rules):
![]() |
If you change the Rule from one type to another (or from an usupported type to a supported type), you are prompted that changing the Rule Type will clear the current Rule definitions:
![]() |
Clicking Yes clears the current Rule data, saves the Specification, and refreshes the page. When you are editing an unsupported Rule Type, all Rule Element buttons are disabled for the "Add", "Remove", "Move Up" and "Move Down" operations.
Custom Rule Types |
You can also select a "Custom" Rule Type. These let you specify a Java class (including package) that extends the BaseSpecRule class. This class will then be called when the Specification is evaluated:
![]() |
When editing a Custom Rule, the Rule Elements "Add", "Remove", "Move Up" and "Move Down" operations are disabled.
How Specifications are Applied |
|
|
Internal Mechanisms |
As provided OOB, if the Specification is "OOS Generating" and the "Spec Usage" option is set to "Regulatory", "Internal", "Other", or (null), Specifications are applied to SDIs after the Specification is added to the SDI and the SDI is saved. The AddSDISpec Action is then executed. The "applyspec" input property determines if the Specification is applied to the SDI. When applied, the SDISpec.AppliedFlag column is set to "Y". If the "applyspec" property is not specified, the default behaviour is that all "OOS Generated" and non-Customer Specifications are always applied.
Records are created in the SDIDataItemSpec table only if a Specification is applied to an SDI and evaluated on the entered data.
In addition to AddSDISpec, the ApplySDISpecs Action can apply Specifications to an SDI as well as evaluate the Specification Limits and Rules. The UnApplySDISpec Action can remove SDIDataItemSpec records from SDIs input to the Action, thus setting the SDISpec.AppliedFlag column to "N" and SDISpec.Condition to (null). As noted in the Action Javadocs, both Actions support propsmatch.
Non-OOS Customer Specs |
Non-OOS Customer Specs ("Customer" Specifications that are not marked as "OOS Generating") are applied differently than other "Spec Usage" options. Non-OOS Customer Specs are never applied when you add them to a Sample and save. A separate mechanism is provided to let you choose which non-OOS Specifications are applied to specific Customers.
As an example, consider adding two Customer Specifications to a Sample. One is OOS (SS_SP-001), the other is non-OOS (SS_SP-002).
![]() |
During Data Entry, the OOS Customer Spec (SS_SP-001) appears in Data Entry and the SDISpec table shows it is Applied. However, the non-OOS Customer Spec (SS_SP-002) does not appear in Data Entry (the SDISpec table shows it is not Applied). This is a characteristic unique to non-OOS Customer Specs, i.e., they are never initially Applied when you add them to a Sample.
![]() |
Sample List pages and Batch List pages contain a "Manage Customers" button. Clicking it opens the inline "Manage Customers" page, which is based on the CustomerSpecs Page Type. The "Manage Customers" page dynamically evaluates Customer Specifications that have been applied, as well as and those that have not been applied. Here you can decide which Specifications are applied for each Customer. If a Sample has multiple Specifications for the same Data Item, the worst OOS SDI Condition is shown. Checking "Choose Customer" and saving applies the corresponding Specification (if not already applied). The corresponding Customer is also added to the Sample's SDIAddress detail table to provide a link between the Customer and the Sample. If a Customer exists in multiple Specifications, selecting/deselecting a Customer from one Specification selects/deselects the Customer from the other Specifications as well. The example below shows the page opened from a Sample List page.
![]() |
Data Entry now shows the applied non-OOS Customer Specification.
![]() |
The "Manage Customers" page provides these convenience features:
• | "View Additional Specs" lets you add more Specifications to the Sample directly from this page (provided the Specification is relevant to the Sample's Data Sets). This button does not exist for Batches (see the example below). |
• | "Show Secondary Customers" lets you manage Secondary Customers as well as the Primary Customers. |
• | "Filter By Conditions" lets you filter the Customer list. |
The example below shows the Manage Customers page opened from a Batch List page. Operation is similar to the Sample page. The notable difference here is that clicking the plus icon next to the primary Customer shows the Samples in the Batch for that Customer with the corresponding SDI Condition.
![]() |
Viewing SDI Conditions |
|
|
When an SDI has multiple Specifications for the same Data Item, the SDI Condition is evaluated according to the configuration of the Data Entry Policy. As provided OOB, the Data Entry Policy "Spec Condition Display Option" is set to evaluate the SDI Condition using the worst OOS Spec Condition evaluated for a Data Item. The "Spec Conditions (Best First, Worst Last)" collection maintains the "Spec Condition" Reference Type, which defines the icons that represent SDI Condition. These icons are displayed in the following pages:
• | Sample, Batch, Request and MonitorGroup List pages. |
• | Sample Maintenance page and Sample details on the parent Batch, Request, and MonitorGroup Maintenance pages. |
• | Stability Sample Timepoint Review (Stability Studies > Reviewing a Plan > ReviewSamplesbyTimepoint). |
SDI List pages for Sample, Batch, MonitorGroup, and Request contain a "View Specifications" button. This opens the "View Specs" dialog (based on the ViewSpecs Page Type), which lets you view Specification details for the selected SDIs (or Samples of a parent SDI if applicable). This dialog can also be opened by clicking the SDI Condition icon in the Sample tab of Batch, Batch Stage, Request, and Monitor Group Maintenance pages.
The example below shows a View Specs dialog opened from the Sample List page (Batch, Monitor Group, and Request are similar). The upper rows show details for Master Data (defined by the SDC "SpecSDC"). The lower rows show details for Instance Data (persisted by the SDISpec table). When "Include Only OOS Generating Specs" is checked, only OOS Specifications are shown. Although shown unchecked below to show OOS and non-OOS, this dialog opens from a supported SDI List page showing only OOS Specifications (since the page shows the worst OOS Spec Condition and ignores non-OOS).
![]() |
There may be cases where Master Data has changed but instance data remains the same. For example, changing SP-Test-001 to non-OOS and SP-Test-002 to OOS creates discrepancies between Master Data (in the Spec.OOSGeneratingFlag column) and Instance Data (in the SDISpec.OOSGenerating column). In this case, such discrepancies are marked in each cell of the Instance Data as shown below.
![]() |
Clicking the SDI Condition icon opens a read-only Data Entry page in a lower frame.
![]() |