DI*22.0*1 (2367)    BUILD (9.6)

Name Value
NAME DI*22.0*1
DATE DISTRIBUTED 1999-06-15 00:00:00
PACKAGE FILE LINK VA FILEMAN
REQUIRED BUILD
  • VA FILEMAN 22.0
    ACTION:   Don't install, leave global
TYPE SINGLE PACKAGE
ALPHA/BETA TESTING NO
DESCRIPTION OF ENHANCEMENTS
After V22 of VA FileMan was released to National VistA Support (NVS) for
 
   set logic are executed, the X1(order#) array contains the old field
   values, and the X2(order#) array contains the new field values. If a
   record is being added, and there is an X1(order#) array element that
   corresponds to the .01 field, it is set to null. When a record is
   deleted, all X2(order#) array elements are null.
 
Since the KIDS build for this patch brings in these fields automatically,
there is no need to rerun DINIT after installing this patch.
  
  
Routine: DICOMPV 
NOIS 
====
 HAM-0499-21392
 PHO-1198-62053
 FNC-0599-30750
 
Thanks to Test Sites 
====================
 Hampton, VA
 White City, OR
Bug: It was discovered that when using a Backward Extended Pointer and the
 Fayetteville, NC
 White River Junction, VT
 
Routine Summary: 
================
 The following routines are included in this patch.  The second line of 
these routines now look like: 
  
  <tab>;;22.0;VA FileMan;**[patch list]**;Mar 30, 1999 
  
file that was being jumped to had a DINUMed .01 field back to the
CHECK^XTSUMBLD results: 
  
  Routine Name   Before Patch    After Patch     Patch List 
  ============   ============    ===========     ==========
  DIC1           7920273         8396997         1
  DIC11          3133605         3318576         1
  DIC3           8044472         8138582         1
  DICA           8337676         8300985         1
  DICA1          7134262         7156598         1
  DICATTD        9780938         9786273         1
originating file, a jump was not being allowed.  
  DICOMPV        8888896         8426523         1
  DIE            10522278        10606815        1
  DIE1           10102666        10290843        1
  DIEF           11594187        11950704        1
  DIEFW          3026875         3026694         1
  DIEZ           9351704         9378294         1
  DIFROMSX       3683091         3497120         1
  DIFROMSY       3656754         3974102         1
  DIK1           6155873         6302851         1
  DIKC           11169535        11836728        1
 
  DIKZ1          9229373         9451304         1
  DINIT2A1       13956613        14321834        1
  DINIT2A2       12584241        14203695        1
  DINIT2A3       14285423        13176711        1
  DINIT2A4       2212843         9326344         1
  DIR1           11551993        11554966        1
 
    
Installation Instructions: 
==========================
Routine: DIC3
** It is HIGHLY recommended that ALL Users and VISTA Background jobs to
be STOPPED.  Failure to do so may result in a 'source routine edited'
error, the edits will be lost and records may be left in an
inconsistent state.  
** 
 
     1.  AXP sites: Review your mapped routine set.  If any of the 
routine(s) listed in the ROUTINE SUMMARY section are mapped, they 
should be removed from the mapped set at this time.  
 
Bug: Input variable DIC("S") to the ^DIC routine altered local variable Y.
     2.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu.  
This option will load the KIDS package onto your system.  
 
The environment check routine DIENVWRN will run automatically.  Routine
DIENVWRN is sent in order to prevent the inadvertent queuing during the
installation of this patch.  
 
     3.  The patch has now been loaded into a transport global on your 
system. You now need to use KIDS to install the transport global.  
 
FileMan was not protecting Y and expected it to contain the record number
     4.  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 
 
     5.  Inhibit users' login into the system.  The consequence of 
having users on the system while installing this patch are that users 
editing records will get a 'source routine edited' error, the edits 
just looked-up, so the wrong value was displayed for the .01 field when
will be lost and records may be left in an inconsistent state.  Note 
that most of these routines are heavily used in DHCP applications.  
 
     6.  AXP Sites - Place TaskMan in a WAIT State.  
         OpenM/Cache Sites - STOP TaskMan.  
 
     7.  On the KIDS menu, under the 'Installation' menu, use the 
following option: 
            Select Installation Option: Install Package(s) 
            Select INSTALL NAME: DI*22.0*1 
field distribution several bugs were discovered at the test sites that
entries were presented to the end-user.
                                 ==========
 
            Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu 
Options, and Protocols? 
 
 
     8.  AXP Sites - After the patch has been installed, rebuild your 
map set, if necessary. 
 
     9.  AXP Sites - Remove TaskMan from WAIT State.  
 
         OpenM/Cache Sites - Restart TaskMan.  
 
    10.  Enable users' login.
Routines: DIC1, DIC11
Bug: When the internal value of a date, pointer or variable pointer is
passed as a default lookup value in input variable DIC("B") to the ^DIC
routine, it should be displayed to the end-user in external format.  This
worked in V21 but didn't in V22.
 
Routine: DIE
Bug: After a call to ^DIE with DR="[template name]", a ^TMP("DIE",number)
could affect various packages.  The following is list of the routine(s)
node was not being killed.
 
Routine: DIEZ
Bug: An undefined X variable error could occur during a KIDS installation,
when KIDS called FileMan to uncompile an input template.
 
Routines: DICA, DICA1
Bug: If an UPDATE^DIE call is made from within another UPDATE^DIE call
(for example, when the Updater executes a cross-reference that makes
another Updater call), the call could fail and Dialog file error messages
and the problem that was corrected: 
generated. Also the variable D was leaking out of UPDATE^DIE.
 
Routine: DIEFW
Bug: An undefined DIEFLOCK could occur if the Filer was called with the
"K" flag to do locking, and within that Filer call, a call was made to
WP^DIE (from within a cross-reference, for example) without the "K" flag.
 
Routines: DIFROMSX, DIFROMXY
Change: Before, if a partial DD was sent with KIDS and the file had KEYs,
all of the field definitions for the KEY fields had to be sent.  We
 
decided that wasn't necessary, so after this patch, the field definition
for a key field must be sent only if the key is compound and other
field(s) in the key are being sent.
 
Routines: DIK1, DIKZ1
Bug: The ^DIK entry points did not have time-outs on the Lock commands
they issued.
 
Routine: DIR1
Bug: MAS patch DG*5.3*149 brought new code into routine DGREG.  The old
Routine: DICATTD
code directly executed the input transform from subfile 2.101, field .01
to check the validity of a value entered by the user (in X). The new code
instead calls CHK^DIE (which also executes the input transform) to check
the validity of the value. The input transform code for this field sets
the variable DINUM.  The MAS code at REG+2^DGREG then uses DINUM.  In
version 22, FileMan NEWs DINUM in the CHK^DIE call before executing the
input transform, because DINUM is not a documented output variable, and
because it is a dangerous variable to leave around.  MAS does not have
time to patch their code before the planned release of version 22, so
FileMan will temporarily 'leak' DINUM in order to avoid a hard error.
Bug: When using the option Modify File Attributes AND used the
After MAS patches their code, FileMan will issue another patch to restore
the NEW DINUM.
 
Routines: DIE1, DIEF, DIKC
Bug: If there is an X1 array element corresponding to the .01 field in the
new-style Index logic or condition, make sure it is set to null if the
record is being added.
 
Routines: DINIT2A1, DINIT2A2, DINIT2A3, DINIT2A4
Bug: These DINIT routines fix a typo on the description of the following
Screen-Mode version AND were adding a Free Text multiple, the 2nd piece of
field in the Cross-Reference Values multiple of the Index file (#.11):
 
   11.1  Cross-Reference Values (Multiple-.114)
         4.5  Computed Code
  
         was: "Answer with M code that set X..."
   should be: "Answer with M code that sets X..."
 
The DINIT routines also add information about the X1 and X2 arrays to the
descriptions of the following fields in the Index file (#.11):
the 0 node of the DD would be corrupted.
  
   1.1  Set Logic
   1.4  Set Condition Code
   2.1  Kill Logic
   2.4  Kill Condition Code
  
 For each of the above fields, the following paragraph was appended to the
 description:
 
   When fields that make up a cross-reference are edited and the kill and
TRACK PACKAGE NATIONALLY YES
FILE
  • DD NUMBER:
    • INDEX (File-top level)
      FIELD NUMBER:
      • SET LOGIC
      • SET CONDITION CODE
      • KILL LOGIC
      • KILL CONDITION CODE
    • CROSS-REFERENCE VALUES (sub-file)
      FIELD NUMBER:
      • COMPUTED CODE
    UPDATE THE DATA DICTIONARY:   YES
    SEND SECURITY CODE:   NO
    SEND FULL OR PARTIAL DD:   PARTIAL
    DATA COMES WITH FILE:   NO
BUILD COMPONENTS
  • ENTRIES:
    • DIC1
      ACTION:   SEND TO SITE
      CHECKSUM:   B30024259
    • DIK1
      ACTION:   SEND TO SITE
      CHECKSUM:   B11537806
    • DIKZ1
      ACTION:   SEND TO SITE
      CHECKSUM:   B13935787
    • DIE
      ACTION:   SEND TO SITE
      CHECKSUM:   B20603879
    • DICATTD
      ACTION:   SEND TO SITE
      CHECKSUM:   B19509652
    • DIR1
      ACTION:   SEND TO SITE
      CHECKSUM:   B24990304
    • DIEF
      ACTION:   SEND TO SITE
      CHECKSUM:   B43186543
    • DIE1
      ACTION:   SEND TO SITE
      CHECKSUM:   B28608832
    • DINIT2A1
      ACTION:   SEND TO SITE
      CHECKSUM:   B60024148
    • DINIT2A2
      ACTION:   SEND TO SITE
      CHECKSUM:   B58044793
    • DINIT2A3
      ACTION:   SEND TO SITE
      CHECKSUM:   B63046438
    • DIC11
      ACTION:   SEND TO SITE
      CHECKSUM:   B6844745
    • DINIT2A4
      ACTION:   SEND TO SITE
      CHECKSUM:   B27310091
    • DIKC
      ACTION:   SEND TO SITE
      CHECKSUM:   B56640852
    • DIFROMSX
      ACTION:   SEND TO SITE
      CHECKSUM:   B8680744
    • DIFROMSY
      ACTION:   SEND TO SITE
      CHECKSUM:   B9559384
    • DIC3
      ACTION:   SEND TO SITE
      CHECKSUM:   B32343444
    • DICA
      ACTION:   SEND TO SITE
      CHECKSUM:   B40342691
    • DICA1
      ACTION:   SEND TO SITE
      CHECKSUM:   B22861458
    • DICOMPV
      ACTION:   SEND TO SITE
      CHECKSUM:   B13006509
    • DIEFW
      ACTION:   SEND TO SITE
      CHECKSUM:   B5805916
    • DIEZ
      ACTION:   SEND TO SITE
      CHECKSUM:   B18389486
ENVIRONMENT CHECK ROUTINE DIENVWRN