DI*22.0*4 (2587)    BUILD (9.6)

Name Value
NAME DI*22.0*4
DATE DISTRIBUTED 1999-11-18 00:00:00
PACKAGE FILE LINK VA FILEMAN
REQUIRED BUILD
  • DI*22.0*1
    ACTION:   Don't install, leave global
  • DI*22.0*16
    ACTION:   Don't install, leave global
TYPE SINGLE PACKAGE
DESCRIPTION OF ENHANCEMENTS
This patch fixed a few minor bugs and adds some enhancements to correct
in the ^DIC lookup.  This will get them clear out of the lookup.
instead $O through the index on the pointer, so records will not be in
alphabetic sequence. This sequence was always used on pointers in V21.
NOIS: MAC-0999-63042
 
Routine: DIC5
-------------
When a numeric lookup value is entered and indexed field is a pointer,
make lookup by IEN work the way it did in version 21.  NOIS:
FGH-1099-30988, PTH-1099-21795, BHH-1099-41454
 
Previously, users wre able to enter a single up-arrow ^ but this only took
Routine: DIC3
-------------
Lookups on the DRUG file by synonym were selecting the right drug, but
displaying the wrong .01 field value. This happened when DIC(0) contained
an "O", there was more than one exact match on the SYNONYM index to the
lookup value, but all but one match were screened out by a DIC("S")
screen.  NOIS: BHH-1099-40749, CAH-1099-31208, ISB-1099-33134,
IOW-1099-42292, POP-1099-42462, TUC-1099-61597
 
Routine: DIC
them out of the search through the current index.  If there were many
------------
DIC("W") was being set earlier in a call to ^DIC in Version 22 than it was
in Version 21.  This caused an UNDEF error to occur in some files with a
user-defined lookup. This change restores backwards compatibility in this
area to V21. NOIS: MUR-0999-31608
 
Routine: DICF4
--------------
When a call to FIND^DIC was made with the "M" flag, and an entry was found
on an index other than the first one in the list, an extra node was
indexes being searched, the search could continue for a long time with no
returned containing the external index value, even if the FIELDS parameter
did not contain "IXE". This caused the Finder Delphi Component to display
the wrong values.  NOIS: BAY-1199-30365
 
Routine: DICA
-------------
If an UPDATE^DIE call is made and the FDA uses a LAYGO/Finding node to
lookup or add an entry at the top level of a file, and an Adding node is
used to add an entry into a multiple within that record, and the top level
record is added because it was not found, a null subscript error would
way to exit. NOIS: NTH-0399-71535.
occur. For example, if the FDA is:
 
        FDA(1000,"?+1,",.01)="TEST ENTRY"
        FDA(1000.02,"+2,?+1,",.01)="TEST SUBENTRY"
 
and the Updater has to add TEST ENTRY to file #1000, a null subscript
error will occur.
 
 
Routines: DIE1,DIE2
 
-------------------
If ^DIE was used to edit a subfile directly, and that subfile was at least
two levels down from the top, ^DIE was not updating the DA array correctly
when the user went down into and back out of multiples within that
subfile. NOIS: ISW-0599-20886
 
Routine: DIEQ
-------------
Set the DA array to the subfile level if the user enters ? or ?? at the
Select prompt of a multiple. This ensures that xecutable help, screens on
Routines: DDSU,DICQ,DICQ1,DICLIX
pointer or sets, and input transforms on the .01 field of the multiple can
rely on the DA array to be at the subfile level, whether ? or ?? is
entered at the Select prompt or at the .01 field of the multiple.
 
NOIS 
====
 ATG-0397-30298
 ATG-1199-31667
 BAY-1199-30365
 BHH-1099-40749
--------------------------------
 BHH-1099-41454
 BRX-0197-11979
 BRX-0699-11412
 CAH-1099-31208
 CHA-1099-30189
 FGH-1099-30988
 IOW-1099-42292
 ISB-1099-33134
 ISL-0699-52609
 ISW-0199-21924
Control number of entries displayed in "?" help.  Developers needed a way
 ISW-0599-20886
 LAH-1099-60966
 MAC-0999-63042
 MAD-0394-40135
 MUR-0999-31608
 NHM-1199-10884
 NTH-0399-71535
 PAL-1099-60334
 POP-1099-42462
 POR-1199-51265
to control question mark help in the ^DIC lookup so that the output didn't
 PTH-1099-21795
 TUC-1099-61597
 
Thanks to Test Sites 
====================
Fort-Meade
Washington
Portland
Poplar-Bluff
David Alexander - Birmingham CIOFO
deficiencies in the FileMan Lookup routines ^DIC*, Finder routines ^DICF*,
scroll off the screen.  New input variable
Lucille Barrios - Washington ISC
 
Thanks to anyone I may have missed on this list. Your help in testing is
invaluable to us.
 
Routine Summary: 
================
 The following routines are included in this patch.  The second line of these
routines now look like: 
  
DIC("?N",file#)=number_of_entries_to_display can be set to the number of
  <tab>;;22.0;VA FileMan;**[patch list]**;Mar 30, 1999 
  
CHECK^XTSUMBLD results: 
  
  Routine Name   Before Patch    After Patch     Patch List 
  ============   ============    ===========     ==========
  DDSU           4516702         4589256         4
  DIC            10513568        9848200         4
  DIC0           4489087         4839635         4
  DIC1           8396997         8559944         1,4
entries to be displayed at any one time in question mark help.  NOIS:
  DIC2           2989510         4974600         4
  DIC3           8139369         7291022         1,16,4
  DIC4           4973984         5435232         4
  DIC5           new             1959090         4
  DICA           8300985         8533062         1,4
  DICF2          8772057         8940451         4
  DICF3          3363767         3125335         4
  DICF4          7990992         7644291         4
  DICF5          2319707         3414721         4
  DICFIX         6867704         6906289         4
ISW-0199-21924.
  DICLIX         6388314         6415652         4
  DICM           8046960         8330209         4
  DICM0          8997983         9037748         16,4
  DICM2          5782025         6032022         4
  DICM3          4576635         4576635         16,4
  DICN           6535731         6787162         4
  DICN1          7864160         7828348         4
  DICQ           6248469         6387812         4
  DICQ1          7645506         7976918         4
  DICUIX1        3761139         3826551         4
 
  DICUIX2        7134369         7214869         4
  DIE            10606815        10620115        1,4
  DIE1           10290843        10471504        1,4
  DIE17          9556587         9659127         4
  DIE2           8785703         8634855         4
  DIE3           4915247         5222949         4
  DIED           8319960         10169985        4
  DIEQ           5540099         5793825         4
  DIEZ1          8970637         9131334         4
 
Routines: DIC4,DICF4,DICM0,DICM3,DICN,DICQ1,DIE,DIE1,DIE17,DIE3,DIED,DIEZ1
    
Installation Instructions: 
==========================
** 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.
 
     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.
 
Control lookup to pointed-to files.  During lookups on files with
     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.
 
     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 
either indexed pointer or variable pointer fields, FileMan does a lookup
 
     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 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.  
 
on the pointed-to file, lookup for a match to the lookup value entered by
     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*4
                                 ==========
 
            Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu Options,
and Protocols? 
 
 
and Editing routines ^DIE*.
the user. FileMan always looked on either the "B" index only on the
     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.  
pointed-to file (if DIC(0) did not contain "M"), or else on all lookup
indexes.  A new input array to the interactive lookup ^DIC or to the
silent data base server lookup routine FIND^DIC, allows the developer to
specify what indexes are to be used during lookup on a pointed-to file.
The array for ^DIC looks like
  DIC("PTRIX",from_file#,pointer_field#,to_file#)=list_of_indexes.
For the Finder, it looks like
  DINDEX(("PTRIX",from_file#,pointer_field#,to_file#)=list_of_indexes
For ^DIE, it looks like:
 
  DIE("PTRIX",from_file#,pointer_field#,to_file#)=list_of_indexes
 
Routines: DIC,DIC0,DIC1,DIC2,DIC3,DIC5,DICFIX,DICM,DICM0,DICM3 
--------------------------------------------------------------
ConTinue looking through all indexes.  ^DIC lookup does an initial pass
through the list of indexes, looking for matches to the lookup value as it
was entered by the user.  If any are found, they are presented to the
user, and whether or not any are accepted, FileMan gets out.  Only if it
finds no matches, does it attempt transforms on the lookup, such as
converting pointers, variable pointers, sets or dates to their internal
***** Y2K Waiver Exemption ID#:  Y2KWE0015 *****
format, or converting the lookup value to upper case.  This can cause the
lookup to miss some of the matching values.  A new flag "T" can be put
into DIC(0) that will cause FileMan to keep looking until it has either
tried everything, or until the user selects an entry.  In addition, the
transforms for pointers, variable pointers, dates or sets are done during
the first pass, so indexes are truly searched in the order requested by
the user.  NOIS: ATG-0397-30298, BRX-0197-11979, MAD-0394-40135.
 
Routines: DICF2,DICF3,DICF4,DICF5 
---------------------------------
 
"O" flag in Finder call.  It was discovered here that the "O" flag in the
finder didn't work the same in version 22 as it did in version 21.  With
this patch, the behavior is the same as version 21, in that an entire pass
through all indexes is made to find any exact matches, before doing a
second pass to find partial matches. NOIS: PAL-1099-60334, LAH-1099-60966
 
Routine: DICN1
-------------- 
'Before' values in SET/KILL logic.  It was discovered here that when a new
entry was added using the classic interactive lookup ^DIC, the X1 and X2
Routines: DIC,DIC1,DICM,DICM0,DICM3
array entries for the "BEFORE" values for use in the SET and KILL logic of
new style indexes were not always reliable.  This corrects that bug.
 
Routine: DICM
-------------
'Missing Right Parenthesis' error in Print.  When doing a print, at the
PRINT FIELD prompt, if a field name greater than 30 characters long was
entered, along with a header qualifier in mixed case, a 'missing right
parenthesis' error occurred.  This error was actually happening during the
lookup for field name on the DD.  NOIS: BRX-0699-11412.
-----------------------------------
 
Routine: DICM2
--------------
Variable pointer prefix in lower case.  When doing a lookup on an indexed
variable pointer field, if the user entered the prefix in lower case or
mixed case, but the prefix was in upper case on the file, the lookup
failed.  NOIS: ISL-0699-52609.
 
Routine: DICUIX2
----------------
"^^" OUT.  Users will be allowed to enter a double up-arrow ^^ at a prompt
UNDEF error in lookup.  It was discovered here that an UNDEF error could
occur if the code used to build index information for the classic lookup
^DIC or the Finder FIND^DIC could not determine what field was indexed.
 
Routines: DICQ, DICQ1, DICUIX1
------------------------------
Question mark help was very slow when a fairly large file pointed to a
very large file like the PATIENT file. We were building a temporary index.
The algorithm that decides when to build an index was changed. Also, in
question mark help, we won't ever build a temporary index, but will
TRACK PACKAGE NATIONALLY YES
BUILD COMPONENTS
  • ENTRIES:
    • DDSU
      ACTION:   SEND TO SITE
      CHECKSUM:   B20949021
    • DICF3
      ACTION:   SEND TO SITE
      CHECKSUM:   B5692609
    • DICF4
      ACTION:   SEND TO SITE
      CHECKSUM:   B20488270
    • DICF5
      ACTION:   SEND TO SITE
      CHECKSUM:   B8451936
    • DICFIX
      ACTION:   SEND TO SITE
      CHECKSUM:   B20991038
    • DICLIX
      ACTION:   SEND TO SITE
      CHECKSUM:   B19533805
    • DICM
      ACTION:   SEND TO SITE
      CHECKSUM:   B29031406
    • DICM0
      ACTION:   SEND TO SITE
      CHECKSUM:   B25501085
    • DICM2
      ACTION:   SEND TO SITE
      CHECKSUM:   B8977436
    • DICM3
      ACTION:   SEND TO SITE
      CHECKSUM:   B10518056
    • DICN
      ACTION:   SEND TO SITE
      CHECKSUM:   B15316504
    • DIC
      ACTION:   SEND TO SITE
      CHECKSUM:   B23986149
    • DICN1
      ACTION:   SEND TO SITE
      CHECKSUM:   B21874689
    • DICQ
      ACTION:   SEND TO SITE
      CHECKSUM:   B18633664
    • DICQ1
      ACTION:   SEND TO SITE
      CHECKSUM:   B22284164
    • DICUIX2
      ACTION:   SEND TO SITE
      CHECKSUM:   B21498097
    • DIE1
      ACTION:   SEND TO SITE
      CHECKSUM:   B30488638
    • DIE17
      ACTION:   SEND TO SITE
      CHECKSUM:   B26087601
    • DIE3
      ACTION:   SEND TO SITE
      CHECKSUM:   B8957589
    • DIED
      ACTION:   SEND TO SITE
      CHECKSUM:   B32612796
    • DIEZ1
      ACTION:   SEND TO SITE
      CHECKSUM:   B16333878
    • DIE2
      ACTION:   SEND TO SITE
      CHECKSUM:   B21556076
    • DIC0
      ACTION:   SEND TO SITE
      CHECKSUM:   B16434837
    • DIEQ
      ACTION:   SEND TO SITE
      CHECKSUM:   B10637693
    • DICUIX1
      ACTION:   SEND TO SITE
      CHECKSUM:   B14768642
    • DICA
      ACTION:   SEND TO SITE
      CHECKSUM:   B40774496
    • DIE
      ACTION:   SEND TO SITE
      CHECKSUM:   B20618639
    • DIC1
      ACTION:   SEND TO SITE
      CHECKSUM:   B30739642
    • DIC2
      ACTION:   SEND TO SITE
      CHECKSUM:   B14331920
    • DIC3
      ACTION:   SEND TO SITE
      CHECKSUM:   B26341930
    • DIC4
      ACTION:   SEND TO SITE
      CHECKSUM:   B15007768
    • DIC5
      ACTION:   SEND TO SITE
      CHECKSUM:   B4126322
    • DICF2
      ACTION:   SEND TO SITE
      CHECKSUM:   B29104564
ENVIRONMENT CHECK ROUTINE DIENVWRN