V11 Order and Result Dictionary Build and Synchronization

From Galen Healthcare Solutions - Allscripts TouchWorks EHR Wiki
Revision as of 23:02, 4 October 2007 by Jason.Carmichael (talk | contribs)
Jump to navigation Jump to search


This page is designed to walk someone through the build process for the TouchWorks v11 Order and Results dictionary build. In TouchWorks v11 you have to syncronize your order and result items with the Touchworks Order Concept Dictionary (OCD) in order for things such as care plans and specialty favorites to work correctly with orders. If you are using multiple vendors, you also must go through the process of syncronizing the multiple vendors together. Once you have the order side complete, you must go through the process of syncronizing results to the Results Concept Dictionary (RCD).

Step 1: Request the Order/Result Compendium from the various vendors

The first step is to gather the order/result compendiums from the various lab vendors. In most cases people will ask for a utilization report and only focus their effort on the top 80% of labs ordered for their locations. There are a bunch of possible orders that aren't used often or at all, so it can cut down on the effort and future maintenance if you focus your efforts. If you do use this approach, you will need to have a process for ordering labs not found in the system, which will most likely be the current paper process. When the results are returned through the interface the dictionary values may need to be enered for the results to file.

When requesting the compendium from the vendor, be sure to ask for CPT4 and LOINC codes as well. This helps dramatically when going through the sycronization process. This will allow you to group the various vendors by CPT4 and/or LOINC and help determine which orders are indeed the same. It is not always one for one, but it usually narrows it quite a bit.

Step 2: Pick a Master Vendor

The next step is probably the easiest, pick your master vendor. In most cases a medical group has a lab that they utilize the most and that is typically the best choice. Overall you want to choose the Lab vendor that has the most codes and preferably the cleanist compendium. This vendor that you choose will be loaded as the primary lab vendor and will be the vendor that gets loaded into the Order Item Dictionary OID. It it ok if the primary vendor doesn't have every sigle item that your other vendors will need, but it should be more than 50% of the distinct tests.

Step 3: Build the OID dictionary for you primary vendor

To begin building the OID dictionary for TouchWorks you should begin by getting the unique list of Order codes from your primary Lab vendors compendium. This does not include any of the resultables that are tied to the Orderable, just the actual test name and it's underlying information.

Once you have the unique list of Orderables, you must insert the data into the corresponding SSMT spreadsheet. For this dictionary, you want the SSMT spreadsheet named "OID - Orderable Item". To get the Headers for this spreadsheet, I would recommend extracting the spreadsheet from the TouchWorks Database using SSMT and ensureing that the "Show Headers in Extracted Data?" option is selected. There have been many times where the headers at the bottom of the screen have differed from the actual needed headers. Returning them during the extraction seems to be more reliable.

The OID - Orderable Item Dictionary

The OID columns and descriptions for TW 11.0.1 are as folows:

  • OrderCode - This is the code or unique identifier that the Lab Vendor specifies in their compendium. When entering this value into the spreadsheet it is advisable to use a preffix or suffix that will identify it as your Lab vendors code specifically. For example, if LabCorp provides a Code of 005009 for a CBC, you should add this in the spreadsheet as L005009 or 005009L. This ensures uniqness and also helps identify the source easily. When you do this, you must let your Interface representitve know that the code needs to be stripped on outbound interface messages and inserted for inbound result or order messages.
  • OrderName - This is the name of the test provided from the vendors compendium. This is only the name that appears in TouchWorks if a Display Name is not provided for the entry in this spreadsheet (coming up in a bit)
  • OrderMenmonic - This used to be displayed in the TouchWorks application, but at this point it does not appear to display anywhere. In this case it is best to make it the same as the order code, but some people may want to make it a shorter version of the name.
  • IsInactiveFlag - This indicates whether the test is active or not. If set to 'Y' it is considered inactive, so in most cases you'll want this set to 'N' if you're loading new entries.
  • Display Name - This allows you to specify a common display name for the Order instead of using the vendors name. This only needs to be supplied if you want to have a different name than the Order Name.
  • OCDCode - This is the code from the Order Concept Dictionary that the entry is tied to. For the intial load, this will be a 0, but once you go through the later step of syncronizing Orders to the OCD, this would be populated with that corresponding code and you would see that if you extract the data.
  • IsClassificationOnlyFLAG - This is only set to 'Y' for entries that are defined as a Parent Class or Category. These entries are loaded so you can group tests together such as Chemistry, Toxicology, or Pathology. Allscripts delivers the system with some general classifications, but you are free to add others. Besides organizing the dictionary, this also can help determine where lab items will show in the ChartViewer when using the Section by Sub-Section view. In the Manage Sections portion of TWAdmin, you can assign Orders by class to a particular folder. For the most part you would want to load these entries with this column set to 'N'.
  • ComplexOrderIndicator - For lab entries, this is typically going to be set to 'N'. If an Orderable is set to 'Y' it means that it is a complex order. A complex order is only used for Orders that contain multiple Orderables and is typically only used for itmes such as Vital Sign Views.
  • OrderableSource - This column determines the methods that an order can be created from. The possible values are:
    *  User Only - This means that only a user can request the order
    *  Interface Only -  This means that the order can only be requested from an interface transaction
    *  User or Interface - This means that an Order can be requested by an interface transaction or a user
    *  Recorded Only - This means that an Order can be documented only and would not be printed or sent to the interface.

In most cases the OderableSource should be set to User or Interface unless you have a reason for the other options. Interfaced messages are primarily for Order Inbound interfaces from Lab Vendors. This would occur if the Lab changed the test that the physician ordered or if it's a reflex test and more orders were added to the original request.

  • OIDMode - There are three possible entries for this column. They are:
    *  Active - This means the OID entry is active and available to users
    *  Draft - This means that the OID entry is editable in the dictionary, but users cannot see the entry.  
       This would be used if you were in the process of completing entries and didn't want them viewable.
    *  No Longer Used - This essentially means it's inactive. 

In most cases you would want to load these items as Active unless you are loading them into production and don't want them available for the users yet.

  • ItemType - This column should be set to "RESULTS" for this spreadsheet.
  • ParentClass - This column should be set to the appropriate category for the particular test. For example a CBC would be filed under Hematology or a Lipid Panel would be under that classification of Chemistry. Allscripts provides some entires for this, but others can be added if necessary. You can determine the available entries by extracting the OID dictionary from SSMT and looking at all entries where the IsClassificationOnlyFLAG is 'Y'
  • OrderType - The Order Type is another level of groupings that organizes the data by the type or Order. These are Allscripts entries that cannot be modified. The possible entries are:
    *  Diagnostic Orders
    *  Imaging
    *  Supply
    *  Referral Orders
    *  Follow-Up Orders
    *  Lab
    *  Other
    *  Findings
    *  Patient Instructions
    *  Patient Precautions

Selecting the Order Type determines the type of task that will be generated when an order is created that requires additional information. For example if a Order is defined as a "Lab" Order Type, it will create a task type of "Order Info-Lab". This is used for various workflow situations to notify users that an action is required. for example, you may create an Order named "Follow-Up visit 2 Weeks" and require that a appointment date is entered to complete the order. This Order would be set to a type of "Follow-Up Orders". When the physician selects the order, it'll be saved, but an "Order Info-F/up" task would be created. That task would be seen by the checkout peson and as the patient leaves they would schedule an appointment and complete the additional information compnenet of that order to complete the order.

When loading items for a Lab Vendor, this should always be set to LAB.

  • QoModPickList - Some Orders may require information that have structured answers such as "yes" or "no". When that is the case, it is more efficient to create and utilize a picklist which only allows the user to select an option from the available entries in the drop down. This column is asking if a picklist is necessary for the Orderable item. If you would like to use one, enter the entryname of the picklist here.
  • QOModPicklistDefault - If you use a picklist, you can set a default answer. The answer must be an available entry in the picklist. If you want to set a default, enter the name of the entry in this column.