MEDSPHERE FILEMAN VERSION 1051 All enhancements are designed to be backwards-compatible with IHS, DSS, and VA FileMan. Run ^DINIT to install. If you are re-running ^DINIT, there is a new question, "Do you want to change the MUMPS OPERATING SYSTEM File? NO//" Answering YES will give you a larger maximum routine size than formerly. It will also allow FileMan to calculate the highest-valued character on Cache and GT.M systems. New in Version 1046 is an entry point, NOASK^DINIT, that can be called to do the usual "init" without asking for input from the user. One could set up this call to run during off hours. Although MSC FileMan is usually run with some form of the VA Kernel (MenuMan, Device Handler, etc), it can also be used stand-alone on any Standard MUMPS system. If you are installing FileMan for the first time in a non-VistA environment: Save the DIIS routine as "%ZIS" Save the DIDT routine as "%DT" Save the DIDTC routine as "%DTC" Save the DIRCR routine as "%RCR" Save the DIISC routine as "%ZISC" Save the DIISS routine as "%ZISS" Principal enhancements: 1. SCREENMAN ENHANCEMENTS: -Mouse is now usable when running ScreenMan forms. To use mouse with ScreenMan forms, your terminal emulator needs to be able to receive ANSI standard control sequences to turn mouse on and off. Set up PuTTY so that KEYBOARD is in "VT100+ mode". Once you are in a ScreenMan FORM, click mouse at COMMAND LINE. If you do NOT want ScreenMan to recognize mouse clicks, use the Kernel PARAMETER (set up by running ^DINIT) that is named "DI SCREENMAN NO MOUSE" -ScreenMan RECORD SELECTION PAGE can now be a full ScreenMan page using a COMPUTED MULTIPLE POINTER, so that user selects entry by scrolling up or down. You can set up such a RECORD SELECTION PAGE automatically when you create a Form; answer the query "Do you want your Form to begin with a display of all entries, for selection" with "YES". -INITIAL POSITION can be set to be USER's last selection, rather than FIRST, LAST, or NEW. -Multiples within a single ScreenMan page can now be more than one line deep. -CUSTOMIZE COLORS suboption within ScreenMan allows selection of ANSI colors for all ScreenMan presentations, on a Parameterized basis (USER, INSTITUTION, etc) -Editing a ScreenMan word-processing page ends if user enters two empty lines, so that "F1-E" is not required to leave the page. -On a page leading to a word-processing page, a "+" indicates that there is already data in the Word-Processing field. -"F1-P" allows printing of Screen (including all multiples). 2. INTERNATIONALIZATION: -Many new DIALOGs handle all end-user interactions -FILE NAMES, FIELD LABELS, SET VALUES, and HELP MESSAGES can be entered into the ^DD schema for any of the languages listed in File .85. To enter Spanish, DO SPANISH^DIALOGZ -Formatting of date output is now consistently done throughout all the end-user routines. Changing the global node ^DD("DD") will change the way all FileMan dates are output. Re-running ^DINIT will not change this node. -International date input ("I" parameter) allows alpha dates and forms like "2010-1-31", "20100131" -Upper/lowercase translations is consistently handled. LANGUAGE File algorithm for conversion to uppercase is now used when DUZ("LANG") is greater than 1 (English). -LANGUAGE File now can store two-and three-letter abbreviations for languages. 3. DATA ANALYSIS TOOLS: -Fourth DATA DICTIONARY UTILITY ('FIND POINTERS INTO A FILE') checks all files with pointers into a given File. Gives 4 kinds of output (here using PATIENT File as an example): Pointers to: 1 One particular PATIENT Entry 2 All PATIENT Entries 3 Non-existent PATIENT Entries 4 Entries from a PATIENT Search Template -Data Dictionary changes are always audited (in File .6); no need to turn on DD auditing file-by-file. -'SHOW PAST CHANGES TO DD'S' AUDITING sub-option shows all Data Dictionary changes since a certain date. -'MONITOR A USER'is now the second AUDITING option: shows every entry in an audited file touched by a given user. -Run ^DDD to set up a META-DATA-DICTIONARY as File .9. This File cross-references all fields in all other Files. -VERIFY FIELDS Utility is improved to check cross-references better. It is also interruptible with "^" input. -Third "TRANSFER" sub-option allows comparing Data and data dictionaries across namespaces (UCIs). -Third DATA DICTIONARY UTILITY('CHECK/FIX DD STRUCTURE') now produces much more readable (less verbose) output. -DIVRPTR utility routine checks pointers better. 4. OUTPUT ENHANCEMENTS: -FileMan output consistently obeys the value of IOSL, to allow for terminal emulators that are deeper than 24 lines. -'START WITH' and 'GO TO' answers, specifying the range of sort values at all levels of output, can now be answered with COMPUTED EXPRESSIONS preceded by the "@" character. Thus "START WITH DATE: FIRST//@MONTH(TODAY)" produces output starting with the current month, even when this print logic is stored in a Sort Template and used subsequently. -BUILDNEW^DIBTED API can be called to create silently a new SORT TEMPLATE. -When you specify a PRINT FIELD in FileMan output, you can now attach the Specifier ";B" to the field name or number. If the field is a multiple field, or the .01 field of a multiple, and if there is a "B" cross-reference on the multiple field, then the multiples will list in name order, rather than in internal-entry-number order, as they always have previously. -LIST^DIC and FIND^DIC can include COMPUTED EXPRESSIONS (not just field numbers) in third argument. -LIST^DIC and FIND^DIC can now take an 'E' parameter. If this parameter is present, the complete requested list of entries will be returned by the APIs, even if errors are encountered in the data brought along. Previously, a partial (and therefore misleading) list would be returned. -The eighth parameter ("INDEX") of LIST^DIC can now be the [bracketed] name of a SORT TEMPLATE, so long as the template does not require input from the user at run time ("SHOULD TEMPLATE USER BE ASKED 'FROM'-'TO' RANGE?// NO"). "INDEX" may also be the (name or) number of a field, or a COMPUTED EXPRESSION. To make this new functionality work, you will have to add an "X" to the FLAGS parameter, the fourth parameter in the call. 5. OTHER ENHANCEMENTS: -Word-Processing Fields are AUDITABLE and can be made UNEDITABLE. -Input, Print and Sort Templates can be designated as "CANONIC" for their Files. A CANONIC Template name appears as the default in "Edit", "Inquire" and "Print" user dialogues. -Standard FileMan lookup ("DIC") allows a new kind of internal-entry-number input, the 'double-grave'. This applies only to files whose .01 fields point to other files, for example File 52.11, the "PATIENT NOTIFICATION (Rx READY)" File. To select an entry (or entries) in this file pointing to internal entry number 8 in the PATIENT file, enter this: Select PATIENT NOTIFICATION (Rx READY): ``8 -Patch 127 (never released by DVA) allows developer to store explicit maximum length of FREE-TEXT field, even if definition is 'uneditable' -IDENTIFIER Fields can be designated as "display-only", so that their values are NOT asked when creating ("LAYGOing") a new Entry or sub-Entry. -^DD("STRING_LIMIT"), if it is present (set directly by programmer), overrides the normal 255-character limit on the length of data in Globals. Thus, for example, one can establish SET fields with a greater number of values than previously would have fit in a single node of ^DD. -MUMPS OPERATING SYSTEM file contains many new field definitions. 6. BUG FIXES (recent): -%RCR correctly copies nodes whose names include the variable 'X' (refile DIRCR!). -ScreenMan's legacy 'RECORD SELECTION PAGE' logic, where only a single entry name showed, is now repaired. For new FORMs, use of the new full-list logic (see above) is recommended. -$$FIND1^DIC will now correctly find a long value (greater than 30 characters) that names an entry in a File like 101 (PROTOCOL) which is pointed to by a multiple.