Enabling a code table

You will notice that the names of some code tables, especially the user defined ones, are greyed out. This means that the code table is not enabled. So that the system remains simple to use, code tables do not appear throughout the rest of RefTracker (e.g. in the Data dictionary and in the screen that allows you to design Request forms) until the code table has been enabled.
When you decide that you need to enable a new code table in RefTracker for collection of a new type of data in your Request forms, the first thing that you need to do is to enable the code table.
To enable a code table, change the enabled column of the code table that you want to use, to “Optional” or “Mandatory”, then click on Update. Because of the cascading nature of the decisions your make here, a confirmation screen will display before the update is actually performed.
Mandatory means that wherever this code table is used a value MUST be selected from the drop down list and that value will be recorded in the RefTracker database. Selecting Mandatory here will automatically set the Data dictionary for this field to Mandatory, and every use of the field in a Request form to Mandatory (unless you change this in the confirmation screen). Where the field is a data entry field used in Request forms, Mandatory does not mean that it must be used in every Request form, but it does mean that wherever it is used it MUST have a value selected from it. In order to make it clear that this drop down box has been defined as Mandatory, the default value defined in the Code table will be shown when this code table is first displayed (although further options for setting the default value are provided for Mandatory code tables when you design Request forms). For these reasons it is unusual that Mandatory is chosen at this level for a code table. The most common/flexible choice is Optional.
Optional means that the Request form user does not necessarily have to select an option from this drop down list when it appears. To make this clear, [select option] is displayed as the default value whenever this code table is first displayed. If the form user does not select a value other than [select option], no value will be recorded in the RefTracker database for this use of this code table. Setting a code table to Optional provides the greatest level of flexibility because it allows the enable/disable status of this Code table to be independently set in the Data dictionary and Request forms, to be Mandatory for some uses, Optional for others, and Disabled for still others. When changing a code table to Optional you are also given the opportunity to individually set how this will cascade to the individual uses of this field, in the code table change confirmation screen.
Code tables that you are no longer using in your RefTracker system can be Disabled and they will disappear from use throughout the product. System Code tables cannot be Disabled.
Exercise:
In the User defined question code tables (as an example) select a code table to that you want to start using and enable it. Most commonly you will enable a Code table by setting it to Optional, so let’s choose to set it to Optional.

When you click on Update, the system will show a confirmation screen, that explains the consequences of your decision – which is that, except for DeskStats, all existing uses of this field in the Data dictionary, and Request forms will also be set to the enabled status that you have chosen (e.g. Optional) but the screen allows you to override this, use by use.
You can see from the screen below that the system knows that this field can be used in both the Question and the DeskStats data Data dictionary tables, and it has not yet been used in any Request forms.
Enabling this field in the Question table allows data to be collected in this field in full questions (via Request forms so it will appear in the fields able to be used when designing Request forms as a result of having enabled it here).Enabling this field in the DeskStats data table will result in the field appearing in the Details section at the top of the DeskStats screen so that it can be used for data collection in DeskStats. Most code tables that you enable do not need to be enabled in DeskStats and the system reflects that by automatically suggesting that this code table should be disabled in the DeskStats data table, but set to Optional in the Question table.
If you want to change the suggested statuses provided by this screen, you can use this confirmation screen to make individual changes, use by use. You cannot change fields that have been set to Hidden in the Request form, in this screen. To change hidden fields, change them in the appropriate request form.
When you are happy with your choices click on Confirm update and only then will the changes actually be made.
If you are viewing the [uses] of a code table, this screen will display in a sub window with no ability to change the table’s availability.

Changing the enabled status of a code table
If the code table for which you are changing the enabled status had been used in Request forms, all tables that it is used in, AND all Request forms that use it, will be listed in this confirmation this screen, and all such uses would automatically have the use of this field changed to your new selection, unless you make individual changes in the confirmation screen. If you are changing to a new enabled status the system will allow you to individually set the enabled status for each use. If you are disabling the code table, you will be able to clearly see where it will be removed from.
The importance of these automatically cascading changes is that it makes it very easy to implement a policy change. For example if your library decides that it no longer needs to collect information about the client’s reason for using the library (the Reason Code table), all you need to do is change the Reason code table to Disabled, and it will be automatically disabled in the Data dictionary, and all uses of it in your Request forms will also be automatically Disabled so that they no longer appear!
Making a “global” change for the code table like this saves a lot of work in manually editing all of its individual uses, especially if it is used in several Request forms.
Here is an example where a code table that is used in both the DeskStats and Question Data dictionary tables, and several request forms, is being changed from Mandatory to Optional.
- Always check the DeskStats table status as it is common that you will want a different status for the code table in DeskStats (e.g. Disabled).
- It is likely that some of the uses in Request forms will still need to be Mandatory, and you can achieve that by simply setting those entries back to Mandatory in the “New” column.
- Click “Confirm update” to make the changes. The changes are not made until you click “Confirm update”.

When you confirm the change to the code table’s enable status, the code table summary screen will redisplay. If you are enabling a code table that was previously disabled, the name of the selected code table becomes highlighted (hyperlinked) which means that you can now click on that name to see the details of that code table.

When you are disabling a code table, the confirmation screen serves as an important warning as to all of the places that the code table will be removed from. As you are disabling the code table there is no option to make last minute changes in the confirmation screen. If you decide the change is inappropriate given the information in the confirmation screen, do not click the “Confirm update” button. The change is not actually made until that button is clicked.
Exercise:
When you have confirmed the change, click on the name of the code table that you are setting up. The code table maintenance screen will display.