$TXT Created by MERRILL,JEREMY at DAYT17.FO-BAYPINES.MED.VA.GOV (KIDS) on Monday, 03/26/07 at 12:32 ============================================================================= Run Date: APR 11, 2007 Designation: OR*3*245 Package : OR - ORDER ENTRY/RESULTS REPORTING Priority: Mandatory Version : 3 SEQ #243 Status: Released Compliance Date: MAY 12, 2007 ============================================================================= Associated patches: (v)OR*3*215 <<= must be installed BEFORE `OR*3*245' Subject: EDIT QUICK ORDERS BY USER Category: - Routine - Data Dictionary Description: ============ This patch adds a new menu option to the ORCM MGMT "Order Menu Management" menu, ORCM QUICK ORDERS BY USER "Edit personal quick orders by user". It also corrects a number of problems related to editing entries in the ORDER DIALOG file (#101.41). ASSOCIATED REMEDY/NOIS TICKETS: ============================== HD0000000070924 - MAR-0804-20796 Personal Quick Orders/Consults HD0000000130403 - DELETING QUICK ORDERS ASSOCIATED PATIENT SAFETY ISSUE(S): ================================== PSI 05-093 - Personal Quick Orders/Consults Saved with patient information ASSOCIATED NSR(s): ================= N/A DATA DICTIONARY CHANGES: ======================= A "C" whole file cross reference will be added to the QUICK ORDER field (#.01) of the QUICK ORDER multiple (#101.441) of the ORDER QUICK VIEW file (#101.44). TEMPLATES: ========= N/A PARTICIPATING TEST SITES: ========================= Maryland HCS Northern California HCS Palo Alto HCS PSI/REMEDY/NOIS TICKET OVERVIEW: =============================== 1. HD0000000070924 - MAR-0804-20796 Personal Quick Orders/Consults PSI 05-093 - Personal Quick Orders/Consults Saved with patient information Problem #1 ---------- Both the Remedy ticket and PSI report a problem with using Patient Data Objects in personal quick orders. When these quick orders are saved, the current patient's data was saved as part of the quick order definition, rather than the patient data object used to create the quick order. When the personal quick order is used on subsequent patients, the prior patient's data is inserted into the chart. Resolution #1 ------------- While the bulk of this issue has been addressed in OR*3*215, this patch has been created to provide clinical application coordinators with a tool to help track down and correct existing personal quick order definitions with patient data. The ORCM QUICK ORDERS BY USER option, "Edit personal quick orders by user", is being added to the ORCM MGMT "Order Menu Management" menu. This option can provide a list of only those users with personal quick orders, and will list a user's personal quick orders broken down by display group, displaying the same name shown in CPRS. The actual editing of a personal quick order utilizes the same code as the ORCM QUICK ORDERS "Enter/edit quick orders" option. If you attempt to edit a personal quick order that is shared by more than one user, a warning will display a list of all affected users, with the expectation that all users will be notified of any changes made to the personal quick order. 2. HD0000000130403 - DELETING QUICK ORDERS Problem #2 ---------- Using the ORCM QUICK ORDERS "Enter/edit quick orders" option, on the ORCM MGMT menu, to delete quick orders, was leaving dangling pointers in the ORDER QUICK VIEW file (#101.44), which can cause access violations in CPRS. Resolution #2 ------------- Deleting personal quick orders from the ORCM QUICK ORDERS option, as well as from the new ORCM QUICK ORDERS BY USER option, will now remove corresponding entries in the ORDER QUICK VIEW file (#101.44). Also, the ability to delete entries from the ORDER DIALOG file (#101.41) has been disabled from several core options on the ORCM MGMT menu, with the exception of prompts and person quick orders. Note that while personal quick orders can be deleted, standard quick orders can not. When attempting to delete other types of entries in the ORDER DIALOG file, the user is informed that deletion is not allowed, and is given the option of disabling the entry. The reason for removing the ability to delete these entries is to prevent additional dangling pointers in other files, namely the ORDER file (#100), the OE/RR RELEASE EVENTS file (#100.5), the DISPLAY GROUP file (#100.98), and the REMINDER DIALOG file (#801.41). Entries can still be deleted from FileMan, although the user should utilize the ability of FileMan to update references in other files that 'Point To' the entry being deleted. Problem #3 ---------- Personal quick orders generate an internal name that is unique to the values of prompt responses. This name is stored as part of the quick order definition. When another user creates a personal quick order with identical prompt responses, the same internal name is generated. When these internal names match, the same quick order definition is used in the ORDER DIALOG file (#101.41) for both users, rather than saving the quick order definition twice. The problem is, when response values in the quick order definition are modified, through quick order editing options, or through FileMan, the internal name of the quick order is not updated accordingly. When another user creates a personal quick that generates the same internal name, the responses will no longer match, which creates a broken quick order that will not function and can cause access violations in CPRS. Resolution #3 ------------- When a personal quick order's responses are modified through quick order editing options, the internal name will be updated with a new name based on the response values. For quick orders that are modified by FileMan, or were modified before this patch was installed, the quick order will be renamed when a new quick order is saved with the same internal name, but different response values. TECHNICAL: ========= The new routine, ORCMEDT7, provides the functionality provided by the ORCM QUICK ORDERS BY USER option, "Edit personal quick orders by user". The new routine, ORCRC, has been added to duplicate the same cyclic redundancy check algorithm used in CPRS to generate hash codes. The CRC4ARRY^ORCRC entry point returns the same result as the CRCForStrings function call in the ORFn unit in the Delphi source code of CPRS. The new routine, ORCMEDT8, is used to create a hash code for personal quick orders. The UPDQNAME^ORCMEDT8 entry point is used to rename a personal quick order based on it's prompt values. NAME^ORCMEDT4 has been modified to prevent the user from manually renaming a personal quick order outside of FileMan. It also enforces the new deletion rules. A change to code used by CPRS when saving personal quick orders, in QVSAVE^ORWUL, was needed because of the new cross reference. Modifications to QCK0^ORCMEDT1 have been made to automatically rename a personal quick order if a personal quick order's prompt values have changed after a personal quick order has been edited. DLGSAVE^ORWDXQ was modified to rename an old quick order with the same hash code as a quick order that the user was attempting to save, that had different prompt values. MATCH^ORWDXQ was also modified to fix a bug that could cause CPRS to crash when comparing two mismatched quick order definitions. The post install routine, ORY245, is called to link the ORCM QUICK ORDERS BY USER option to the ORCM MGMT menu DATA DICTIONARY CHANGES - TECHNICAL: =================================== The data dictionary will be modified to add a "C" whole file cross reference to the QUICK ORDER field (#.01) of the QUICK ORDER multiple (#101.441) of the ORDER QUICK VIEW file (#101.44). Below are the before and after data dictionary values: Before: ------- 101.441,.01 QUICK ORDER 0;1 POINTER TO ORDER DIALOG FILE (#101.41) (Multiply asked) LAST EDITED: OCT 23, 2000 HELP-PROMPT: Select a quick order. DESCRIPTION: This points to a quick order in the Order Dialog file (101.41). After: ------ 101.441,.01 QUICK ORDER 0;1 POINTER TO ORDER DIALOG FILE (#101.41) (Multiply asked) LAST EDITED: FEB 27, 2006 HELP-PROMPT: Select a quick order. DESCRIPTION: This points to a quick order in the Order Dialog file (101.41). CROSS-REFERENCE: 101.44^C 1)= S ^ORD(101.44,"C",$E(X,1,30),DA(1),DA)="" 2)= K ^ORD(101.44,"C",$E(X,1,30),DA(1),DA) This cross reference is used to ensure that quick order views of personal quick orders are deleted when personal quick orders are deleted. DISTRIBUTION: ============= The KIDS build is linked to this message. Documentation Retrieval: ======================== Computerized Patient Record System (CPRS) Setup Guide has been modified to include instructions on how to use the new option, ORCM QUICK ORDERS BY USER [Edit personal quick orders by user] The revised Computerized Patient Record System (CPRS) Setup Guide is available on the ANONYMOUS.SOFTWARE directory at one of the following Office of Information (OI) Field Offices. This file needs to be retrieved in binary format. Sites may retrieve documentation in one of the following ways: (1) The preferred method is to FTP the files from download.vista.med.va.gov, which will transmit the files from the first available FTP server. (2) Sites may also elect to retrieve documentation directly from a specific server as follows: Albany ftp.fo-albany.med.va.gov Hines ftp.fo-hines.med.va.gov Salt Lake City ftp.fo-slc.med.va.gov The documentation distribution includes: FILE NAME ========= Comp_Patient_Recrd_Sys(CPRS)/cprssetup.pdf DESCRIPTION =========== Computerized Patient Record System (CPRS) Setup Guide FORMAT ====== Binary INSTALLATION INSTRUCTIONS: ========================= This patch may be installed with users on the system; however, it should be installed at a non-peak time to minimize disruption to the users. Installation of this patch will take less than 5 minutes. 1. Use the INSTALL/CHECK MESSAGE option on the PackMan menu. [Note: TEXT PRINT/DISPLAY option in the PackMan menu will display the patch text only]. 2. From the Kernel Installation and Distribution System (KIDS) menu, select the Installation menu. 3. From the Installation menu, you may elect to use the following options (when prompted for INSTALL NAME, enter OR*3*245): a. Backup a Transport Global - this option will create a backup message of any routines exported with the patch. It will NOT backup any other changes such as DDs or templates. b. Compare Transport Global to Current System - this option will allow you to view all changes that will be made when the patch is installed. It compares all components of the patch (routines, DDs, templates, etc.). c. Verify Checksums in Transport Global - this option will allow you to ensure the integrity of the routines that are in the transport global. d. Print Transport Global - this option will allow you to view the components of the KIDS build. 4. Use the Install Package(s) option and select the package OR*3*245. 5. When prompted 'Want KIDS to INHIBIT LOGONs during the install? YES//', respond NO. 6. When prompted 'Want to DISABLE Scheduled Options, Menu Options, and Protocols? YES//', respond NO. ROUTINE SUMMARY: =============== The following routines are included in this patch. The second line of each of these routines now looks like: ;;3.0;ORDER ENTRY/RESULTS REPORTING;**[Patch List]**;Dec 17, 1997 CHECK^XTSUMBLD results Routine name Before Patch After Patch Patch List ============ ============ =========== ========== ORCMEDT1 17096324 17722825 8,46,57,95,110,245 ORCMEDT4 14289918 16952320 8,46,95,245 ORCMEDT7 N/A 11620460 245 ORCMEDT8 N/A 12951266 245 ORCRC N/A 8885689 245 ORWDXQ 4995585 5180789 10,85,245 ORWUL 10153792 10453227 85,117,131,132,164,215,245 ORY245 N/A 3622877 245 Routine Information: ==================== The checksums below are new checksums, and can be checked with CHECK1^XTSUMBLD. Routine Name: ORCMEDT1 Before: B41953303 After: B43946134 **8,46,57,95,110,245** Routine Name: ORCMEDT4 Before: B44329090 After: B65048297 **8,46,95,245** Routine Name: ORCMEDT7 Before: n/a After: B52953829 **245** Routine Name: ORCMEDT8 Before: n/a After: B76519203 **245** Routine Name: ORCRC Before: n/a After: B33261642 **245** Routine Name: ORWDXQ Before: B13199017 After: B14448552 **10,85,245** Routine Name: ORWUL Before: B48138721 After: B51080306 **85,117,131,132,164,215,245** Routine Name: ORY245 Before: n/a After: B5769223 **245** ============================================================================= User Information: Entered By : MERRILL,JEREMY Date Entered : DEC 15, 2005 Completed By: GOLDSMITH,JAMES H Date Completed: APR 02, 2007 Released By : PIERSON,YVONNE E Date Released : APR 11, 2007 ============================================================================= Packman Mail Message: ===================== $END TXT