TDM List Management 5.4
From ICISWiki
Contents |
Management of Germplasm Lists
An essential part of the GMS is maintaining lists of germplasm descriptors for breeding, evaluation, or any other purposes. Examples of germplasm lists are parent lists, cross lists, pedigree nursery lists, and yield trial entry lists. List entries are selected either from existing lists or directly from the GMS. New germplasm generated by list processes are stored in GMS. Two tables are included in an installation to manage lists: LISTNMS and LISTDATA. The read and write functions needed for these tables are provided by the DLL. The tables ensure that germplasm lists generated by an installation will not be confused with lists generated by other installations since the lists are generated exclusively by and stored together with the installation. In ICIS version 5, lists can also be stored in the central database. List entries are uniquely identified by USERID and Local LISTID and ListRecordID. Users cannot edit lists stored in the central database, but can copy them to new lists in the local and edit those copies.
Germplasm Lists
Lists are differentiated from one another by a LISTID and a user-assigned list_name (LISTNAME), up to 47 characters long (LISTNMS Table). ICIS 5 allows users to store lists in a hierarchical tree. For this there are two basic list states, Folder and Entry List. Each list can refer to a parent list in the hierarchy. Although there is no specified convention for naming lists, it is suggested that users develop conventions that will allow them to easily recognize a list’s contents.
When a newly generated list is saved, the GMS assigns a unique identification number to a list (LISTID). This is a positive integer value since there are no lists in the central database.
The LISTNAMES (LISTNMS) Table
Columns - Long Name (Name) | Description | Type | Length (bytes) |
---|---|---|---|
LIST_ID (LISTID) | The unique ID for each list generated | Integer | 2 |
LIST_NAME (LISTNAME) | Corresponding name of list | Text | 47 |
LIST_DATE (LISTDATE) | Date list was created | Long | 4 |
LIST_TYPE (LISTTYPE) | Type of list; links to LISTYPE and FCODE in the UDFLDS table | Text | 7 |
LIST_USER_ID (LISTUID) | ID of user owning the list | Integer | 2 |
LIST_DESCRIPTION (LISTDESC) | Title or description of the list | Text | 79 |
LIST_HIERARCHY (LHIERARCHY) | ID of the parent list folder | Long | 4 |
LIST_STATUS (LSTATUS) | Status of list or folder: 0=Folder, 1=Open List, 1x = hidden, 1xx = locked, 1xxx= final, 9= Deleted | Long | 4 |
There are six fields in the LISTNMS table for which the user must enter values: list_name, list_date, list_type, list_description, list_hierarchy and list_status. The list_type (LISTTYPE) field describes the purpose of a list. Users can define List_types by setting constants in the UDFLDS table (3.6.2). The list_description (LISTDESC) contains a title or short description of the contents and purpose of a list. The fields list_id (LISTID) and list_user_id (LISTUID) are generated or maintained by the ICIS system. The List_status field contains integer codes which can have four digits WXYZ where:
- Z - flag for either a folder(0) or a list(1)
- Y - flag for hide(1) or unhide(0)
- X - flag for Lock(1) or unlock(0)
- W - flag for Final(1) or not Final(0)
Thus, a row in LISTNMS can represent either a list or a folder. A Folder, can contain another folder(subfolder) or a List, but no ListData Entries. A List can only contain ListData entries.
Locking/unlocking and finalizing a list are done recursively to its subfolders and lists. For example if folder PARENT has subfolders SUBF1, SUBF2, and list LST1, and hidden list LST2 and if PARENT is locked (liststatus = 100) then SUBF1, SUBF2 will also have liststatus = 100, LST1 will have liststatus = 101 and LST2 will have liststatus = 111
List Entries
A list consists of germplasm entries, which are stored in the table, (LISTDATA). Each record in LISTDATA pertains to an entry within a list. ENTRYID is a positive integer which must be unique within each LISTID. Entry_code (ENTRYCD) may be a simple entry number or a code, which often relates to a field row or plot in unreplicated trials. For replicated trials, entry codes correspond to treatment codes in a field layout. The SOURCE column may be used to store a code to indicate where the planting materials came from. This is often the plot id from a previous season, or an accession or stock number. The DESIG column is used to store the name the user wants printed in a fieldbook, not necessarily a variety’s preferred name. The GRPName field usually stores a cross history for the entry. The ENTRYCD, SOURCE, DESIG and GRPNAME columns may be used for other purposes and any of these may also be blank, if the user so desires. Lists often contain entries for unspecified germplasm such as local checks and/or textlines. Textline is an entry used for a comment or for any other purpose it may serve the user. These type of entries, checks and textlines, have zero in the GID field.
The LISTDATA (LISTDATA) Table
Columns - Long Name (Name) | Description | Type | Length (bytes) |
---|---|---|---|
LIST_ID (LISTID) | ID of the list to which the entry belongs (links to the LISTNMS Table) | Integer | 2 |
GERMPLASM_ID (GID) | GID of germplasm entry. | Long | 4 |
ENTRY_ID (ENTRYID) | Sort order for entries in a list | Long | 4 |
ENTRY_CODE (ENTRYCD) | Entry no. or plot in a nursery identifying an entry | Text | 47 |
SEED SOURCE (SOURCE) | Seed source of germplasm entry | Text | 47 |
DESIGNATION (DESIG) | Germplasm name | Text | 255 |
GROUP_NAME(GRPNAME) | Germplasm cross history | Text | 255 |
LIST_RECORD_ID (LRECID) | Record ID within the list | Long | 4 |
LIST_RECORD_STATUS (LRSTATUS) | Status of the entry: 0 = active, 9 = deleted | Long | 4 |