$TXT Created by BEUSCHEL,GARY at FM22-PATCH.FO-OAKLAND.MED.VA.GOV (KIDS) on Tuesday, 03/03/09 at 09:15 ============================================================================= Run Date: JUN 15, 2009 Designation: DI*22*157 Package : DI - VA FILEMAN Priority: Mandatory Version : 22 SEQ #140 Status: Released Compliance Date: JUL 16, 2009 ============================================================================= Associated patches: (v)DI*22*37 <<= must be installed BEFORE `DI*22*157' (v)DI*22*88 <<= must be installed BEFORE `DI*22*157' (v)DI*22*105 <<= must be installed BEFORE `DI*22*157' (v)DI*22*118 <<= must be installed BEFORE `DI*22*157' Subject: New FM FUNCTION and Other Fixes Category: - Routine - Enhancement (Mandatory) Description: ============ ** Notice: ** ** See "Installation Instructions" section for Installation Warning ** This patch addresses the following issues: 1. Deletes the FileMan function SETDATA. It is a security risk in that it could allow unauthorized altering of data. 2. Remedy Ticket 240260 (Add a new FileMan Function): NAME: DUPLICATED EXPLANATION: Takes name of a CROSS-REFERENCED field. Returns BOOLEAN value, 1=field value is duplicated in another entry, ""=field value is unique For example, in the PATIENT (#2) file, "DUPLICATED(NAME)" tells you whether a given patient has exactly the same NAME as another patient or patients. Example: If you want to print the name with 3 asterisks after it if it is a duplicated name: FIRST PRINT FIELD: NAME_$S(DUPLICATED(NAME):"***",1:"") Example: To search for duplicate SSNs: Select OPTION: SEARCH FILE ENTRIES OUTPUT FROM WHAT FILE: NEW PERSON// -A- SEARCH FOR NEW PERSON FIELD: DUPLICATED(SSN) -B- SEARCH FOR NEW PERSON FIELD: IF: A// DUPLICATED(SSN) STORE RESULTS OF SEARCH IN TEMPLATE: SORT BY: NAME// START WITH NAME: FIRST// FIRST PRINT FIELD: NUMBER THEN PRINT FIELD: NAME 1 NAME 2 NAME COMPONENTS CHOOSE 1-2: 1 NAME THEN PRINT FIELD: SSN THEN PRINT FIELD: Heading (S/C): NEW PERSON SEARCH// 3. Remedy Ticket: 64429 A trigger SET or KILL condition is not allowed to be MUMPS code. It is now. For example, "S X=$$MYAPI^MYPROG(DA)" is no longer rejected. (Routine DICE4) 4. Remedy Ticket: 295049 If a Word Processing field has a different label at the top level than at the lower level, and is part of a print template, if you try to edit the print template, an error will occur. This is fixed. (Routine DIPT) 5. Bug fix: If a field is triggered, and auditing is turned on for the field that is triggered, the data change is not entered into the AUDIT (#1.1) file. This is fixed. (Routine DICR) 6. Bug fix: If a user ^'s out or times out during an Indexes Only DD listing, it causes an UNDEF. This is fixed and the following no longer occurs: Select OPTION: DATA DICTIONARY UTILITIES Select DATA DICTIONARY UTILITY OPTION: LIST FILE ATTRIBUTES START WITH WHAT FILE: NEW PERSON// GO TO WHAT FILE: NEW PERSON// Select SUB-FILE: Select LISTING FORMAT: STANDARD// INDEXES ONLY What type of cross-reference (Traditional or New)? Both// ^ I +Y=8 D G:DIDTYP=""!(DIDFLD=-1) KL G G ^ O1+7^DID Documentation Changes ===================== The VA FileMan v22.0 Advanced User Manual has been updated to add the new FileMan DUPLICATED function and delete the SETDATA function. Blood Bank Clearance ==================== Clearance - Sep 17, 2008 EFFECT ON BLOOD BANK FUNCTIONAL REQUIREMENTS: Patch DI*22*157 contains changes to a package referenced in VHA OI SEPG SOP 192-023 Review of VISTA Patches for Effects on VISTA Blood Bank Software. This patch does not alter or modify any VistA Blood Bank software design safeguards or safety critical elements functions. RISK ANALYSIS: Changes made by patch DI*22*157 have no effect on Blood Bank software functionality, therefore RISK is none. Thanks to Test Sites ==================== Puget Sound HCS Central Texas HCS Biloxi, MS Routine Summary: ================ Please see the "Routine Information" section. *Note: Routine: DIPR157 issues a warning during the installation of this patch if it appears that TaskMan is still running and/or logons have not been inhibited. Installation Instructions: ========================= ** Although queuing of this patch is allowed, it is HIGHLY recommended that ALL Users be off the system and VISTA Background jobs be STOPPED before this patch is installed. TaskMan should be stopped or placed in a wait state. Failure to do so may result in 'source routine edited' errors during a database update. Edits may be lost and records may be left in an inconsistent state. An error that occurs before a cross- reference is executed, for example, may lead to corrupted data or hard errors in the future. ** The following installation instructions are based upon the premise that the installer has heeded the above warning. Installation should take less than a minute. 1. Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu. This option will load the KIDS package onto your system. 2. The patch has now been loaded into a transport global on your system. You now need to use KIDS to install the transport global. 3. On the KIDS menu, under the 'Installation' menu, use the following options: Print Transport Global Compare Transport Global to Current System Verify Checksums in Transport Global Backup a Transport Global 4. In accordance with the warning at the beginning of the installation instructions, make sure ALL interactive processes, and ALL non-interactive background jobs are stopped following your site specific procedures. TaskMan should be stopped or placed in a wait state. NOT performing this step could result in 'source routine edited' error during database updates, and records may be left in an inconsistent state. 5. On the KIDS menu, under the 'Installation' menu, use the following option: Select Installation Option: Install Package(s) Select INSTALL NAME: DI*22.0*157 =========== The Environment Check Routine DIPR157 runs automatically during this step. DIPR157 issues a warning if it appears that TaskMan is still running or logons have not been inhibited. You will also see: Checking Function(s) to be deleted from FUNCTION file ^DD("FUNC"... ...Checking for function SETDATA at IEN 57 ...Looks OK. We'll delete it in the Post-Init. Checking Function(s) to be added to FUNCTION file ^DD("FUNC"... ...Checking for function DUPLICATED at IEN 57 ...Found something at that IEN. Checking it out. ...It's SETDATA. We'll replace it with DUPLICATED in the Post-Init. Answer 'YES' to 'Want KIDS to INHIBIT LOGONs during the install?' Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu Options, and Protocols? During the Post-Install process, you will see: Deleting Function(s) from FUNCTION file ^DD("FUNC"... ...Checking for function SETDATA at IEN 57 ...Deleting Function SETDATA ... ...Deleted. Adding Function(s) to FUNCTION file ^DD("FUNC"... ...Checking for function DUPLICATED at IEN 57 ...Adding Function DUPLICATED ... ...Added. 6. Re-enable all processes stopped in step 4 above. Post Installation ================= Upon successful installation of this patch, routine DIPR157 may be deleted. Example ======= >D ^ZTRDEL ROUTINE DELETE All Routines? No => No Routine: DIPR157 Routine: 1 routine 1 routines to DELETE, OK: NO// Y DIPR157 Done. Routine Information: ==================== The second line of each of these routines now looks like: ;;22.0;VA FileMan;**[Patch List]**;Mar 30, 1999;Build 7 The checksums below are new checksums, and can be checked with CHECK1^XTSUMBLD. Routine Name: DICE4 Before: B9798732 After: B9783820 **6,37,157** Routine Name: DICOMP Before: B23483058 After: B24351991 **6,76,114,118,157** Routine Name: DICR Before: B21639589 After: B24140546 **11,88,157** Routine Name: DID Before: B55435936 After: B55438001 **24,105,157** Routine Name: DINIT42 Before: B27444033 After: B28933576 **76,157** Routine Name: DIPR157 Before: n/a After: B40792684 **157** Routine Name: DIPT Before: B13103055 After: B14839866 **157** Routine list of preceding patches: 37, 88, 105, 118 ============================================================================= User Information: Entered By : BEUSCHEL,GARY Date Entered : MAR 07, 2008 Completed By: SINGH,GURBIR Date Completed: JUN 11, 2009 Released By : HARROD,PAUL Date Released : JUN 15, 2009 ============================================================================= Packman Mail Message: ===================== $END TXT