Orderables (previously called tests) are any actions that are performed on a sample. This could be a genetic test (FISH, Chromosome Analysis, QF-PCR etc.) which may have results and anything that is subject to billing or any task which transforms a sample from one type to another (DNA extraction).
Some examples of orderables are:
For a test to work in the iGene correctly it needs to be assigned a Test Type. iGene supports the following test types:
When creating a new test via preferences, it is imperative that the correct Test Type is chosen as it will not be possible to change the test type after it has been used.
TODO: LINK TO WHERE THIS IS SET
iGene supports a hierarchy of orderables. An orderable can either be a parent, standalone or a child of another orderable. Using this hierarchy, it is possible to set up orderable groupings of related orderables that should be ordered together. For example:
The above image shows a parent orderable of CF-ARMS with two child orderables of CF-ARMS-A and CF-ARMS-B. For each of those child orderables, they have a single result (ending in the word ‘Result’), a positive control and a negative control. In this case, the combination of CF-ARMS-A and CF-ARMS-B would give an overall result for that patient.
TODO: LINK TO LINKING TESTS HERE
Tests/Orders are managed via the Administration > Preferences:
In order to access the preferences area, a user must be a member of a role that has the Administration: Preferences and Administration menu permissions assigned.
3. click the + button at the bottom of the table or select New Item from the Actions menu.
4. To edit an existing test, press the View button next to the relevant test.
When first opening the test, the general details area will be visible:
Each of the fields available are described below:
Once a test type has been set and tests have been booked, the test type should not be changed.
The Child Tests area is used to specify that this test is a parent test and to define which child tests it has and when they are added. To set a test as a parent test, check the Parent Test checkbox as shown below:
Selecting the Parent Test box will reveal the Test Selections table as shown below:
To add test as a child to this test, select the + button at the bottom of the table.
When adding child tests to a parent, the child test must have already been created. Normally when creating a test hierarchy, the child tests should be created first and then finally the parent test. N.B. It is possible to use the same test again in another parent, i.e. Setting a test as a child of another test does not limit it just to that test. Child tests can also be ordered individually without a parent test.
The following options are available for each child test:
To ensure child tests are ordered along with their parent test at time of booking-in, check which status the Test Status Template has for After Ordering. This status is immediately set when the test is first ordered, which will in turn trigger the child tests to be ordered (as long as they are also set to required): For more information about test status templates, please see the Test Status Templates [TO DO)]
Controls are a special kind of test that allows the user to use a sample or reagent as a test. Controls do not require triaging because they are are already triaged when they are booked in. To make a test a control test, select the Is Control checkbox as shown below:
Control tests cannot be parents of other tests. External tests can also not be control tests. When selecting the control test option, the parent test fieldset will not be visible
Once a test is marked as a control, the Control fieldset becomes visible:
The Control Type field specifies the type of control and can be one of the following values:
Each control type is discussed more in the following sections:
Selecting the Family control type will reveal the table below:
This table lists the sample assignment for each pedigree/family. To add a new Sample, select the + button. A search screen for pedigree/families will be shown:
Locate the pedigree number required and click Select. The next screen will appear showing available samples:
Locate and select the required sample by selecting Select. Once selected, the dialog box will close, and the entry will be added to the table:
This example shows that for any member of pedigree/family P15-0003, when booking this test, they will get the control for sample 14-0031-5.
N.B. If no control is available for a patient’s pedigree when booking the test, the control cannot be used.
Selecting the Patient control type will reveal the table below:
This table lists the sample assignment for each patient. To add a new Sample, select the + button. A search screen for patients will be shown:
Locate the patient required and click Select. The next screen will appear showing available samples:
Locate and select the required sample by selecting Select. Once selected, the dialog box will close, and the entry will be added to the table:
This example shows that for patient Christie Yang, when booking this test, the test will get the control for sample 17.00140
N.B. If no control is available for a patient when booking the test, the control cannot be used.
Selecting the Reagent control type will reveal the field below:
Using the autocomplete Reagent, locate the required reagent:
This test will now be a control with the chosen reagent, e.g. water.
Selecting the Sample control type will reveal the field below:
Using the autocomplete Sample, locate the required sample using the sample number:
This test will now be a control with the chosen sample.
The test availability rules area defines filters and options for defining how the test can be selected. For example, it is possible to limit the test to specific referral reasons or categories which is particularly useful if there are hundreds of different tests in the system:
The availability rules fieldset has the following options:
The above option are all marked as deprecated and will likely be removed in a future version of iGene. Instead, using the Test Selections table to limit tests to specific categories and referral reasons is advised.
The Test Selections table is used to define filters for the test when ordering via the referral screen. To add a new test selection, select the + button at the bottom of the table:
The table has the following fields:
Each complete row in the table specifies a list of conditions that have to be met. e.g. Defining a Referral Reason and Referral Reason Type together on the same row will require both of the criteria to be met before the test will be available for selection. Adding additional rows will define “or” conditions, so that if the first row in the table does not match, but the second row does match, the test will be available for selection.
The test grouping area allows the test to be categorised based on various options. The options are often used in combination with reports to customise the appearance, e.g. Showing a different doctor’s name if the category of the test meets specific criteria.
Tests can be grouped in the following ways:
Tests grouped by sex will show a warning when attempting to order the test for a patient who is of the wrong gender.
Test categories allow tests to be grouped into a custom category. This has no effect on selecting the test, but is a useful option: for grouping tests for reporting, statistical purposes, or creating worklists. Test categories can be created by the Test Category Preferences area.
To add a new grouping, select the + button at the bottom of the relevant table. A search box will appear and is used to locate the relevant item to add into the group, e.g. Adding a test category is shown below:
Tests can be grouped into sample types, e.g. DNA, Blood etc. When grouped into Sample Types, the test will not be available for selection if there is not a sample with the matching sample type available. The Turn Around Time column is used to override the Turn Around Time (Days) field in the general area per sample type.
Tests can be grouped into tube types, e.g. 15 ml Centrifuge Tube, Syringe. When grouped into a tube type, the test will not be available for selection if there is not a matching tube type in the parent referral.
Tests can be grouped into referral reason categories. This option does not limit selection but rather is used for grouping purposes and is useful for statistical reports. To limit tests to referral reason categories, please see the Availability Rules) section above.
Test packages are a way of grouping tests into a package so that the package can be ordered as one unit. This option has been replaced by Child Tests and is marked as deprecated.
Variants are used for the test type Genomics to limit the selection of available variants when entering results. The field has no effect anywhere else in the system.
Disease codes are used to limit the list of tests when ordered from the clinical outcome screen. The list of tests will be limited based on the diagnosis codes entered and can help a clinician decide which tests to order.
This is site specific preference for Manchester. For more information please see, Group Path preference.
The billing table is used to add bill codes and their costs to a test. When the test is first ordered, these billing codes are added automatically to the test (and ultimately the referral). To add a new bill code, select the + button at the bottom of the table.
The billing table has the following fields:
The signatures table is used to define a default set of users who will be added automatically to the list of signatures on a report containing this test. To add a new user to the list, select the + button at the bottom of the table and then locate the required user account using the User autocomplete field:
Brandon Condrey will now be added as a default signature for this test.
The test report authorisers table is used to define a list of users who are allowed to authorise reports for this test. If this test is empty, any user with the permission Authorize Lab Report, may authorise a report containing this test. Once a user is entered, only those users are able to sign off reports containing this test. Note: the user must still have the Authorize Lab Report permission.
To add a new user to the list, select the + button at the bottom of the table and then locate the required user account using the User autocomplete field:
Brandon Condrey will now be allowed to authorise reports for this test.
The user warnings area is used to configure warning messages regarding sample volumes and age when performing this test:
The following values can be set:
The FISH probes area is used to add/define the default FISH probes that are added for FISH tests. Probes added here will be added automatically when ordering the test or when adding the probes to slides created on the test. To add a new FISH probe, select the + button at the bottom of the table:
The FISH probes table has the following fields:
The Check Probe is in stock checkbox is used with the stock management module and can ensure that a test cannot be ordered if the relevant FISH probes are not in stock.
The adding of FISH probes to test is particularly useful when used with panels of probes. If a user has a specific test e.g. Jewish Panel, the user can default the probes added so the user does not need to add them individually each time the test is ordered.
The Result Codes table is used to limit the available result codes for this test when entering the result. To add a new result code, select the + button at the bottom of the table and using the Name autocomplete, locate the required result code:
When the result code table is empty, the test can have any result code defined in iGene. However, as soon as a single entry is added to this table, the selection of result codes will be limited just to those entries in this table.
The available/default reports table is used to limit the available report templates for a particular test as well as set one as the default. If a particular report template (or selection of report templates) are always used with a particular test then it is a good idea to set them up here. e.g. There may be 30 CustomTest reports on the system, but only one of them was designed to be used with this test. To add a new report template, select the + button at the bottom of the table and choose the report from the dropdown list:
The available report templates in the dropdown list are related to the Test Type. e.g. If the test being edited was a FISH test, then the list would show all report templates for the FISH test type.
The Default checkbox will allow a particular template to be chosen by default when creating a new report. If there is only one available report then the setting has no effect.
If the list of available reports is empty then all report templates on the system matching the Test Type are made available to the user when creating a new report. As soon as single item is added into this table, the available reports will be filtered. It is highly recommended to use this table with Custom Test test types as attempting to run the wrong template on the wrong custom test can result in hard-to-troubleshoot errors.
TODO: LINK TO DOC ABOUT OU’s
The test publishing table is used to make this test available across multiple organisation units (OUs). It is used for lab tests that should be selectable from the clinical module even though the lab test is not available or visible in the clinical OU. To publish this test to another OU, click the + button at the bottom of the table.
The table has the following fields:
Custom tests are the most powerful types of test in iGene as they allow the user to add their own custom fields and configure how they look. In addition, a test must be a custom test in order to be used with the worksheet module.
More information about how setup and use custom tests can be found Using Custom Tests.
A custom test consists of a list of custom fields and two templates describing how to display the test. The first template controls how the template should appear in a worksheet cell, and the second on the result screen. The following types of custom fields are currently supported:
Each of these field types are covered in the Result Type Preferences.
To create a custom test, ensure the Test Type field is set to Custom as shown below:
Once a test has been set as custom, the Custom Fields fieldset will become visible at the bottom of the form:
The fieldset has the following areas:
To add a custom field, select the + button at the bottom of the Custom Fields table:
A custom field has the following values:
In the above example, a custom field has been added called field1 with a result type of Comment.
Worksheet Cell Display Template
The worksheet cell display template uses a combination of HTML and Freemarker to define how the cell will be displayed inside a worksheet cell, e.g.
<p>${displayIcon}${testNumber}</p>
<p>${referral.referralNumber}</p>
The above code snippet will display the test’s icon and number on the first line, and the referral number on the second line. To use a variable from iGene, the model path will be required (TODO link to section on modelPaths). The freemarker path is escaped inside ${____} brackets and refers to the current test (ReferralTest). Some examples of modelPaths are given below:
Field Display Template
The field display template uses a combination of HTML and Freemarker to define how the result screen will look. Each field is referred to by the unique code given when creating the custom field, e.g. field1. An example template is shown below:
<b>Test Results</b>
<hr />
<table>
<tr><td>Field 1:</td><td>${field1}</td></tr>
<tr><td>Field 2:</td><td>${field2}</td></tr>
</table>
When this template is used, it will look similar to the following:
The templates format may seem daunting at first for users not used to HTML, however Genial Genetics will provide support for setting up the first few templates, and afterwards the existing templates can be used in other custom tests with only minor changes.
When using HTML, there is no need to include body or html tags, however since the application runs inside a web browser, the content can be anything that can be represented with simple HTML.
The fraction samples area is used to fraction samples automatically after they have been triaged. For example cell sorting for Blood into T-Cell, B-Cell and Myloid. To enable sample fractions, select the Fraction Sample checkbox as shown below:
The Sub Sample Types table will become visible. To add a new sub sample type, select the + button at the bottom of the table and select the Sub Sample Type from the Type autocomplete list:
The post status change script area is a section where groovy code can be written to perform a task after a status has been changed. This could be create a new sample or change another status on a sample which is attached to the referral test based on the status of the test which has changed.
Clicking the ‘Insert Sample Code’ button will add instructions on how to use this area. As an example, to access the sample tube for the test:
model?.referralTestSampleTubes[0]?.sampleTube?.sampleType?.name
The above code would get the name of the sample type for the first sample triaged to that test.