VA FILEMAN (13)    PACKAGE (9.4)

Name Value
NAME VA FILEMAN
PREFIX DI
ADDITIONAL PREFIXES
  • DD
  • DM
SHORT DESCRIPTION FM INIT
VERSION
  • 21.0
    DATE DISTRIBUTED:   1994-12-22 00:00:00
    PATCH APPLICATION HISTORY:
    • 19
      DATE APPLIED:   1996-09-24 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch fixes several problems: 
      stuffed in the field.  This was reported in the FB VENDOR UPDATE template
      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.  
              MSM Sites - STOP Taskman.  
       
          7.  On the KIDS menu, under the 'Installation' menu, use the following
      option: 
      in file 161.2.  This template needs to be recompiled after this patch is
                 Select Installation Option: Install Package(s)
                 Select INSTALL NAME: DI*21.0*19 
                                      ==========
       
                 Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
       
          8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to 
      other CPUs?'.  
           Then enter the names of your other Compute and Print server(s).  
      installed.  (DIEZ2) 
           NOTE: You will then see the following message: 
             TASKMAN is not running. You must run the routine XPDCPU in the 
      production UCI for each of the VOLUME SETS you have listed once the 
      installation starts!! 
       
          9.  MSM Sites - After the installation begins, you will be prompted to
      enter a DEVICE.  After the device has been entered, KIDS will pause.  At
      this time, you need to go to each of the CPUs that were entered in step 8,
      and start a job that will allow them to receive the patched routines.  On
      each one, you do the following:
       
          a) >D ^XUP    This will set up the programming environment.  
             ======
          b) >D ^XPDCPU  This starts the job that receives the patched routines.
              =========
          c) Select INSTALL NAME: DI*21.0*19 
                                  ==========
      The installation will then continue.  
       
          10.  AXP Sites - After the patch has been installed, rebuild your map 
      set.  
      3.  On a range read, an input that is totally outside of the range is 
       
          11.  AXP Sites - Remove Taskman from WAIT State.  
               MSM Sites - Restart Taskman.  
       
          12.  Enable user's login.  
      accepted.  For example, using a DIR call like this, S DIR(0)="L^1:4", if
      the user typed in 5-6, Y comes back as 4.  (DIR3)
       
      4.  With the release of V21, set-of-code processing within ^DIE was
      enhanced to make input to set-of-code single-valued-fields case
       
      insensitive.  This change however caused the syntax
      'field///external_code' to fail when the 'external_code' is an exact match
      to a code but is also a partial match to another code.  Prior to V21, the
      first match to 'external_code' was selected. This patch fixes this
      problem.  The related nois is ISW-0895-21058.  There are no known
      templates that needed to be recompiled at this time.  (DIED, DIEZ1, DIR1)
       
      5.  This patch will make set-of-code ^DIR calls case insensitive unless an
      'X' flag is passed.  Prior to the patch, an 'M' flag was required to be 
      passed to allow case insensitivity.  This patch will no longer require an
      1.  When an audit flag on a field is EDITED OR DELETED, the field gets 
      'M' flag to be passed. (DIR1)
       
      6.  Suppose a DIE call is made with DIE("NO^")="", and the template
      specified in DR is compiled.
       
          a.  If the user timed out, FileMan behaved as if an "^" was entered, 
          printed the message 'EXIT NOT ALLOWED ??' and reprompted.  In 
          effect, then, the process would never timeout.  This change makes 
          FileMan exit on timeout.  
          
      audited when there is no pre-existing data and the field is being stuffed 
          b.  If the compiled template contained the .01 field of a multiple, 
          and that .01 field was the first field in the multiple defined in the 
          template, if the user entered an ^, FileMan would correctly print the 
          message 'EXIT NOT ALLOWED ??' but would take the user to the next 
          field defined in the template.  This change makes FileMan reprompt for
          a value for the .01 field.
       
          The related NOIS is BRK-0796-10872.
          (DIE17)
       
      using /// or //// syntax. This patch corrects the problem by not auditing 
      7.  Back out change to DICN made in patch DI*21*12 (described as item #2
          in that patch).  That change inadvertently made a response in a
          YN^DICN call required. (DICN)
       
      Routine Summary: 
      ================
       
      The following routines are included in this patch.  The second line of
      these routines now look like:
        
      fields with no pre-existing data and the audit flag is EDITED OR DELETED.
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DICN           7484792         7476631         12,19
        DIE            9505864         9523669         19
        DIE17          6822014         6896286         19
        DIED           6344409         6449521         1,13,19
      This problem was reported by nois ISA-0593-10022. (DIE, DIEZ2) 
        DIEZ1          7657833         7774560         1,13,19
        DIEZ2          7389106         7311012         19
        DIR1           7726690         7765832         6,13,19
        DIR3           3582829         3670507         19
       
      Installation Instructions: 
      ==========================
        
          1.  The routines DICN, DIE, DIED, DIE17, DIR1, DIR3 are usually mapped
      on systems that allow mapping, AXP sites will need to disable mapping for
       
      these routines.
       
          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 DIENV will run automatically.
       
          DIENV is sent in order to prevent the inadvertent queueing of the
      installation of this patch.
        
          3.  The patch has now been loaded into a transport global on your
      2.  When a compiled input template contains the syntax '////@', the '@' is
      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 
       
          5.  Inhibit users from login into the system.  The consequence of
      
    • 24 SEQ #28
      DATE APPLIED:   1997-02-06 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch makes the following changes: 
          If you Enter/Edit the entries in this file and enter ^LOOP at the
          S:'$D(var) var=...     or
          D:'...                 or
          X:'...
       
      and in the file, there was a field with a name that started with the
      letter before the colon (:), an infinite loop would occur.  This patch
      corrects this problem.  (DICOMPX)
       
      6.  If the cross references on a file are compiled, and the file contains
      trigger-type cross references, FileMan could break the routine within a do
      'Select NAME:' prompt you can get a hard error.
      block structure, so that the first line of the next routine starts with a
      .line.  For example, the last few lines of one routine could be:
       
               I X'="" D
               .N DIK,DIV,DIU,DIN
        END    G ^zzzz2
       
      and the first few lines of the next routine could be:
       
        zzzz2  ; COMPILED XREF FOR FILE #xxxxx ; 10/30/96
       
               ; 
               .K DIV S DIV=X,D0=DA,DIV(0)=D0 S Y(1)=$S($D(^DIZ(xxxxx,D0,3)):
                 ^(3),1:"")S X=$P(Y(1),U,2),X=X S DIU=X K Y X ^DD(xxxxx,2,1,
                 12,2.1) X ^DD(xxxxx,2,1,12,2.4)
               ...
       
      This patch ensure that routines are not broken within do block structures.
      (DIKZ)
       
      7.  This patch also fixes several problems with %DT and time input:
          NOIS: KAN-0396-41540
       
          a. If only numbers are entered in the date and/or time position, like
             9999999999999999999999999999999, an illegal number error could
             result.
             
          b. Even with %DT["N", %DT was accepting noncanonic numbers (numbers
             with a leading 0).  So, 090196 was accepted, but 100196 was not.
             
          c. If only a time is input, and the AM/PM designation on the time
             contained punctuation (like 2:00 A.M.), the input was rejected.
          (DIA2)
             
          d. A single 0 in the minutes or seconds position of the time, could
             cause the time to be interpreted incorrectly.  For example, 01:0
             was interpreted as 10:00 am, and T@01:01:0 was interpreted as
             10:00:10 am.  With this fix, time with a single 0 in the minutes or
             seconds position is rejected.
             
          e. Time with hours of 0 or 00 were not getting interpreted
             correctly.  For example:
                                                  Intepreted as
        
                                                  =============
                             Input             Before fix  After fix
                             =====             ==========  =========
               %DT'["S"      [0]0:01:03     => 01:03       rejected
                             [0]0:01:03 AM  => 01:03       rejected
                             [0]0:01:03 PM  => 13:03       rejected
               
                                0:01        => 13:00       00:01
                             [0]0:01 AM     => 01:00       00:01
                             [0]0:01 PM     => 13:00       rejected
      2.  For set of codes ^DIR Reader calls, adds a new input array: 
               
               %DT["S"          0:01:03     => 13:00:03    00:01:03
                             [0]0:01:03 AM  => 01:00:03    00:01:03
                             [0]0:01:03 PM  => 13:00:03    rejected
               
                                0:01        => 13:00:00    00:01:00
                             [0]0:01 AM     => 01:00:00    00:01:00
                             [0]0:01 PM     => 13:00:00    rejected
             
          f. T@14AM translated to 00:14.  After this fix, T@14AM is rejected.
       
             
          g. If %DT["S" and the time contained seconds, and there was at least
             one space between the time and the AM/PM designator, the time was
             rejected.  For example, T@1:00:00 PM was rejected, T@1:00:00PM was
             accepted. (This bug fix applies to DSM, not MSM, sites.)
       
          h. If only a year and a time is entered, %DT was accepting the input
             and echoing back a time without hours or minutes:
              
             >S %DT="AEST"
          DIR("L",#) Only applies to set of codes.  Replaces the standard 
             >D ^%DT
              
             DATE: 1995@9  (1995@::00)
              
             >ZW Y
             Y=2950000.09
              
             This change makes %DT reject this input.
       
          NOIS: MAR-0996-21548
                     vertical listing of codes that the Reader displays.  It is 
          (DIDT)
       
      8.  If the user enters something like P at the THEN PRINT FIELDS prompt, and
      there are no fields that begin with P, DICOMP was looking at the "PT"
      nodes to find all backpointing files that begin with P.  This could lead
      to confusing messages like 'such and such pointer is not cross
      referenced', or 'by ... do you mean... '.
       
          NOIS: ISH-1194-40032
          (DICOMP0)
       
                     up to the programmer to ensure that the contents of the 
       
      9.  If a line in a word processing field sent to ^DIWP contains a vertical
      bar, followed by alphanumerics, followed by punctuation, followed by more
      alphanumerics, an undefined J(0) error can occur at DD^DICOMPV, if there
      is at least one file on the system whose name starts with the characters
      between the vertical bar and the punctuation. For example, the following
      code produces the error:
       
          S X="A line of text <vertical bar>A:B"
          S DIWF="N",DIWL=10,DIWR=68
                     DIR("L") array matches the codes in the second ^-piece of 
          D ^DIWP
       
      if there are any files on the system that start with 'A'.
       
          NOIS: BRX-1196-11544
                DES-1096-41943
                DES-1296-40431
                HAM-1096-20548
                HIN-1196-41175
                KNX-1196-40451
                     DIR(0).  
          (DICOMP0)
       
      Routine Summary: 
      ===============
       
        Routine Name    Before Patch    After Patch    Patch List 
        ============    ============    ===========    ==========
        DIA2            4082017         4038834        24
        DIAU            6095280         6112601        24
        DICOMP0         9824026         9896481        24
       
        DICOMPX         3752529         3767023        24
        DID             9150099         9151079        24
        DIDT            6692350         6401681        18,24
        DIKZ            9722237         9897922        6,24
        DIQGDD          7426471         6585703        24
        DIQGDDF         N/A             1999058        24
        DIQGDDU         1298733         1578963        24
        DIR             8215233         8414467        13,24
       
      Installation Instructions: 
                     The format of the DIR("L") array is similar to DIR("A") 
      =========================
       
          1.  AXP Sites - The routines %DT and DIR are usually mapped on
      systems that allow mapping, so you will need to disable mapping for these
      routines.
       
          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, DIENV, will run automatically.
       
                     and DIR("?").  The #'s must be numeric starting from 1. The
          DIENV is sent to prevent the inadvertent queuing of 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.
       
          4.  On the KIDS menu, under the 'Installation' menu, use the
      following options:
       
                 Print Transport Global
                     numbered lines are written first and the DIR("L") is 
                 Compare Transport Global to Current System
                 Verify Checksums in Transport Global
                 Backup a Transport Global
       
          5.  Inhibit users from login into the system.  Some of the routines in
      this patch are used heavily in DHCP applications, most notably %DT and
      DIR. The consequences of installing this patch while users are on the
      system are that users may get a 'source routine edited' error.  Due to the
      high usage of these routines in all of DHCP code, it is highly recommended
      that users be off the system when installing this patch.
                     written last.
       
          6.  AXP Sites - Place Taskman in a WAIT State.
              MSM 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*21.0*24
                                         ==========
       
        
                    Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
        
          8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      other CPUs?'.
       
              Then enter the names of your other Compute and Print server(s).
       
              NOTE: You will then see the following message:
          Example:
       
              TASKMAN is not running. You must run the routine XPDCPU in the
      production UCI for each of the VOLUME SETS you have listed once the
      installation starts!!
       
          9.  MSM Sites - After the installation begins, you will be prompted
      to enter a DEVICE.  After the device has been entered, KIDS will pause.
      At this time, you need to go to each of the CPUs that were entered in
      step 8, and start a job that will allow them to receive the patched
      routines.  On each one, you do the following:
      1.  Given the following: 
       
       
          a) >D ^XUP    This will set up the programming environment.
              ======
          b) >D ^XPDCPU This starts the job that receives the patched routines.
              =========
          c) Select INSTALL NAME: DI*21.0*24
                                  ==========
      The installation will then continue.
       
          10.  After installing this patch, you need to move routine DIDT
          >S DIR(0)="SO^1:ONE;2:TWO;3:THREE;4:FOUR;5:FIVE;6:SIX;7:SEVEN"
      from your production account to the manager account.  Then, in the manager
      account, rename:
       
               DIDT to %DT
            
               Example: ZL DIDT ZS %DT
       
          11.  AXP Sites - After the patch has been installed, rebuild your map
      set.
       
          >S DIR("L",1)="Select one of the following:"
          12.  AXP Sites - Remove Taskman from WAIT State.
               MSM Sites - Restart Taskman.
       
          13.  Enable users' login.
          >S DIR("L",2)=""
          >S DIR("L",3)="  1  ONE      5  FIVE"
          >S DIR("L",4)="  2  TWO      6  SIX"
          >S DIR("L",5)="  3  THREE    7  SEVEN"
          >S DIR("L")="  4  FOUR"
          >D ^DIR
       
       
          Select one of the following:
       
          1  ONE      5  FIVE
          2  TWO      6  SIX
          3  THREE    7  SEVEN
          4  FOUR
        
          Enter response: ?
       
          Enter a code from the list.
          a. You have a file with a pointer-type .01 field called NAME.
       
          Select one of the following:
       
          1  ONE      5  FIVE
          2  TWO      6  SIX
          3  THREE    7  SEVEN
          4  FOUR
       
          Enter response: 
       
          b. NAME points to a file that has a free text field called SHORT
      Also, for set of codes ^DIR Reader calls, this patch removes unnecessary
      blank lines that appeared before and after the vertical list of codes.
       
      Also, when using DIR("?") - one line help - this patch makes sure a period
      (.) terminates DIR("?").
       
      Also, this patch makes sure that DIR("?") is not overwritten by the
      Reader's default help prompt.
       
      (DIR)
             DESCRIPTION.  
       
      3.  Two problems with the FIELD^DID are corrected with this patch:
       
          a.  If the FIELD^DID call was used to retrieve field level attributes
      of a file with a file number less than or equal to 1, error code 200 would
      be returned: "An input variable or parameter is missing or invalid".  This
      patch makes FIELD^DID work for fields in files numbered 1 or less.
       
          b.  FIELD^DID returned erroneous values for FIELD LENGTH for fields
      with data types of MUMPS, SET OF CODES, VARIABLE POINTER, and DATE/TIME.
          c. NAME has NAME:SHORT DESCRIPTION as an output transform.  
      This patch makes FIELD^DID return more accurate values for FIELD LENGTH
      for these types of fields.
       
          (DID, DIQGDD, DIQGDDF, DIQGDDU)
       
      4.  This patch corrects the problem which can be reproduced by doing the
      following:
       
          (1) On the FileMan menu, select OTHER OPTIONS -> AUDITING
          (2) Select Audit Option #1, FIELDS BEING AUDITED.
       
          (2) Pick a file that has no fields being audited.
          (3) Select Audit Option #2, DATA DICTIONARIES BEING AUDTED.
       
          An undefined variable DFF error would occur.
       
          NOIS: ISB-1096-30117
          (DIAU)
       
      5.  If on a field you tried to put an output transform that looked like
       
      
    • 15 SEQ #18
      DATE APPLIED:   1997-03-03 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch fixes 4 problems: 
      2.  When the DIFROM Server installs Data Dictionaries, it's possible that
       
          11.  AXP Sites - Remove Taskman from WAIT State.  
               MSM Sites - Restart Taskman.  
       
          12.  Enable user's login.  
      the 'I' specifier on the file's data global 0 node could be deleted.  This
      prevents 'Identifiers' from getting displayed.  This was reported on NOIS
      STC-0596-40915.  (DIFROMSS) 
       
      3.  When a word processing window can't be resolved by FileMan during any
      FM output, a hard error occurs.  This patch fixes this problem.  This was
      reported on NOIS SFC-0395-60476. (DIWW)
       
      4.  When FileMan tries to resolve a word processing window with multiple 
       
      arguments via a call to ^DIWP, a hard error occurs.  (DICOMP) 
       
       Routine Summary: 
       ================
        The following routines are included in this patch.  The second line of
      these routines now look like:
        
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
        CHECK^XTSUMBLD results: 
      1.  In a KIDS build entry, one can send data with a file.  The field 'Data
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DICOMP         5808899         5821767         15 
        DIFROMSS       3496020         3490849         15 
        DIFROMSU       5182472         5222720         10,15 
        DIWW           5725412         5618941         15 
       
       Installation Instructions: 
       ==========================
      List' may contain the name of a Search or Inquire Template.  If several
        
          1.  The routine DIWW is usually mapped on systems that allow mapping,
      so you will need to disable mapping for this routine.
       
          2.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu. This
      option will load the KIDS package onto your system.  Say 'No' to 'Want to
      RUN the Environment Check routine?.
       
          The Environment Check routine, DIENV, is sent in order to prevent the
      inadvertent queueing of the installation of this patch.
      files in a BUILD entry use the same template name the DIFROM Server
       
          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 
      correctly processes only the first file's template.  The subsequent
       
          5.  Inhibit users from login into the system.  If users stay on the
      system while installing this patch, a hard error may occur while word
      processing fields are printed.
       
          6.  AXP Sites - Place Taskman in a WAIT State.  
              MSM Sites - STOP Taskman.  
       
          7.  On the KIDS menu, under the 'Installation' menu, use the following
      option: 
      files' templates are processed incorrectly and it could abort the building
                 Install Package(s): 
                 INSTALL NAME: DI*21.0*15 
                               ==========
       
                 Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
       
          8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      other CPUs?'.
          Then enter the names of your other Compute and Print server(s).  
      of a transport global. (DIFROMSU)
          NOTE: You will then see the following message: 
             TASKMAN is not running. You must run the routine XPDCPU in the 
      production UCI for each of the VOLUME SETS you have listed once the 
      installation starts!! 
       
          9.  MSM Sites - After the installation begins, you will be prompted to
      enter a DEVICE.  After the device has been entered, KIDS will pause.  At
      this time, you need to go to each of the CPUs that were entered in step 8,
      and start a job that will allow them to receive the patched routines.  On
      each one, you do the following:
       
          a) >D ^XUP    This will set up the programming environment.  
              ======
          b) >D ^XPDCPU  This starts the job that receives the patched routines.
              =========
          c) Select INSTALL NAME: DI*21.0*15 
                                  ==========
      The installation will then continue.  
       
          10.  AXP Sites - After the patch has been installed, rebuild your map
      set. 
      
    • 29 SEQ #30
      DATE APPLIED:   1997-03-06 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Prerequisites:
      If FileMan patch DI*21*29 is installed without installing patch
      the second file pointed-to by the variable pointer.  Found by Tom
      Ackerman.
       
       
      LOOKUPS USING POINTER FIELDS:
       
        a) Fixed a lookup problem in Social Work Case File (650) reported by
      Kevin McGee, San Francisco VAMC. Lookup with lower case letter + last 4
      digits SSN was very slow, and could potentially fail to find a valid match
      as well.
      GMRP*2.5*46, and if the site has the 'ASK TITLE OK?' parameter in file
       
       
      LOOKUPS WHERE DIC(0)["N":
       
        a) When FileMan does a lookup by IEN because DIC(0)["N" and it can find
      no other matches, make it ask OK?...  Reported by Clayton Curtis as a
      MailMan bug when he accidently entered a number at the recipient prompt
      (in an attempt to edit a line number of the message.).
       
       
      121.99 (field 3.5) turned on and the user does the lookup on the title
      VARIABLE PRESERVATION,CLEANUP,OUTPUT:
       
        a) Users lookup value X wasn't being protected while executing
      IDENTIFIER logic.  Reported by George Huggins, Indian Health Service.
       
        b) When user was entering a new entry with DIC(0)'["A", and up-arrowed
      out either during the entry of a required IDENTIFIER, or at the 'Are you
      Adding...' message, FileMan wasn't setting output variable DUOUT. Reported
      by Robert Whelan, Albany IRMFO.
       
      file by Internal Entry Number (IEN) the '...OK? YES//' prompt will be
        c) UTILITY option to EDIT a file wasn't cleaning up the DR variable at
      the end.  If the PRINT option was run immediately afterwards, it tried to
      use DR as an input variable with unexpected results.  Reported by Skip
      Ormsby, Clarksburg VAMC.
       
       
      MIX^DIC1 AND IX^DIC CALLS:
       
        a) Honor cross-reference list D in an MIX^DIC1 call, when FileMan goes
      off to look on cross-references for pointer, date, set and variable
      displayed twice.
      pointer fields on the home file, transforms lookup value from lower to
      upper case, and other types of transforms.  Previously FileMan was looking
      at all x-refs during this part of the logic.  Reported by Greg Kreis.
       
        b) Using the MIX^DIC1 call, if one of the x-refs in input variable "D"
      is on a pointer field, we do a lookup in the pointed-to file.  FileMan was
      still using the list of indexes in "D" on the pointed-to file, even though
      they only had meaning in the original home file. Reported by Tom Love
      (Indian Health Service).
       
       
        c) If developer did an MIX^DIC1 or IX^DIC call with D containing a
      cross-reference before "B" (ex. "AC"), and lookup value was a pointer,
      set, variable pointer or date, then lookup could only find the entry by
      its internal value.  Reported by Greg Kreis.
       
       
      PROBLEMS WITH PARTIAL MATCHING:
       
        a) Problem stuffing the .01 field of a multiple with "///" in an input
      template, when field is defined as a date with time. When user enters a
      After GMRP*2.5*46 has been installed, the user will only be prompted once
      date with time as a lookup value, FileMan converts it to its FileMan
      internal value, then if it finds a partial match to that date/time,
      considers that to be a match.  If there is just one partial match, this
      entry is selected.  This was a problem when user was trying to stuff a
      date/time entry into a multiple with the 3 slash syntax.  The fix is for
      FileMan to automatically put an X into DIC(0), thus forcing exact matches
      only, when the 3 slash syntax is used in an input template.  Found by
      Cindy Heuer (Hines IRMFO) in Radiology.
       
        b) FileMan did not properly find partial matches to a numeric lookup
      under those conditions.
      value, if the value in the index was alpha-numeric, but started with a
      number containing decimals.  This was found at Tucson VAMC by Jim Orrey.
      They had a file where entries contained rational numbers, but they had
      created an index with a trailing blank, in order to force string
      collation.
       
        c) If .01 field is longer than 30 characters, user enters a lookup value
      greater than 30 characters in lower or mixed case, FileMan failed to find
      valid matches to the lookup value.  Reported by Dave Bolduc (AIMC
      programmer)
       
       
       
      PROBLEMS ADDING NEW RECORDS:
       
        a) If a process held onto a LOCK on what would have been the next record
      to be added to a file before incrementing the next record number count in 
      the header node, any other process trying to add an entry to that file
      would get stuck in an infinite loop (unless/until the first process
      released its lock).
       
       
        b) If, contrary to the instruction on page 65 of the FileMan version 21 
      Programmers Reference Manual, a routine called FILE^DICN with the local 
      variable DD set equal to "B", or the name of some other index in the data 
      file, or the record number of an existing record, or 0, that routine would
      get stuck in an infinite loop.
        
        c) If a routine called FILE^DICN with DD set to some other value, the
      new record would be added to the file with that as its record number, even
      if DD's value was not a legal record number. This erroneous behavior even
      overrode the use of DINUM.
      ==============
       
       
       
       
      In addition, a new flag DIC(0)["B" was added.  The purpose of the flag is
      to restrict FileMan to looking only on the "B" index of any files
      pointed-to by the file in which you're doing the lookup.  The complete API
      description is available in HTML format at:
       
         http:
       //www.vista.domain.ext/softserv/infrastr.uct/fileman/docs/pm/cl-dic-f.htm
      Patch Description
       
       
       
       
       
       Routine Summary: 
       ================
        
       The following routines are included in this patch.  The second line of
      these routines now look like:
      =================
         
         <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
         
       CHECK^XTSUMBLD results: 
       
         Routine Name   Before Patch    After Patch     Patch List 
         ============   ============    ===========     ==========
      DIA                 6481291         7724491               29
      DIC                 9887383        10229217             8,29
      DIC1                7157061         7440729               29
       
      DIC2                3386307         3335934               29
      DICM                8204058         9718946               29
      DICM0               4918663         4859257             6,29
      DICM2               6920486         7132763               29
      DICM3               4620259         5089665               29
      DICN                7476631         7973339         12,19,29
      DICN1               7148963         5825723               29
      DICQ                8535882         9280954               29
      DICQ1               5481016         5602061               29
      DIE1                6179725         6188430               29
      This patch fixes many bugs and makes some minor enhancements in the
      DIE17               6896286         6919106            19,29
      DIE3                4863655         4850886               29
      DIOU                4914520         5001668             8,29
      DIU                 4034034         4050319               29
       
       
        
       Installation Instructions: 
       ==========================
         
      FileMan lookup (^DIC, IX^DIC and MIX^DIC1) entry points.
           1.  The routines DIC, DIC1, DIC2, DICM, DICM0, DICM2, DICM3, DICN,
      DICN1, DICQ, DICQ1, DIE1, DIE17 and DIOU are usually mapped on systems
      that allow mapping, AXP sites will need to disable mapping for these
      routines.
        
           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 DIENV will run automatically.  DIENV is sent in order to
      prevent the inadvertent queueing of 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.
        
           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 
        
      The patch addresses the following NOIS and E3R:
           5.  Inhibit users from login into the system.  The consequence of
      having users on the system while installing this patch are that users
      adding or 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.  
               MSM 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*21.0*29 
                                       ==========
        
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
        
           8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      other CPUs?'. Then enter the names of your other Compute and Print
      NOIS:                          E3R:
      server(s).  NOTE: You will then see the following message:
         TASKMAN is not running. You must run the routine XPDCPU in the
      production UCI for each of the VOLUME SETS you have listed once the
      installation starts!!
        
           9.  MSM Sites - After the installation begins, you will be prompted
      to enter a DEVICE.  After the device has been entered, KIDS will pause. At
      this time, you need to go to each of the CPUs that were entered in step 8,
      and start a job that will allow them to receive the patched routines.  On
      each one, you do the following:
       
      ========                       =======
       
           a) >D ^XUP    This will set up the programming environment.  
               ======
           b) >D ^XPDCPU  This starts the job that receives the patched routines
               =========
           c) Select INSTALL NAME: DI*21.0*29
                                   ==========
      The installation will then continue.
        
           10.  AXP Sites - After the patch has been installed, rebuild your map
      ANN-0496-42241                 7556
      set. 
        
           11.  AXP Sites - Remove Taskman from WAIT State.  
                MSM Sites - Restart Taskman.  
        
           12.  Enable user's login.  
      BIR93-2-2097
      CLE-1295-41595
      CLL94-3-0077
      DAY-0895-42009                  
      DUB-0696-30598                  
      HUN-0896-21930
      ISL-0794-50399
      KNX-0396-41289
      Progress Notes patch GMRP*2.5*46 should be installed at the same time as
      LEA-0496-41204
      LON-0296-62113
      MAD-0694-40057
      MWV-1295-21154
      NOL-0896-71128
      OKL-0396-70731
      PAL-1096-60467
      REN93-4-0762
      SFC-0696-61382
      TUC-0295-60054
      this FileMan patch.  Below is a brief description of that patch.  If the
      WCO-0195-50090
       
       
      In addition, the patch fixes the following bugs/shortcomings reported in
      mail messages and not through the NOIS or E3R system.:
       
      ONLINE HELP/PROMPTS:
       
        a) Question mark help on a set of codes wasn't right aligning the
      external value of the possible choices in the display.  Reported by Cathy
      Progress Notes patch is not installed, it will result only in a minor
      Williamson (Hines IRMFO).
       
        b) If adding a new entry failed due to failure during execution of a
      LAYGO node on the file, or because the file is restricted from editing
      (such as an archive file), FileMan quit without giving any indication. Now
      it will question mark beep so user knows something went wrong.  Reported
      locally by Don Creaven.
       
        c) When doing a lookup on a multiple field with a whole-file
      cross-reference (like a SYNONYM multiple), the entry from the x-ref was
      annoyance as described, but will not affect any data.
      being displayed, but not the .01 at the top level of the selected entry.
      Reported by Robert Melmoth (Hines IFMRO).
       
        d) When doing a lookup on some index other than the .01, only the value
      from the index is displayed, and not the value of the .01 field itself.
      Reported by Tom Ash (Montgomery)
       
        e) A new field SHORT DESCRIPTION was added to the DIALOG file.  A WRITE
      identifier was added to display this field on lookup.  Suggested by Mike
      Kilmade.
       
       
       
      HARD ERRORS:
       
        a) Bad variable name error at NAME+1^DICM2, when displaying DIC("B")
      default value when following a pointer to a variable pointer.  Reported by
      Mary Ann Ferrarese in Record Tracking.
       
        b) NOPEN error when job is queued with no device, DIC(0)["Q" and lookup
      fails.  It tried to write #7,??.  Reported by Skip Ormsby (Clarksburg
       
      VAMC).
       
        c) UNDEF error at R+1^DIC2 when a cross-reference entry exists but no
      corresponding entry exists in the data.  Found during testing of FileMan
      21 at Oklahoma City VAMC.
       
        d) UNDEF error in ALL^DICM2 was caused when we had a file with the .01
      field a variable pointer, the .01 field of the first pointed-to file is a
      pointer, user selects the value on the pointed-to file, presses return
      when matches on the home file are selected, then FileMan starts to look at
      
    • 40 SEQ #31
      DATE APPLIED:   1997-04-14 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
        Patch Description: 
      queued print job. This patch corrects the problem.
        
        
        
        Routine Summary: 
        ================
         
        The following routines are included in this patch.  The second line of
      these routines now look like:
          
        ============
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994
        
        CHECK^XTSUMBLD results: 
        
          Routine Name   Before Patch    After Patch     Patch List 
          ============   ============    ===========     ==========
          DIC                10229217       10080729        8,29,40 
        
        
         
        This patch fixes a rare bug.  An UNDEF error can occur if user does a
        Installation Instructions: 
        ==========================
          
            1.  The routine DIC is usually mapped on systems that allow mapping,
      AXP sites will need to disable mapping for this routine.
        
            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 DIENV will run automatically.  DIENV is sent in order to
      prevent the inadvertent queueing of the installation of this patch.)
      queued print of a JOIN EXTENDED POINTER computed field in a file.  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.
         
            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 
      DI*21*29 killed Y in ^DIC, before resetting Y to the documented output
         
            5.  Inhibit users from login into the system.  The consequence of
      having users on the system while installing this patch are that users
      adding or 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 this routine is heavily used in DHCP applications.
         
            6.  AXP Sites - Place Taskman in a WAIT State.  
                MSM Sites - STOP Taskman.  
        
      value. This happens only when ^DIC was called from a queued job.  In most
            7.  On the KIDS menu, under the 'Installation' menu, use the
      following option:
       Select Installation Option: Install Package(s)
                   Select INSTALL NAME: DI*21.0*40 
                                        ==========
         
                   Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
         
            8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      cases this causes no problems, however, subscripted values of the variable
      other CPUs?'. Then enter the names of your other Compute and Print
      server(s). NOTE: You will then see the following message: TASKMAN is not
      running. You must run the routine XPDCPU in the production UCI for each of
      the VOLUME SETS you have listed once the installation starts!!
         
            9.  MSM Sites - After the installation begins, you will be prompted
      to enter a DEVICE.  After the device has been entered, KIDS will pause. At
      this time, you need to go to each of the CPUs that were entered in step 8,
      and start a job that will allow them to receive the patched routine.  On
      each one, you do the following:
      Y are used in the computed field logic of JOIN EXTENDED POINTER type
        
          a) >D ^XUP    This will set up the programming environment.  
              ======
          b) >D ^XPDCPU  This starts the job that receives the patched routines.
              =========
          c) Select INSTALL NAME: DI*21.0*40 
                                  ==========
       The installation will then continue.  
         
            10.  AXP Sites - After the patch has been installed, rebuild your
      computed fields, causing an UNDEF error when these fields are printed in a
      map set.
        
            11.  AXP Sites - Remove Taskman from WAIT State.  
                 MSM Sites - Restart Taskman.  
         
            12.  Enable user's login.  
      
    • 42 SEQ #32
      DATE APPLIED:   1997-08-19 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
       Description:
       
       
            Most cross-reference are not sensitive to the order in which they 
            are fired. For example, a regular cross-reference simply creates 
            an index entry based on the current field value, and has no effect 
            on other field values or other indexes. However, a trigger does 
            affect other fields, and will affect other indexes if those fields 
            are cross-referenced. For example, if an entire record is being 
            reindexed, a cross-reference on the .01 field might trigger a new 
            value into field 1. If field 1 is cross-referenced before field 
            .01, field 1's indexes will use the old value instead of the new 
            For a complete explanation, please read this description
            one that the .01 trigger will put there.
       
            When you create a new entry, you enter the values for the .01 
            field before any other fields (generally speaking), so the cross-
            references on the .01 field fire first. However, before this 
            patch, when reindexing a record FileMan always saves the cross-
            references on the .01 field for last. Using our previous example 
            of the trigger on the .01, this means when adding an entry the 
            cross-references on field 1 use the new value triggered by the .01 
            but when reindexing field 1's cross-references fire first, using 
            carefully. Because these changes are not backward-compatible, we
            the old value, and then cross-references on field .01 fire, 
            triggering the new value into field 1 but not affecting its cross-
            references.
       
            This effectively prevents you from writing code sensitive to fire 
            order that will work when reindexed. After a great deal of 
            consideration, we have decided that the fire order for the Set 
            Logic should always fire as if a new entry were being added; that 
            is, the .01 cross-references always fire first even when 
            reindexing. We decide the Kill Logic is firing in the correct 
            have taken time to explain the reasons and effects in detail. For
            order already; that is, the kill logic for the .01 should fire 
            last so that FileMan-compatibility is preserved by keeping a B 
            cross-reference on any record for as long as possible.
       
            The Merge package uses extensive reindexing when merging two 
            records together, and requested this change. This change made the 
            package easier to code, and has produced no visible side effects 
            at the test sites.
       
       Test Sites :
            more information on these changes, send email to
       ============
       
            Finder and Comma-Piecing Change:
            --------------------------------
            Houston VAMC
            The Imaging Project Team
       
            Reindexing Fire Order Change:
            -----------------------------
            Columbia VAMC
            G.FMTEAM@DOMAIN.EXT, or call Rick Marshall at 206-764-2283.
            Tucson VAMC
       
       Routine Summary :
       =================
       
            The following is a list of the routines included in this patch.
            The second line of each of these routines now looks like:
       
            <tab>;;21.0;VA FileMan;**patch list**;Dec 28, 1994
       
            Please notify us immediately if you experience any ill effects
       Checksums According to CHECK^XTSUMBLD:
       ======================================
       
         Rtn Nm   Chksum Before   Chksum After  Patch List
         ------   -------------   ------------  ----------
         DICF     7072808         7066780       17,27,42
         DICF1    5555141         5908138       42
         DICF3    6296720         9189474       17,42
         DIK      7325945         7352303       42
         DIK1     5820262         5943602       42
            from either of these changes.
       
            To test if the transport has been corrupted, you can use the
            "Verify Package Integrity" option.  This option is under Utilities
            under the KIDS menu.  It will compare the checksums in the build
            with the current checksums and list any that differ.
       
       Installation Instructions:
       ==========================
       
       NOTE any instructions that are different for 486 or Alpha sites.
       
       
            1.   Users ARE NOT allowed to be on the system during the
            installation.
       
            2.   DO place TaskMan in a WAIT state.
       
            3.   These routines are not usually mapped on systems that allow
            it so you will probably not have to disable mapping.
       
            4.   Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu.
            Change 1: Finder and Comma-Piecing
            This option will load the KIDS package onto your system.
       
            5.   The patch has now been loaded into a Transport global on your
            system. You now need to use KIDS to install the Transport global.
        
            6.   On the KIDS menu, under the 'Installation' menu, use the
            following options:
        
                  Verify Checksums in Transport Global
                  Print Transport Global
       ============
            ----------------------------------
                  Compare Transport Global to Current System
                  Backup a Transport Global
                  Install Package(s)
                  INSTALL NAME: DI*21.0*42
                                ==========
        
            7.   MSM Sites - Answer YES to the question 'Want to MOVE
            routines to other CPUs?'. Enter the names of your Compute and
            Print server(s).
        
            The Finder, like the classic DIC Lookup call, processes lookup
                 AXP Sites - Answer NO to this question.
        
            8.   Rebuild your mapped set if necessary.
        
            9.   DO remove TaskMan from a WAIT state.
            values that contain commas specially. We have reduced the power of 
            the Finder's algorithm in order to buy a substantial performance 
            gain, and have introduced a new "C" flag to allow callers to get 
            the full power of the original algorithm when they need it. DIC's 
            algorithm has not been changed, which means DIC and the Finder do 
            not handle commas the same way unless you include the "C" flag in 
            your Finder call.
       
       
            The need to make this backward-incompatible change arises from 
            another difference between the classic DIC lookup and the Finder: 
            short-circuiting. In general, the Finder call was designed to 
            emulate the DIC lookup, but one feature of DIC caused a great deal 
            of confusion: the way DIC short-circuits its lookup whenever it 
            has possible matches. DIC rarely presents all of the matches 
            available, but instead at fixed points during the lookup will quit 
            early if it has any matches. This feature is designed to focus the 
            lookup on what DIC considers the most likely matches, but many 
            users report they find the behavior counter-intuitive.
            This patch changes two different features of FileMan in important
       
            For this reason, the Finder was designed to always locate all 
            possible matches, to avoid short-circuiting out of the lookup 
            early. Since the Finder always runs all relevant parts of the 
            lookup algorithm, it always pays the performance costs of those 
            parts. Comma-piecing, a powerful but expensive part of DIC's 
            lookup, was usually short-circuited out of DIC's main lookup, but 
            in the Finder, of course, is always run on lookup values 
            containing commas. Thus, with values containing commas, the Finder 
            is usually much slower than DIC.
            ways. The changes are to 1) how the Finder DBS call processes
       
            The Imaging project, in particular, discovered that the 
            performance cost was too much to pay, and asked the FileMan team 
            to change the Finder's behavior. Although comma-piecing is 
            documented (FileMan 21 Programmer Manual, pages 208-209, and 
            FileMan 21 User Manual, page 12 ("^ST,ADD" in part 3)), most users 
            polled do not realize the full power of this feature, but believe 
            it has a limited capability specific to names. Although the 
            FileMan team rarely considers making backward-incompatible 
            changes, in this case most experts were unaware of and therefore 
            commas in lookup values, and 2) the order in which cross-
            not relying on the parts of this algorithm that made it expensive. 
            In return for making this change, lookups at Houston VAMC 
            involving values containing commas passed to the Finder that used 
            to take 90 seconds now take 4. The sheer magnitude of the trade-
            off led us to reduce the power of comma-piecing Finder lookups to 
            what people have known about, while adding the "C" flag for those 
            who know about and need the full power.
       
            Most users and developers believe comma piecing is specifically 
            used with names, so that a lookup values like "DI,MI" will match 
            references fire during reindexing. Although these changes are NOT
            "DISTASO,MICHAEL" and "DISNEY,MICHELLE". In other words, the comma 
            in the lookup value stands for a real comma in the index value, 
            and a partial match is run on both the first and last names. This 
            is what the Finder has been changed to do.
       
            What comma-piecing does in DIC, what it did in the Finder before 
            this patch, and what the Finder does after this patch if the "C" 
            flag is passed is far more powerful. The comma stands for any 
            arbitrary string of characters followed by any punctuation 
            character. "DI,MI" then will match not just the values most users 
            backward-compatible, they have not disrupted sites we've tested
            expect, but also "DISTASO,XACHARY MICHAEL" and "DINNER WITH 
            MICHAEL". This is the principle behind the "^ST,ADD" example in 
            the FileMan 21 User Manual. This feature requires a tremendous 
            amount of processing, but yields far more flexible results, and 
            programmers are encouraged to use the Finder's new "C" flag when 
            appropriate.
       
            Change 2: Reindexing Fire Order Change
            --------------------------------------
            The order in which cross-references fire can be crucial. We have 
            at, and provide a great deal of benefit in return.
            changed this order to correct what we perceive to be a flaw in the 
            algorithm. By its nature, this can affect the integrity of the 
            database. We believe the new order is the correct one, but if 
            there is code in VistA that relies on the old order this change 
            has the capability of introducing database corruption. We did not 
            make this change lightly. Not only do we believe the new fire 
            order is correct, but it is likely that code that relied upon the 
            old fire order was already introducing database corruption. We 
            have found no evidence yet of code that relied on the old fire 
            order, but in a system this complex we can never be sure.
      
    • 28 SEQ #33
      DATE APPLIED:   1997-08-19 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Description:
           Houston VAMC
           White City VAMC
           George Timson
           Michael Ogi
       
      Routine Summary :
      =================
       
           The following is a list of the routines included in this patch.  The
           second line of each of these routines now looks like:
      ============
       
           <tab>;;21.0;VA FileMan;**28**;Dec 28, 1994
       
      Checksums According to CHECK^XTSUMBLD:
      ======================================
       
        Rtn Nm   Chksum Before   Chksum After
        ------   -------------   ------------
        DIM      2096545         2236006
        DIM1     7391479         6135531
       
        DIM2     4847408         4186487
        DIM3     4724114         4265731
        DIM4     3593321         3292224
       
           To test if the transport has been corrupted, you can use the 
           "Verify Package Integrity" option.  This option is under Utilities 
           under the KIDS menu.  It will compare the checksums in the build 
           with the current checksums and list any that differ.
       
      Installation Instructions:
           This patch changes FileMan's DIM (MUMPS Code Validation) entry point
      ==========================
       
      NOTE the instructions that are different for DSM sites.
       
           1.   Users ARE NOT allowed to be on the system during the 
           installation.
       
           2.   DO place TaskMan in a WAIT state.
       
           3.   DSM Sites: These routines are not usually mapped so you will
           to validate against the 1995 ANSI Standard and the new VA SAC.
           probably not have to disable mapping.
       
           4.   Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu. 
           This option will load the KIDS package onto your system.
       
           5.   The patch has now been loaded into a Transport global on your 
           system. You now need to use KIDS to install the Transport global.
       
           6.   On the KIDS menu, under the 'Installation' menu, use the
           following options: 
       
       
                 Verify Checksums in Transport Global
                 Print Transport Global 
                 Compare Transport Global to Current System 
                 Backup a Transport Global
                 Install Package(s) 
                 INSTALL NAME: DI*21.0*28
                               ==========
       
           8.   DSM Sites: Rebuild your mapped set if necessary.
      Test Sites :
       
           9.   DO remove TaskMan from a WAIT state.
      ============
       
      
    • 26 SEQ #34
      DATE APPLIED:   1997-09-22 00:00:00
      APPLIED BY:   USER,ONE
    • 30 SEQ #35
      DATE APPLIED:   1997-09-22 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Description:
      file is installed, too.
                 Select Installation Option: Install Package(s) 
                 Select INSTALL NAME: DI*21.0*30 
                                      ==========
       
      Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu Options, and 
      Protocols?' question. 
       
      7.  MSM Sites - Answer YES to the question 'Want to MOVE routines to 
      other CPUs?'. Then enter the names of your other Compute and Print 
      server(s).
       
       
      8.  KIDS will load the patch without further intervention.  During the
      KIDS install, KIDS will produce the following messages:
       
              Data Dictionary for File #.403 not installed.
       
              Data Dictionary for File #.404 not installed.
       
      These message do NOT indicate an error condition.  They are reporting that
      new Data Dictionaries for the Form and Block files are not being installed
      A.  Import Data option
      although data for those files is being updated.  This is correct.
       
      The new option is the Import Data option found on the Other Options 
      submenu (DIOTHER) on the VA FileMan menu.  This option invokes a 
      ScreenMan form used to define the import.  In addition to moving data 
      from a host file into a VA FileMan file, the Import Tool produces a 
      report of the import activity.
       
      ============
      Documentation of the Import Tool is located in a revised Chapter 18 of 
      the VA FileMan User Manual.  Previously, that chapter documented the 
      Data Export Tool.  Now, Chapter 18 documents both the Import and Export 
      Tools.  The National Center for Documentation will be distributing this 
      revised chapter.  Acrobat versions of both the change pages, and the 
      User Manual updated with the change pages, are available at
       
       http://www.vista.domain.ext/softserv/infrastr.uct/fileman/docs/
       
      The new chapter is also available in HTML format at:
       
       
       http://www.vista.domain.ext/softserv/infrastr.uct/fileman/docs/u2/
       (access the Import/Export Tools chapter)
       
      B. FILE^DDMP API
       
      The programmer API consists of a single call: FILE^DDMP.  Functionally, 
      it is equivalent to the user option.  The API allows the programmer to 
      specify the parameters of the data import.
       
      This patch implements new VA FileMan functionality: the Import Tool.  
      Documentation in HTML format for the API can be found at:
       
            http://www.vista.domain.ext/softserv/infrastr.uct/fileman/docs/
            pm/ft_ddmpf.htm
       
      C. Import Template file
       
      A new file is added by this patch: the Import Template file (#.46).  The 
      file's data is stored in an existing global -- root: ^DIST(.46.  No data 
      for the file is contained in this patch.  
      The Import Tool will move data from an ASCII host file into a VA FileMan 
       
      Routine Summary:
      ================
       
      The following routines are included in this patch.  Checksums are 
      CHECK^XTSUMBLD results.
       
       Routine Name         Before Patch     After Patch     Patch List
       ============         ============     ===========     ==========
       DDMP                 <NEW>            11685139        30
      file.  The uses and limitations of the Import Tool are described in the 
       DDMP1                <NEW>            9723042         30
       DDMP2                <NEW>            9285380         30
       DDMPSM               <NEW>            7179788         30
       DDMPSM1              <NEW>            3485759         30
       DDMPU                <NEW>            8199841         30
       DII1                 455555           468832          30
       DINIT6               3176942          3570355         30
       
       
      The DDMP* routines contain the Import Tool.  DII1 is included to add the 
      documentation. The location of the documentation is given below.
      Import Data option to the Other menu when VA FileMan is accessed from 
      Programmer mode.  DINIT6 assures that the Data Import option will not be 
      removed from the Kernel menus if ^DINIT is rerun.  It is NOT necessary 
      to rerun ^DINIT to implement this patch.
       
      Installation Instructions: 
      ==========================
        
      1.  Neither of the pre-existing routines in this patch are typically 
      mapped. It is NOT recommended that any of the DDMP* routines be mapped.
       
       
      2.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu. This 
      option will load the KIDS package onto your system.
       
      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: 
       
      The Import Tool consists of a new option and a programmer API.  A new 
                 Print Transport Global 
                 Compare Transport Global to Current System 
                 Verify Checksums in Transport Global 
                 Backup a Transport Global 
       
      5.  Users may remain on the system when this patch is installed.  
      TaskMan should remain running.
       
      6.  On the KIDS menu, under the 'Installation' menu, use the following 
      option: 
      
    • 35 SEQ #36
      DATE APPLIED:   1997-09-22 00:00:00
      APPLIED BY:   USER,ONE
    • 38 SEQ #37
      DATE APPLIED:   1998-01-29 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      VA FileMan SQLI Interface (SQLI) 
      data.  After installing this patch, note that the DMSQ MENU will not be
         <tab>;;21.0;VA FileMan;**38**;July 28, 1997 
         
      CHECK^XTSUMBLD results: 
         
         Routine Name   Before Patch    After Patch     Patch List 
         ============   ============    ===========     ==========
         DMSQ            new routine     10102863          38 
         DMSQD           new routine     8773388           38 
         DMSQE           new routine     843826            38 
         DMSQF           new routine     9792265           38 
      attached to any other existing menu; it is stand-alone, to be assigned as
         DMSQF1          new routine     8310046           38 
         DMSQF2          new routine     8370804           38 
         DMSQP           new routine     2371815           38 
         DMSQP1          new routine     3565656           38 
         DMSQP2          new routine     6721470           38 
         DMSQP3          new routine     11874271          38 
         DMSQP4          new routine     2151271           38 
         DMSQP5          new routine     5423594           38 
         DMSQP6          new routine     10074783          38 
         DMSQS           new routine     3197279           38 
      needed.
         DMSQT           new routine     11672859          38 
         DMSQT1          new routine     1181888           38 
         DMSQU           new routine     10589283          38
       
      Installation Instructions: 
      ==========================
       
      Before starting:  Place and protect ^DMSQ
       
      This patch brings in a new global, ^DMSQ.  As usual with new globals,
       
      place it before running the install (the default location of the install
      will otherwise be used).  You can translate it for ease of access.
      Journaling is unnecessary.
       
      For global protection, a standard approach can be used, such as the
      following:
       
           DSM for OpenVMS - System (RWD), World (RW), Group (RW), and User (RW)
           OpenM - Owner (RWD), Network (RWD), Group (N), World (N)
           MSM-DOS - System (RWD), World (RWD), Group (RWD), User (RWD)
      The installation of this patch is mandatory because the software includes
       
      NOTE: Users may remain on the system during this installation.  There's no
      need to disable logons either.
         
      1.  There's no need to disable mapping (these routines won't need to be
          mapped).
        
      2.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu. This
          option will load the KIDS package onto your system.  
         
      supported references (entry points and DD structures) that may be called
      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 
        
      by application code.  So, even if you don't plan to implement
      (5.  Users don't need to logoff.  They may remain on the system while this
           patch is installed.) 
        
      (6.  There isn't any need to place TaskMan in a WAIT state.) 
       
      7.  On the KIDS menu, under the 'Installation' menu, use the following
          option: 
       
                  Install Package(s): 
                  INSTALL NAME: DI*21.0*38 
      SQLI as a basis for a vendor SQL product, you still should install this
                                ==========
       
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu 
                  Options, and Protocols?' 
        
      8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to other
          CPUs?'. Enter the names of your Compute and Print server(s).  
       
      9.  MSM Sites - After the installation begins, you will be prompted to
          enter a DEVICE.  After the device has been entered, KIDS will pause.
      patch.  
          At this time, you need to go to each of the CPUs that were identified
          in the previous step and start a job that will allow them to receive
          the routines included in the patch.  On each CPU, do the following:
       
               a) >D ^XUP     - to set up the programming environment 
                   ======
               b) >D ^XPDCPU  - to start the job that receives the routines 
                   =========
               c) Select INSTALL NAME: DI*21.0*38 
                                       ==========
       
       
      This completes the installation instructions.
       
      The installation instructions for loading this patch are entirely
      contained below.  You don't need to get the SQLI documentation for this
      purpose.  (The SQLI documentation doesn't include installation
      instructions for loading this patch.)
       
       
      Documentation for Implementing SQLI
      ===================================
      Implementing SQLI is optional.  See the VA FileMan SQLI Site Manual for
      more information about populating the SQLI files and, furthermore,
      This patch installs the foundation for building an interface between VA
      incorporating vendor SQL products and building an SQL system.  This manual
      is to be reproduced and distributed by the National Center for
      Documetation (NCD).  This manual will also be available in Acrobat PDF
      format from the SQLI home page:
       
               http://www.vista.domain.ext/softserv/infrastr.uct/sqli
       
      The SQLI home page will be a source of current information, including case
      studies of how sites have chosen to implement SQL access to their systems.
       
      FileMan's data dictionaries and a vendor's M-based SQL data dictionaries.
       
      Test Sites 
      ==========
      Two test sites have loaded this SQLI patch and have implemented a full SQL
      system (with the additional vendor software that's needed).  These are the
      VA medical facilities at San Francisco (VISN 21) and Brooklyn (VISN 3).  
       
      Four additional test sites are in the process of establishing a system
      that is based on SQLI:  VA medical facilities at Seattle (VISN 20),
      Phoenix (VISN 18), West Haven (VISN 3), and Palo Alto (VISN 21).  
      This patch will bring in a new global, ^DMSQ, and several new routines and
        
       
      Supported References
      ====================
       
      DATA DICTIONARIES  
      All the files, fields, and cross-references included in this patch can be
      referenced directly without integration agreements.  This enables vendors
      to create mapping utilities using the SQLI structures.  Specifically,
      these are the files in the 1.52 to 1.53 number range, all stored in ^DMSQ.
      options in the DMSQ namespace.
      See the SQLI Vendor Manual on the SQLI home page for more specific
      information.
       
      CALLABLE ENTRY POINTS
      The following routine entry points may be called in application code.
      They are primarily designed for use in vendor mapping code.  See the SQLI
      Site Manual and SQLI Vendor manual for more information.
       
      Populating SQLI files (Projecting the Interface)
               ALLF^DMSQF - non-interactive call
       
               SETUP^DMSQ - interactive call (used in the DMSQ PROJECT option)
       
      Populating the SQLI_KEY_WORD file (with the SQL vendor's keywords)
               KW^DMSQD - loads keywords from a specified global
       
      Populate the SQLI_TABLE and SQLI_PRIMARY_KEY row counts (to accumulate
      statistics that vendors may want to use to optimize queries)
               ALLS^DMSQS - all tables
               STATS^DMSQS - one table 
       
      The new files (in ^DMSQ) are in the 1.52 to 1.53 number range.  Each one
      Naming algorithms to generate SQL-compatible names
               $$SQLI^DMSQU - general check
               $$SQLK^DMSQU - general check including keyword check
               $$FNB^DMSQU - specific check for table names
               $$CN^DMSQU - specific check for column names
       
      DIRECT MODE UTILITIES (also available via the DMSQ MENU option)
      These calls are for direct mode use only (issued interactively at the
      programmer prompt).  They are not supported for use in application code.
      See the SQLI Site Manual for more information.
      begins with SQLI, e.g. the SQLI_TABLE file.  None of the files includes
       
               MAIN^DMSQE - lists files/fields that couldn't be projected
               RUNONE^DMSQ - re-run projection for one file (for testing only)
       
       
      Routine Summary: 
      ================
      The following routines are included in this patch.  The second line of
      these routines will look like: 
         
      
    • 25
      DATE APPLIED:   1996-09-24 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch fixes the following problems: 
       2.  The DBS calls FILE^DID and $$GET1^DID return an incorrect value for a
      file's READ ACCESS.
        
      Routine Summary: 
      ================
        
       The following routines are included in this patch.  The second line of
      these routines now look like:
         
         <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
         
       CHECK^XTSUMBLD results: 
         
         Routine Name   Before Patch    After Patch     Patch List 
         ============   ============    ===========     ==========
         DIQGDDT        7439422         7439520         25
         DITR           5710355         5514796         6,25
       
      Installation Instructions: 
      ==========================
       1.  When merging data using KIDS, there is a case where existing data at
       
           1.  Routine mapping is NOT recommended for these routines. If you are
      using routine mapping, ensure that these routines are NOT in your mapped
      routine set before proceeding.
       
           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 DIENV will run automatically.  
        
           DIENV is sent in order to prevent the inadvertent queueing of the 
      the target site gets overwritten by incoming data.  When a file being
       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.
        
           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 
      exported contains pointers, and the pointed-to-file is being exported
                  Backup a Transport Global 
        
           5.  Inhibit users from login into the system.  Any user who is logged
      in and using an application which uses the DBS calls $$GET1^DID and
      FILE^DID run the risk of getting <CLOBBER> errors.  Any user using
      FileMan's 'Transfer File Entries' option run the risk of getting an error
      in the midst of a transfer.  A database record may be left in a corrupted
      state.  Any init that may be running or any KIDS installation that brings
      in data may leave the records in a corrupted state.
        
      as well, MERGING and RESOLVING POINTERS will cause the existing pointer
           6.  AXP Sites - Place Taskman in a WAIT State.  
               MSM 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*21.0*25
                                       ==========
        
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      values on the first file to get overwritten by the incoming data.  This
      Options, and Protocols?
        
           8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      other CPUs?'.
            Then enter the names of your other Compute and Print server(s).  
            NOTE: You will then see the following message: 
              TASKMAN is not running. You must run the routine XPDCPU in the 
       production UCI for each of the VOLUME SETS you have listed once the 
       installation starts!! 
        
      patch fixes this problem by not overwriting existing data.
           9.  MSM Sites - After the installation begins, you will be prompted
      to enter a DEVICE.  After the device has been entered, KIDS will pause.
      At this time, you need to go to each of the CPUs that were entered in step
      8, and start a job that will allow them to receive the patched routines.
      On each one, you do the following:
           a) >D ^XUP    This will set up the programming environment.  
               ======
           b) >D ^XPDCPU  This starts the job that receives the patched
      routines.  
               =========
        
           c) Select INSTALL NAME: DI*21.0*25
                                   ==========
      The installation will then continue.  
        
           10.  AXP Sites - After the patch has been installed, rebuild your map
      set. 
        
           11.  AXP Sites - Remove Taskman from WAIT State.  
                MSM Sites - Restart Taskman.  
      
    • 44 SEQ #38
      DATE APPLIED:   1998-02-20 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
       This patch makes a few minor bug fixes and contains some enhancements to
        
        
              Format:   NUMYEAR4(datexp)
              Where:    datexp is an expression with a date/time value
              Use:      This function returns the 4 digit year in datexp as a  
                        number.
        
              Example:  NUMYEAR4(DATE OF BIRTH)==> 1949
       
         
      Routine Summary: 
       DIDT (%DT)  Two minor bugs were corrected.  
      ================
       
        Routine Name         Before Patch    After Patch     Patch List 
        ============         ============    ===========     ==========
        DDMP2                9285380         9295425         30,44 
        DIDT (%DT)           6367783         6481242         18,24,37,44 
        DIDTC (%DTC)         7334026         7099203         18,44 
        DIEH1                1151210         1201975         44 
        DIENV (env.check)     129370          129370         44
        DILIBF               6348908         6194115         44 
           One is that before, if %DT input variable contained "X", and if user
        DINVMSM              8405664         8320664         44 
        DIP12                4793451         4793661         2,9,16,44 
        DIQGU                4937798         4828002         8,44 
       
            To test if the transport has been corrupted, you can use the "Verify
      Package Integrity" option.  This option is under Utilities under the KIDS
      menu.  It will compare the checksums in the build with the current
      checksums and list any that differ.  
       
       
           entered a date like MMDDYY where the year was "00", the date was
       
       Installation Instructions: 
       ==========================
       
       NOTE the instructions that are different for your M implementation.  
       
            1.   NOTE: Users ARE NOT allowed to be on the system during the 
      installation.  
       
         --- Pre Installation steps --- 
           rejected. 
       
            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 DIENV will run automatically.
       
           DIENV is sent to prevent the inadvertent queuing of 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.  
           The other is that one of the algorithms was incorrectly treating the
       
            4.   On the KIDS menu, under the 'Installation' menu, use the
      following options:
                  Verify Checksums in Transport Global 
                  Print Transport Global 
                  Compare Transport Global to Current System 
                  Backup a Transport Global 
       
         --- Actual Installation --- 
       
           year 2100 as a leap year.
            5.   Users ARE NOT allowed to be on the system during the
      installation. Inhibit users from login into the system.  %DT, %DTC, DILIBF
      and DIP12 in particular are used heavily in VISTA applications.  The
      consequences of installing this patch while users are on the system are
      that users may get a 'source routine edited' error.
       
            6.   DO place TaskMan in a WAIT state.  
       
            7.   DSM Sites: The routines %DT, %DTC and DILIBF are usually mapped
      on systems that allow mapping, so you will need to disable mapping for
        
      these routines.
       
            8.   On the KIDS menu, under the 'Installation' menu, use the
      following option:
                  Install Package(s) 
       
                  INSTALL NAME: DI*21.0*44 
                                ==========
       
             Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu Options,
           In addition, an enhancement was made that will change the current
      and Protocols?'
       
            9. DSM and MSM sites: After installing this patch, you need to move
      the routines DIDT and DIDTC from your production account into your manager
      account. Then, in the manager account, rename:
       
             DIDT to %DT 
             DIDTC to %DTC 
       
             Example: ZL DIDT ZS %DT 
           behavior. Currently, as documented, if a user enters only 2 digits of
       
           10. Open M sites: Rename: 
       
             DIDT to %DT 
             DIDTC to %DTC 
       
             Example: ZL DIDT ZS %DT 
       
           11.  DSM Sites: Rebuild your mapped set if necessary.  
       
       ensure compliance with year 2000 issues.  The changes are as follows:
           the year and if %DT is not set up by the developer to contain either
           12.  DO remove TaskMan from a WAIT state.  
       
           13.  Enable users' login.  
           an "F" (future) or "P" (past), then FileMan assumes the current
           century.  Thus in 1997, if a user enters 01/01/00, FileMan assumes
           01/01/1900.
        
           NEW BEHAVIOR for DIDT (%DT):
           note that this new behavior only applies when the user enters
           a 2-digit year, causing FileMan to guess the century.  Note
           also that the "F" and "P" flags will behave as they always have--this
           new behavior is only used when neither of those flags is set.
        
        
           If using the current century causes the date to be more than 80 years
           in the past, then FileMan will assume the next century.  Thus in 1997
           if a user enters a year of 0 through 16, FileMan will assume the
           years 2000 through 2016, because 1900 through 1916 are more than 80
           years in the past.
        
           If using the current century causes the date to be more than 20 years
           in the future, then FileMan will assume the previous century.  Thus
           in the year 2000, if the user enters 21 through 99, FileMan will
        
           assume the years 1921 through 1999, because 2021 through 2099 are
           more than 20 years in the future.
        
        
       DIDTC (%DTC)  Although all of the code properly handled dates up to 2100,
           the code was treating 2100 as a leap year.  This has been corrected.
           Also, online help for dates (HELP^%DTC) was changed to reflect the
           change in functionality described in ^%DT above.
        
        
        
       DIEH1  Online help for dates used by the DataBase Server calls (DT^DIEH1)
           was changed to reflect the change in functionality described in
           ^%DT above.  In support of this routine change is a change to entry
           #9110 in the DIALOG file.
        
        
       DILIBF  Old algorithms were treating the year 2100 as a leap year.  This
           has been corrected.
        
        
       DDMP2  Changed to call internal FileMan date formatting routines (DILIBF)
       DINVMSM  This routine contains operating system-specific code and is used
           by stand-alone FileMan sites only.  Routine SET was setting DT using
           an MSM-specific call that would not have worked properly in the year
           2000. This has been corrected.
        
        
       DIP12  In the PRINT option, if the user chose to print the sort criteria
           in the header of the report, and if any of the sort fields were
           dates, the date was previously printed with a 2-digit year. That is
           changed so that the date is now printed with a 4-digit year for
           rather than Kernel date formatting routines (XLFDT) to take
           clarity.
        
        
       DIQGU  Old algorithms were treating the year 2100 as a leap year.  This
           has been corrected.
        
        
        
       CHANGE TO ENTRY IN DIALOG FILE:  In support of new online help for dates
           to reflect the new behavior of ^%DT, entry number 9110 has been
           advantage of changes made to DILIBF (described below).
           changed. This entry is called from routine DIEH1.
        
        
        
       NEW FILEMAN FUNCTIONS: NUMDATE4 and NUMYEAR4
           The new FileMan Functions NUMDATE4 and NUMYEAR4 have been added to
           the list of FileMan Functions that are available for use within
           FileMan.  They behave as follows:
        
         NUMDATE4
        
        
              Format:  NUMDATE4(datexp)
              Where:   datexp is an expression with a date/time value
              Use:     This function returns the date in datexp, in MM/DD/YYYY
                       format.
        
              Example:  NUMDATE4(DATE OF BIRTH)==> 03/07/1949
        
        
         NUMYEAR4
      
    • 43 SEQ #39
      DATE APPLIED:   1998-03-18 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
       Description:
       ============
       
            Albany ISC
       
       Routine Summary :
       =================
       
            The following is a list of the routines included in this patch.
            The second line of each of these routines now looks like:
       
       ============
            <tab>;;21.0;VA FileMan;**patch list**;Dec 28, 1994
       
       Checksums According to CHECK^XTSUMBLD:
       ======================================
       
         Rtn Nm   Chksum Before   Chksum After  Patch List
         ------   -------------   ------------  ----------
         DICF     7724491         7752413       29,43
       
            To test if the transport has been corrupted, you can use the
       
            "Verify Package Integrity" option.  This option is under Utilities
            under the KIDS menu.  It will compare the checksums in the build
            with the current checksums and list any that differ.
       
       Installation Instructions:
       ==========================
       
       NOTE any instructions that are different for 486 or Alpha sites.
       
            1.   Users ARE NOT allowed to be on the system during the
            This patch fixes a problem introduced by patch DI*21*29,
            installation.
       
            2.   DO place TaskMan in a WAIT state.
       
            3.   This routine is not usually mapped on systems that allow
            it so you will probably not have to disable mapping.
       
            4.   Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu.
            This option will load the KIDS package onto your system.
       
            an invalid subscript error that could occur when editing
            5.   The patch has now been loaded into a Transport global on your
            system. You now need to use KIDS to install the Transport global.
        
            6.   On the KIDS menu, under the 'Installation' menu, use the
            following options:
        
                  Verify Checksums in Transport Global
                  Print Transport Global
                  Compare Transport Global to Current System
                  Backup a Transport Global
            a long line of M code in an input template. This problem
                  Install Package(s)
                  INSTALL NAME: DI*21.0*43
                                ==========
        
            7.   MSM Sites - Answer YES to the question 'Want to MOVE
            routines to other CPUs?'. Enter the names of your Compute and
            Print server(s).
        
                 AXP Sites - Answer NO to this question.
        
            was reported as NOIS ISW-0497-21817.
            8.   Rebuild your mapped set if necessary.
        
            9.   DO remove TaskMan from a WAIT state.
       
       Test Sites :
      
    • 41 SEQ #40
      DATE APPLIED:   1998-03-18 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Description:
           Mike Hendry). Mr. Hendry reported that uncompiling cross-
           Danila Manapsal). This change is also for the FileMan 
           Components.
       
           14. Updater: allow deletion of fields: DICA1 (for Michael 
           Ogi). Mr. Ogi reported that the Updater is needlessly blocking 
           the ability to delete fields, something the Filer (which it 
           calls) allows. This was changed. Reported in phone 
           conversation with Mr. Ogi.
       
           15. Updater: subentry problem: DICA1 (for Mike Kilmade). Mr. 
           references didn't work if the file had whole file-cross-
           Kilmade reported during development of PCMM that the Updater 
           was preventing deletion of subfile entries if the same FDA 
           added another subentry. This was fixed. Reported in Forum msg 
           # 19707244.
       
           16. Updater: process LAYGO Finding nodes before Adding nodes: 
           DICA2 (for Michael Ogi). Mr. Ogi reported during testing of 
           the Udpater that a bug prevented it from processing FDA nodes 
           in the order specified, which occasionally caused undefined 
           errors. The documented order was reestablished. Reported in 
           references on one of its subfiles. Reported in NOIS ISL-0897-
           phone conversation with Mr. Ogi.
       
           17. Updater: return 0 nodes for LAYGO Finding nodes: DICA (for 
           Michael Ogi). Mr. Ogi reported during testing of the Updater 
           that it was not returning 0 nodes for LAYGO Finding nodes as 
           documented. The documented order was reestablished. Reported 
           in phone conversation with Mr. Ogi.
       
           18. Updater: stop errors with LAYGO Finding nodes: DICA1 (for 
           Alan Chan). Mr. Chan reported that under some circumstances 
           51962.
           LAYGO Finding nodes were reporting errors instead of finding 
           existing entries. The errors were stopped, and LAYGO Finding 
           nodes now properly find existing entries. Reported in ISC-SF 
           msg # 1170164.
       
           19. Updater: stop multiple Updaters interference: DICA1 (for 
           Travis Torres). Mr. Torres reported that Updaters running 
           simultaneously in different processes on the same machine 
           could occasionally process each other's FDAs. The code was 
           changed to better segregate their data structures. Reported in 
       
           phone conversation with Mr. Torres.
       
           Output
           ------
           20. Sort: remove duplicates from prints: DIO0 (for David 
           Alexander, John Harvey, Nancy Nagle, Dan Petit, Daniel 
           Schramm, Ellen Zufall, Fil Beza). Many sites reported problems 
           with prints in which mnemonic cross-reference entries in the B 
           index were creating false positives in reports. Ms. Zufall and 
           Mr. Beza identified the problem as introduced by patch 
           2. Compiled Routines: problem uncompiling input templates: 
           DI*21*35, and Ms. Zufall fixed it. Reported in ISC-SF msg # 
           1198710, FORUM msg #s 25464901 and 25149562, and NOIS #s SFC-
           0198-60115, TOP-0198-40108, & WBP-1297-21797.
       
           21. Transfer: improve performance: DITR, and DITR1 (for Dave 
           Bolduc). Mr. Bolduc reported slow performance on large 
           transfers, and identified a fix to the problem that was 
           gratefully accepted. Reported in NOIS # AIM-0797-N2065.
       
           Special thanks go to Dave Alexander, whose keen eye for bugs
           DIEZ (for Cindy Heuer). Ms. Heuer reported that uncompiled 
           saved the rest of the VA a lot of grief with this patch.  :)
       
      Test Sites :
      ============
           AIM Center
           Boston VAMC
           Bronx VAMC
           Dublin VAMC
           Huntington VAMC
           Oklahoma City VAMC
           input templates would recompile themselves when the 
           Prescott VAMC
           Puget Sound HCS
           San Francisco VAMC
           Tuscaloosa VAMC
           Washington VAMC
           West Palm Beach VAMC
           Birmingham CIOFO
           Hines CIOFO
           Salt Lake City CIOFO
           San Francisco CIOFO
           definitions of fields within those templates were changed. 
       
      Routine Summary :
      =================
           The following is a list of the routines included in this
           patch.
       
           The second line of each of these routines now looks like:
       
           <tab>;;21.0;VA FileMan;**patch list**;Dec 28, 1994
       
           Reported in FORUM msg # 23842872.
           (Checksums According to CHECK^XTSUMBLD)
       
           Rtn Nm   Chksum Before   Chksum After  Patch List
           ------   -------------   ------------  ----------
           DIC1     7440729         7448670       29,41
           DICA     5157184         5237530       6,17,8,41
           DICA1    4597954         5338649       17,41
           DICA2    3685071         3688712       41
           DICF1    5555141         5923519       42,41
           DICF2    5355774         5392088       27,41
      ============
       
           DICF3    9189474         9003959       17,42,41
           DICF5    3301437         3486879       17,27,41
           DICL1    2778676         2538541       17,41
           DIEF     6851994         6413098       41
           DIEFU    4587189         4602560       41
           DIEZ     8995968         9310202       41
           DIO0     9392292         9418825       9,21,35,41
           DIPZ0    2495452         2524580       41
           DIR      8414467         8809710       13,24,41
           DIR1     7765832         7982983       6,13,19,41
           Reader
           DIR2     8922361         9053765       41
           DIR3     3670507         2913754       19,41
           DITR     5514796         5528738       6,25,41
           DITR1    6414011         6525800       41
       
           To test if the transport has been corrupted, you can use the
           "Verify Package Integrity" option.  This option is under
           Utilities under the KIDS menu.  It will compare the checksums
           in the build with the current checksums and list any that
           differ.
           ------
       
      Installation Instructions:
      ==========================
      NOTE any instructions that are different for DSM sites.
       
           1.   Users ARE NOT allowed to be on the system during the
           installation.
       
           2.   Place TaskMan in a WAIT state.
       
           3. Reader: case sensitivity with codes: DIR1 (for Marcia
           3.   DSM sites: Disable routine mapping (DIC1, DIR, DIR1, &
           DIR2 are usually mapped).
       
           4.   Use the 'INSTALL/CHECK MESSAGE' option on the PackMan
           menu. This option will load the KIDS package onto your system.
       
           5.   The patch has now been loaded into a Transport global on
           your system. You now need to use KIDS to install the Transport
           global.
       
           Insley). Ms. Insley reported that the Reader converted the
           6.   On the KIDS menu, under the 'Installation' menu, use the
           following options:
       
                 Verify Checksums in Transport Global
                 Print Transport Global
                 Compare Transport Global to Current System
                 Backup a Transport Global
                 Install Package(s)
                 INSTALL NAME: DI*21.0*41
                               ==========
           case of the user's input for the external form of the codes,
       
           7.   DSM sites: Rebuild your mapped routine set.
       
           8.   Remove TaskMan from its WAIT state.
           but not for the internal. Reported in Forum msg # 23931868.
       
           4. Reader: list and range problems: DIR3 (for Gary Beuschel).
           Mr. Beuschel reported problem was that the Reader rejects
           This patch contains critical bug fixes requested by package 
           lists that contain consecutive numbers out of order, such as
           50,49; I found that it also rejected a number followed by a
           range ending in that number, such as 50,40-50. Reported in
           ISC-SF msg #s 1190657, 1193613, and 1193773.
       
           5. Reader: problems with help for dates: DIR, DIR2 (for Gary 
           Beuschel). Mr. Beuschel reported that the help for dates is 
           scanty compared to what the %DT utility provides. It has been 
           brought in line with %DT's, and also made responsive to the 
           date parameters passed in the second ^-piece of DIR(0). 
           developers in need of the fixes for their own patches or 
           Reported by phone.
       
           6. Reader: DIR("PRE") parameter: DIR (for Gary Beuschel). Mr.
           Beuschel needed a programming hook to let him intercept the
           user's input before the Reader begins its data type
           validation. The new supported input parameter DIR("PRE") is a
           pre-validation transform that can either change X, in which
           case the Reader will proceed as though the new value is what
           the user entered, or can kill X, in which case the Reader will
           behave as though the user entered an illegal value. DIR("PRE")
           package releases.
           executes almost immediately after the READ takes place, just
           after DTOUT is set and before any other checking is done. The
           only inputs are X and DTOUT, and the only outputs are X and
           DTOUT. Reported in phone conversation with Mr. Beuschel.
       
           Lookup
           ------
           7. Classic Lookup: echo & match lists: DIC1 (for Marcia 
           Insley, Tana Defa, and Melissa Hughes). Ms. Insley reported 
           during testing of CPRS that Puget Sound needed a change to how 
       
           DIC's E flag works. The E flag, which normally ensures a 
           user's response is echoed back, did not do so when the user 
           picked from a match list, a time when typos are therefore 
           difficult to notice but easy to make. This was changed to 
           make E work with match list selections. Reported in Forum msg 
           # 24573804.
       
           8. Finder: `IEN lookup problem: DICF1 (for Gary Beuschel). Mr. 
           Beuschel reported that the Finder's `IEN lookup is only 
           allowing IENs that are integers, disallowing such IENs as the 
           Compiled Routines
           Postmaster's (.5). This was fixed. Reported in phone 
           conversation with Mr. Beuschel.
       
           9. Finder: illegal number error: DICF3 (for Bob Fuller). Mr. 
           Fuller reported an illegal number error caused by the Finder's 
           vulnerability to input that looks like an exponential. The 
           Finder has been bullet-proofed. Reported in NOIS # BRX-0397-
           12605.
       
           10. Finder & Lister: tolerate empty indexes: DICF2, DICF3, 
           -----------------
           DICF5, DICL1 (for Rob Whelan, Deborah Gorman, Diane McCance, 
           and Gary Beuschel). Reported in NOIS #s BHH-0897-41483 and 
           CLE-0797-42276, and in phone conversations with Mr. Whelan and 
           Mr. Beuschel. 
       
           Enter & Edit
           ------------
           11. Filer: prevent variable problem: DIEFU (for Joel Ivey). 
           Mr. Joel reported that during testing of Patient Merge, the 
           Filer did not adequately protect its own variables from deeply 
           1. Compiled Routines: problem uncompiling xrefs: DIPZ0 (for 
           recursive calls, playing havoc during Merge. This was fixed. 
           Reported in phone conversation with Mr. Ivey.
       
           12. Filer: allow deletion of top-level records: DIEF (for & by 
           Danila Manapsal). Ms. Manapsal reported that the FileMan 
           Components need the ability to delete records through the 
           Filer. She corrected the Filer to allow this. Reported in 
           phone conversation with Ms. Manapsal.
       
           13. Updater: allow deletion of top-level records: DICA1 (for 
      
    • 12 SEQ #17
      DATE APPLIED:   1998-03-19 00:00:00
      APPLIED BY:   USER,ONE
    • 43
      DATE APPLIED:   1997-07-10 00:00:00
      DESCRIPTION:   
       Description:
       ============
       
            Albany ISC
       
       Routine Summary :
       =================
       
            The following is a list of the routines included in this patch.
            The second line of each of these routines now looks like:
       
       ============
            <tab>;;21.0;VA FileMan;**patch list**;Dec 28, 1994
       
       Checksums According to CHECK^XTSUMBLD:
       ======================================
       
         Rtn Nm   Chksum Before   Chksum After  Patch List
         ------   -------------   ------------  ----------
         DICF     7724491         7752413       29,43
       
            To test if the transport has been corrupted, you can use the
       
            "Verify Package Integrity" option.  This option is under Utilities
            under the KIDS menu.  It will compare the checksums in the build
            with the current checksums and list any that differ.
       
       Installation Instructions:
       ==========================
       
       NOTE any instructions that are different for 486 or Alpha sites.
       
            1.   Users ARE NOT allowed to be on the system during the
            This patch fixes a problem introduced by patch DI*21*29,
            installation.
       
            2.   DO place TaskMan in a WAIT state.
       
            3.   This routine is not usually mapped on systems that allow
            it so you will probably not have to disable mapping.
       
            4.   Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu.
            This option will load the KIDS package onto your system.
       
            an invalid subscript error that could occur when editing
            5.   The patch has now been loaded into a Transport global on your
            system. You now need to use KIDS to install the Transport global.
        
            6.   On the KIDS menu, under the 'Installation' menu, use the
            following options:
        
                  Verify Checksums in Transport Global
                  Print Transport Global
                  Compare Transport Global to Current System
                  Backup a Transport Global
            a long line of M code in an input template. This problem
                  Install Package(s)
                  INSTALL NAME: DI*21.0*43
                                ==========
        
            7.   MSM Sites - Answer YES to the question 'Want to MOVE
            routines to other CPUs?'. Enter the names of your Compute and
            Print server(s).
        
                 AXP Sites - Answer NO to this question.
        
            was reported as NOIS ISW-0497-21817.
            8.   Rebuild your mapped set if necessary.
        
            9.   DO remove TaskMan from a WAIT state.
       
       Test Sites :
      
    • 41
      DATE APPLIED:   1998-03-12 00:00:00
      DESCRIPTION:   
      Description:
           Mike Hendry). Mr. Hendry reported that uncompiling cross-
           Danila Manapsal). This change is also for the FileMan 
           Components.
       
           14. Updater: allow deletion of fields: DICA1 (for Michael 
           Ogi). Mr. Ogi reported that the Updater is needlessly blocking 
           the ability to delete fields, something the Filer (which it 
           calls) allows. This was changed. Reported in phone 
           conversation with Mr. Ogi.
       
           15. Updater: subentry problem: DICA1 (for Mike Kilmade). Mr. 
           references didn't work if the file had whole file-cross-
           Kilmade reported during development of PCMM that the Updater 
           was preventing deletion of subfile entries if the same FDA 
           added another subentry. This was fixed. Reported in Forum msg 
           # 19707244.
       
           16. Updater: process LAYGO Finding nodes before Adding nodes: 
           DICA2 (for Michael Ogi). Mr. Ogi reported during testing of 
           the Udpater that a bug prevented it from processing FDA nodes 
           in the order specified, which occasionally caused undefined 
           errors. The documented order was reestablished. Reported in 
           references on one of its subfiles. Reported in NOIS ISL-0897-
           phone conversation with Mr. Ogi.
       
           17. Updater: return 0 nodes for LAYGO Finding nodes: DICA (for 
           Michael Ogi). Mr. Ogi reported during testing of the Updater 
           that it was not returning 0 nodes for LAYGO Finding nodes as 
           documented. The documented order was reestablished. Reported 
           in phone conversation with Mr. Ogi.
       
           18. Updater: stop errors with LAYGO Finding nodes: DICA1 (for 
           Alan Chan). Mr. Chan reported that under some circumstances 
           51962.
           LAYGO Finding nodes were reporting errors instead of finding 
           existing entries. The errors were stopped, and LAYGO Finding 
           nodes now properly find existing entries. Reported in ISC-SF 
           msg # 1170164.
       
           19. Updater: stop multiple Updaters interference: DICA1 (for 
           Travis Torres). Mr. Torres reported that Updaters running 
           simultaneously in different processes on the same machine 
           could occasionally process each other's FDAs. The code was 
           changed to better segregate their data structures. Reported in 
       
           phone conversation with Mr. Torres.
       
           Output
           ------
           20. Sort: remove duplicates from prints: DIO0 (for David 
           Alexander, John Harvey, Nancy Nagle, Dan Petit, Daniel 
           Schramm, Ellen Zufall, Fil Beza). Many sites reported problems 
           with prints in which mnemonic cross-reference entries in the B 
           index were creating false positives in reports. Ms. Zufall and 
           Mr. Beza identified the problem as introduced by patch 
           2. Compiled Routines: problem uncompiling input templates: 
           DI*21*35, and Ms. Zufall fixed it. Reported in ISC-SF msg # 
           1198710, FORUM msg #s 25464901 and 25149562, and NOIS #s SFC-
           0198-60115, TOP-0198-40108, & WBP-1297-21797.
       
           21. Transfer: improve performance: DITR, and DITR1 (for Dave 
           Bolduc). Mr. Bolduc reported slow performance on large 
           transfers, and identified a fix to the problem that was 
           gratefully accepted. Reported in NOIS # AIM-0797-N2065.
       
           Special thanks go to Dave Alexander, whose keen eye for bugs
           DIEZ (for Cindy Heuer). Ms. Heuer reported that uncompiled 
           saved the rest of the VA a lot of grief with this patch.  :)
       
      Test Sites :
      ============
           AIM Center
           Boston VAMC
           Bronx VAMC
           Dublin VAMC
           Huntington VAMC
           Oklahoma City VAMC
           input templates would recompile themselves when the 
           Prescott VAMC
           Puget Sound HCS
           San Francisco VAMC
           Tuscaloosa VAMC
           Washington VAMC
           West Palm Beach VAMC
           Birmingham CIOFO
           Hines CIOFO
           Salt Lake City CIOFO
           San Francisco CIOFO
           definitions of fields within those templates were changed. 
       
      Routine Summary :
      =================
           The following is a list of the routines included in this
           patch.
       
           The second line of each of these routines now looks like:
       
           <tab>;;21.0;VA FileMan;**patch list**;Dec 28, 1994
       
           Reported in FORUM msg # 23842872.
           (Checksums According to CHECK^XTSUMBLD)
       
           Rtn Nm   Chksum Before   Chksum After  Patch List
           ------   -------------   ------------  ----------
           DIC1     7440729         7448670       29,41
           DICA     5157184         5237530       6,17,8,41
           DICA1    4597954         5338649       17,41
           DICA2    3685071         3688712       41
           DICF1    5555141         5923519       42,41
           DICF2    5355774         5392088       27,41
      ============
       
           DICF3    9189474         9003959       17,42,41
           DICF5    3301437         3486879       17,27,41
           DICL1    2778676         2538541       17,41
           DIEF     6851994         6413098       41
           DIEFU    4587189         4602560       41
           DIEZ     8995968         9310202       41
           DIO0     9392292         9418825       9,21,35,41
           DIPZ0    2495452         2524580       41
           DIR      8414467         8809710       13,24,41
           DIR1     7765832         7982983       6,13,19,41
           Reader
           DIR2     8922361         9053765       41
           DIR3     3670507         2913754       19,41
           DITR     5514796         5528738       6,25,41
           DITR1    6414011         6525800       41
       
           To test if the transport has been corrupted, you can use the
           "Verify Package Integrity" option.  This option is under
           Utilities under the KIDS menu.  It will compare the checksums
           in the build with the current checksums and list any that
           differ.
           ------
       
      Installation Instructions:
      ==========================
      NOTE any instructions that are different for DSM sites.
       
           1.   Users ARE NOT allowed to be on the system during the
           installation.
       
           2.   Place TaskMan in a WAIT state.
       
           3. Reader: case sensitivity with codes: DIR1 (for Marcia
           3.   DSM sites: Disable routine mapping (DIC1, DIR, DIR1, &
           DIR2 are usually mapped).
       
           4.   Use the 'INSTALL/CHECK MESSAGE' option on the PackMan
           menu. This option will load the KIDS package onto your system.
       
           5.   The patch has now been loaded into a Transport global on
           your system. You now need to use KIDS to install the Transport
           global.
       
           Insley). Ms. Insley reported that the Reader converted the
           6.   On the KIDS menu, under the 'Installation' menu, use the
           following options:
       
                 Verify Checksums in Transport Global
                 Print Transport Global
                 Compare Transport Global to Current System
                 Backup a Transport Global
                 Install Package(s)
                 INSTALL NAME: DI*21.0*41
                               ==========
           case of the user's input for the external form of the codes,
       
           7.   DSM sites: Rebuild your mapped routine set.
       
           8.   Remove TaskMan from its WAIT state.
           but not for the internal. Reported in Forum msg # 23931868.
       
           4. Reader: list and range problems: DIR3 (for Gary Beuschel).
           Mr. Beuschel reported problem was that the Reader rejects
           This patch contains critical bug fixes requested by package 
           lists that contain consecutive numbers out of order, such as
           50,49; I found that it also rejected a number followed by a
           range ending in that number, such as 50,40-50. Reported in
           ISC-SF msg #s 1190657, 1193613, and 1193773.
       
           5. Reader: problems with help for dates: DIR, DIR2 (for Gary 
           Beuschel). Mr. Beuschel reported that the help for dates is 
           scanty compared to what the %DT utility provides. It has been 
           brought in line with %DT's, and also made responsive to the 
           date parameters passed in the second ^-piece of DIR(0). 
           developers in need of the fixes for their own patches or 
           Reported by phone.
       
           6. Reader: DIR("PRE") parameter: DIR (for Gary Beuschel). Mr.
           Beuschel needed a programming hook to let him intercept the
           user's input before the Reader begins its data type
           validation. The new supported input parameter DIR("PRE") is a
           pre-validation transform that can either change X, in which
           case the Reader will proceed as though the new value is what
           the user entered, or can kill X, in which case the Reader will
           behave as though the user entered an illegal value. DIR("PRE")
           package releases.
           executes almost immediately after the READ takes place, just
           after DTOUT is set and before any other checking is done. The
           only inputs are X and DTOUT, and the only outputs are X and
           DTOUT. Reported in phone conversation with Mr. Beuschel.
       
           Lookup
           ------
           7. Classic Lookup: echo & match lists: DIC1 (for Marcia 
           Insley, Tana Defa, and Melissa Hughes). Ms. Insley reported 
           during testing of CPRS that Puget Sound needed a change to how 
       
           DIC's E flag works. The E flag, which normally ensures a 
           user's response is echoed back, did not do so when the user 
           picked from a match list, a time when typos are therefore 
           difficult to notice but easy to make. This was changed to 
           make E work with match list selections. Reported in Forum msg 
           # 24573804.
       
           8. Finder: `IEN lookup problem: DICF1 (for Gary Beuschel). Mr. 
           Beuschel reported that the Finder's `IEN lookup is only 
           allowing IENs that are integers, disallowing such IENs as the 
           Compiled Routines
           Postmaster's (.5). This was fixed. Reported in phone 
           conversation with Mr. Beuschel.
       
           9. Finder: illegal number error: DICF3 (for Bob Fuller). Mr. 
           Fuller reported an illegal number error caused by the Finder's 
           vulnerability to input that looks like an exponential. The 
           Finder has been bullet-proofed. Reported in NOIS # BRX-0397-
           12605.
       
           10. Finder & Lister: tolerate empty indexes: DICF2, DICF3, 
           -----------------
           DICF5, DICL1 (for Rob Whelan, Deborah Gorman, Diane McCance, 
           and Gary Beuschel). Reported in NOIS #s BHH-0897-41483 and 
           CLE-0797-42276, and in phone conversations with Mr. Whelan and 
           Mr. Beuschel. 
       
           Enter & Edit
           ------------
           11. Filer: prevent variable problem: DIEFU (for Joel Ivey). 
           Mr. Joel reported that during testing of Patient Merge, the 
           Filer did not adequately protect its own variables from deeply 
           1. Compiled Routines: problem uncompiling xrefs: DIPZ0 (for 
           recursive calls, playing havoc during Merge. This was fixed. 
           Reported in phone conversation with Mr. Ivey.
       
           12. Filer: allow deletion of top-level records: DIEF (for & by 
           Danila Manapsal). Ms. Manapsal reported that the FileMan 
           Components need the ability to delete records through the 
           Filer. She corrected the Filer to allow this. Reported in 
           phone conversation with Ms. Manapsal.
       
           13. Updater: allow deletion of top-level records: DICA1 (for 
      
    • 34 SEQ #41
      DATE APPLIED:   1998-06-04 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch contains routines and Remote Procedures to support the VA
      these routines now look like:
       
       <tab>;;21.0;VA FileMan;**34**;Feb 28, 1998
       
      CHECK^XTSUMBLD results: 
       
       Routine Name  Before Patch  After Patch  Patch List 
       ============  ============  ===========  ==========
       DDR           n/a           7267978      34 
       DDR0          n/a           4956773      34 
      FileMan Delphi Components (FMDC).  FMDC provides data controls and data
       DDR1          n/a           1043214      34 
       DDR2          n/a           7680688      34 
       DDR3          n/a           3479219      34 
       
      Installation Instructions: 
      ==========================
       
      1.  DSM sites: There is no need to map these routines at this time.  
       
      2.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu.  This
      access components that make it easy to work with VA FileMan data in Delphi
      option will load the KIDS packages onto your system.
       
      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 
      applications.
             Backup a Transport Global 
       
      5.  Users do not need to logoff.  They may remain on the system while
      this patch is installed.
       
      6.  There is no need to place Taskman in a WAIT state.
       
      7.  On the KIDS menu, under the 'Installation' menu, use the following 
      option: 
             Install Package(s): 
       
             INSTALL NAME:  DI*21.0*34 
                            ==========
             Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu Options,
      and Protocols?
      Routine Summary: 
      ================
       
      The following routines are included in this patch.  The second line of
      
    • 47 SEQ #42
      DATE APPLIED:   1998-07-25 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Description:
      fields. Patch 42 changed it so that the kill logic on the .01 field fired
         DIK      7352303         7563710       42,47
         DIK1     5943602         6293657       42,47
         DIU0     6188632         6215777       47
       
       
      Installation Instructions:
      =========================
       
         1.  Users ARE NOT allowed to be on the system during the installation.
           
      first.
         2.  Place TaskMan in a WAIT state. 
       
         3.  These routines are not usually mapped on systems that allow it, so
         you will probably not have to disable mapping. If any of the routines
         in this patch are mapped, disable mapping before proceeding. 
       
         4.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu. This
         option will load the KIDS (Kernel Installation and Distribution System)
         package onto your system.
       
       
         5.  The patch has now been loaded into a transport global on your
         system. On the KIDS menu, select the 'Installation' menu and use the
         following options: 
          
             Verify Checksums in Transport Global
             Print Transport Global
             Compare Transport Global to Current System
             Backup a Transport Global
             Install Package(s) 
                             
      This caused a problem for IFCAP. Cross references on File #421 are defined
               INSTALL NAME: DI*21.0*47
                             ==========
       
         6.  MSM-DOS Sites - Answer YES to the question 'Want to MOVE routines
         to other CPUs?'. Enter the names of your Compute and Print server(s).
           
             AXP Sites - Answer NO to this question.
       
         7.  If the routines were unmapped as part of step 3, the mapped set
         should be rebuilt once the installation has run to completion.
      in such a way that when a record is deleted, if the kill logic for the .01
       
         8.  Remove TaskMan from a WAIT state. 
      field is fired before the kill logic on other fields, an erroneous "AL"
      cross reference remains on the file. Erroneous "AL" cross references can
      cause subsequent errors when attempts are made to release transactions.
       
      This patch restores the pre-Patch 42 behavior, so that the kill logic on
      ===========
      the .01 field fires last when a record is deleted.
       
        NOIS: ALT-0698-21639
              SAM-0698-20488
              SAJ-0698-70174
              CIH-0598-41816
              NYN-0598-11513
              MEM-0598-71203
              LOU-0598-40986
              SAM-0498-22344
      This patch corrects some problems with record and file deletion.
              EKH-0498-41197
              SBY-0498-31176
              MAC-0498-61095
              PRE-0498-61070
              SFC-0498-60956
              MEM-0498-70661
              ELP-0398-72724
              GAI-0398-32657
              LAK-0398-32457
              SFC-0398-62414
       
              NYN-0398-10170
              MWV-0298-21129
              BRX-0298-10388
              WAS-0198-22126
              BYN-0198-11150
              PUG-0198-51131
              MCM-0198-51046
              HAC-0198-51043
              SFC-0198-60783
              GAI-0198-30228
      DIK,DIK1
              CLA-0198-20132
              MIN-1297-41083
              HVH-0997-11397
              TUC-0997-61281
       
              
      DIK,DIK1
      --------
      When many fields in a file are being audited, and ^DIK is used to delete
      entries in file, or the entry points to ^DIK are used to reindex entries,
      --------
      the DIAU array could get very large and cause an allocation error when the
      local symbol table fills up.
       
        NOIS: ISB-0397-32129
              TAM-0896-30558
       
       
      DIU0
      ----
      If EN^DIU2 is used to delete a file that has a global root of
      The patch to these two routines backs out a change made by Patch DI*21*42.
      ^DIC(FileNumber), and the DIU input variable contains the global root
      without a trailing comma (e.g., "^DIC(81.2" ), EN^DIU2 proceeded to delete
      File #1. This patch makes EN^DIU2 check that the global root passed in DIU
      ends in either a comma or a close parenthesis.
       
        NOIS: ISA-0497-11765
       
       
      Test Sites:
      ==========
      Prior to patch 42, when a record is deleted with ^DIK, the kill logic on
        Salem, VA
        Central Iowa
        Memphis, TN
        Tuscaloosa, AL
       
                
      Routine Summary:
      ===============
      The following routines are included in this patch.  The second
      line of each of these routines now looks like:
      the .01 field of the record fired last, after the kill logic on other
       
         <tab>;;21.0;VA FileMan;**patch list**;Dec 28, 1994
       
       
      Checksums
      =========
      Checksums obtained using CHECK^XTSUMBLD.
       
         Rtn Nm   Chksum Before   Chksum After  Patch List
         ------   -------------   ------------  ----------
      
    • 46 SEQ #43
      DATE APPLIED:   1998-07-25 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
       
           
        CHECK^XTSUMBLD results: 
           
           Routine Name   Before Patch    After Patch     Patch List 
           ============   ============    ===========     ==========
           DIPRE                            969775           46
         
        Installation Instructions: 
        ==========================
           
        The pre-install routine DIPRE moves the two Y2K functions NUMDATE4 and
        1.  Mapping need not be disabled, users need not log off, and TaskMan
        need not be in a WAIT state.
          
        ---  Pre-Installation Steps  ---
       
        2.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu. This
        option will load the KIDS package onto your system.  
           
        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.
        NUMYEAR4 into the protected FileMan numberspace of the FUNCTION file.
          
        4.  On the KIDS menu, under the 'Installation' menu, optionally use the
        following options: Print Transport Global Compare Transport Global to
        Current System Verify Checksums in Transport Global Backup a Transport
        Global 
          
         ---  Actual Installation  ---
       
        5.  On the KIDS menu, under the 'Installation' menu, use the following
        option: 
       
         
                    Install Package(s): 
                    INSTALL NAME: DI*21.0*46 
                                  ==========
         
                    Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
        Options, and Protocols?' 
       
                    **Please Note: At the DEVICE prompt, this install may be
        Queued to a print device.
        Routine Summary: 
         
        This completes the installation instructions.
        ================
        The following routine is included in this patch. Its second line 
        will look like: 
           <tab>;;21.0;VA FileMan;**46**;Dec 28, 1994 
      
    • 51 SEQ #44
      DATE APPLIED:   1998-10-07 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Description:
       
      NOIS:
      =====
      DAY-0697-42372
       
      Thanks to Test Sites:
      =====================
      Dayton, OH
      Clarksburg, WV
      Muskogee, OK
      ============
       
      Routine Summary: 
      ================
       
      The following routine is included in this patch.  The second line of the
      routine now look like:
        
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
      CHECK^XTSUMBLD results: 
      If a programmer sets ^UTILITY($J,"W") but there are no descendants, DIWW
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DIWW           5618941         5644162         15,51
       
      Installation Instructions: 
      ==========================
       
              This patch may be installed anytime during non-peak activity and
      may be Queued to install during non-peak hours. The installation time will
      would go into a self-contained loop. The FileMan Programmer Manual states
      only take a couple of minutes.
       
           1.  Routine mapping is NOT recommended for this routine. If you are
      using routine mapping, ensure that this routine is NOT in your mapped
      routine set before proceeding.
       
           2.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu. This 
      option will load the KIDS package onto your system.
         
           3.  The patch has now been loaded into a transport global on your
      on page 138, when talking about DIWP, that the programmer should Kill
      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 
       
      ^UTILITY($J,"W") prior to calling DIWP and DIWW. However, it was
           5.  On the KIDS menu, under the 'Installation' menu, use the
      following option:
       
                  Select Installation Option: Install Package(s) 
                  Select INSTALL NAME: DI*21.0*51
                                       ==========
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
        
           6.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      recognized that the Kill may not always take place and, therefore, there
      other CPUs?'. Then enter the names of your other Compute and Print
      server(s).
      was a possibility of an internal loop.  A check is now made that if
      ^UTILITY($J,"W") exists and there are no descendants, DIWW Quits.
      
    • 27
      DATE APPLIED:   1996-09-25 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Description: 
      recursion until it ran out of stack space. 
      installation starts!! 
       
          9.  MSM Sites - After the installation begins, you will be prompted 
      to enter a DEVICE.  After the device has been entered, KIDS will pause.  
      At this time, you need to go to each of the CPUs that were entered in 
      step 8, and start a job that will allow them to receive the patched 
      routines.  On each one, you do the following: 
       
          a) >D ^XUP    This will set up the programming environment. 
              ====== 
       
          b) >D ^XPDCPU This starts the job that receives the patched routines. 
              ========= 
          c) Select INSTALL NAME: DI*21.0*27 
                                  ========== 
      The installation will then continue. 
       
          10.  AXP Sites - Remove Taskman from WAIT State. 
               MSM Sites - Restart Taskman. 
       
          11.  Enable users' login.
      There are two other independent problems at these sites that this patch 
      does not fix: the problem with WRITE commands in the data dictionaries of 
      some of the files involved, which must be manually replaced by the 
      application or local developers; and a PCMM bug that caused allocation 
      errors when a patient lookup value produced too many possible matches, 
      which is fixed by an upcoming PCMM patch. These problems were reported by 
      the following NOISes: SPO-0896-50876, POR-0896-50871, IND-0796-40935, 
      ALB-0796-51236, and MGY-0796-30889. (DICF, DICF2, DICF5) 
      ============ 
       
      2.  It makes the Finder tolerate being called by the FileMan Database 
      Server (DBS) when DIERR is already defined. This change is needed by 
      patch DI*21*8, which is simultaneously under development. Because this 
      fix changed the routine DICF, also changed by the fix to the problem 
      described above, it was moved out of DI*21*8 and into DI*21*27 to make 
      the simultaneous development of these two patches easier to coordinate. 
      (DICF) 
       
      Routine Summary: 
       
      ================ 
       
      The following routines are included in this patch. The second line of 
      these routines now looks like: 
       
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
       
      CHECK^XTSUMBLD results: 
       
        Routine Name   Before Patch    After Patch     Patch List 
      This patch fixes two problems: 
        ============   ============    ===========     ========== 
        DICF           6981054         7062808         17,27 
        DICF2          5350507         5355774         27 
        DICF5          2906278         3301437         17,27 
       
      Installation Instructions: 
      ========================== 
       
          1.  Although routine mapping is NOT recommended for these routines, 
      your mapped set may include routines not usually recommended for mapping. 
       
      If these routines are in your local map set, disable mapping for them 
      before proceeding with the installation, and rebuild your map set 
      afterward before reactivating TaskMan.
       
          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, DIENV, will run automatically.
       
          DIENV is sent to prevent the inadvertent queuing of the installation 
      of this patch. 
      1.  It prevents the allocation errors that have plagued PCMM sites. These  
       
          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 
      Finder errors arose from stack overflow caused when using PCMM to lookup  
                 Backup a Transport Global 
       
          5.  Inhibit users from login into the system.  The consequence of 
      having users on the system while installing this patch are that users 
      looking up records will get a 'source routine edited' error.  Although 
      these routines are not heavily used in DHCP applications yet, they are 
      used increasingly in new application such as PCMM. 
       
          6.  AXP Sites - Place Taskman in a WAIT State. 
              MSM Sites - STOP Taskman. 
      Patients. The Finder was not detecting and protecting itself from pointer  
       
          7.  On the KIDS menu, under the 'Installation' menu, use the 
      following option:
       
                    Select Installation Option: Install Package(s)
                    Select INSTALL NAME: DI*21.0*27
                                         ==========
          
                    Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu 
      Options, and Protocols?
      chains that loop back on themselves, causing the Finder to go into 
          
          8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to 
      other CPUs?'.
       
           Then enter the names of your other Compute and Print server(s).
       
           NOTE: You will then see the following message:
       
             TASKMAN is not running. You must run the routine XPDCPU in the 
      production UCI for each of the VOLUME SETS you have listed once the 
      
    • 48 SEQ #45
      DATE APPLIED:   1998-10-16 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      When a user is using FileMan's Search option and uses a Condition of
      causing a <syntax> error.  The invalid code looks like the following
      example:
       
      I $S($D(^DIZ(640999,D0,1)):$P(^(1),U,1),1:"")?300.4
       
      This patch prevents the user from entering an invalid pattern matching
      code.
       
      Related NOIS: 
      =============
      MATCHES and enters an invalid 'M' pattern match the report will error out.
      CHY-0498-50998
       
      Thanks to Test Sites: 
      =====================
      Cheyene, WY
      Clarksburg, WV
      Dayton, OH
       
      Routine Summary: 
      ================
      For example:
      The following routines are included in this patch.  The second line of
      these routines now look like:
        
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DIM2           4186487         4310650         28,48
       
        DIS            8071449         8038501         48
       
      Installation Instructions: 
      ==========================
      This patch can be installed with VISTA users online.  However, it is
      recommended that it be Queued for a time of generally least activity.
       
           1.  AXP sites: Review your mapped routine set.  If any of the
      routines listed in the ROUTINE SUMMARY section are mapped, they should be
      removed from the mapped set at this time.
        -A- SEARCH FOR MYFILE FIELD: NUMBER CODE
       
           2.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu. This 
      option will load the KIDS package onto your system.
       
           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 
        -A- CONDITION: MATCHES
                  Compare Transport Global to Current System 
                  Verify Checksums in Transport Global 
                  Backup a Transport Global
       
           5.  On the KIDS menu, under the 'Installation' menu, use the
      following option:
                  Select Installation Option: Install Package(s) 
                  Select INSTALL NAME: DI*21.0*48
                                       ==========
        
        -A- MATCHES: 300.4
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
       
           6.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      other CPUs?'.  Then enter the names of your other Compute and Print
      server(s).
       
           7.  AXP Sites - After the patch has been installed, rebuild your map
      set, if necessary.
       
      With the result that invalide 'M' pattern matching code was generated,
      
    • 53 SEQ #46
      DATE APPLIED:   1998-10-16 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch fixes a bug and contains information and examples on how to
       
      Installation Instructions: 
      ==========================
      This patch can be installed with VISTA users online.  However, it is
      recommended that it be Queued for a time of generally least activity.
       
           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 
      In the following example, a user whose DUZ(0)'["@" would see the SSN
      option will load the KIDS package onto your system.
       
           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 
      printed twice, whereas the user whose DUZ(0)["@" would see the Patient's
                  Backup a Transport Global
       
           5.  On the KIDS menu, under the 'Installation' menu, use the
      following option:
                  Select Installation Option: Install Package(s) 
                  Select INSTALL NAME: DI*21.0*53 
                                       ==========
        
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
      SSN printed once.
       
           6.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      other CPUs?'.  Then enter the names of your other Compute and Print
      server(s).
       
           7.  AXP Sites - After the patch has been installed, rebuild your map
      set, if necessary.
       
          S FLDS=".01;C1;L22;""PATIENT"",D SSN^MYPROG;C24;R4;""SSN"""
       
          Routine called:
            MYPROG   ;SFCIOFO/S0 TEST ROUTINE ; 21 Aug 98  2:06 PM
            SSN      ;
      call an 'M' routine from a print template or the FLDS input variable to
                     K VA,VADM S DFN=D0 D ^VADPT
                     S X=$P(VA("PID"),"-",3)
                     W X
                     Q
       
      Information:
      -----------
      If you use the FLDS input variable to EN1^DIP or a print template to call
      an 'M' routine to evaluate and print a value, you must WRITE the value you
      want printed. Examples 1 and 2 below illustrate how this is done.
      EN1^DIP.
       
      Example #1: The routine is called from a Print Template
      =======================================================
       
      Print Template:
      NAME: ZZ640A                            DATE CREATED: AUG 13, 1998@10:21
        READ ACCESS: @                        FILE: MY PATIENT
        USER #: 133                           WRITE ACCESS: @
        DATE LAST USED: AUG 14, 1998
      HEADER (c): MY PATIENT LIST
       
      FIRST PRINT FIELD: NAME;C1;L22;"PATIENT"//
      THEN PRINT FIELD: D SSN^MYPROG;X
      THEN PRINT FIELD: W X;C24;R4;"SSN"//
      COMPILED (c): NO
       
      Routine Called:
      MYPROG   ;SFCIOFO/S0 TEST ROUTINE ; 21 Aug 98  2:06 PM
      SSN      ;
               K VA,VADM S DFN=D0 D ^VADPT
               S X=$P(VA("PID"),"-",3)
      Bug fixed:
               Q
       
      Example of Usage:
      ZZ640A   ;SFCIOFO/S0 TEST FILEMAN PRINT ; 19 Aug 98  4:03 PM
               S DIC="^DIZ(640001,",BY=".01",L=0,FR=""
               S FLDS="[ZZ640A]"
               D EN1^DIP
               Q
       
      Example #2: The routine is called from the FLDS input variable
      ---------
      ==============================================================
       
      Routine Called:
      MYPROG   ;SFCIOFO/S0 TEST ROUTINE ; 21 Aug 98  2:06 PM
      SSN      ;
               K VA,VADM S DFN=D0 D ^VADPT
               S X=$P(VA("PID"),"-",3)
               Q
       
      Example of Usage:
      If the FLDS input variable to EN1^DIP contains a call to an 'M' routine,
      ZZ640A   ;SFCIOFO/S0 TEST FILEMAN PRINT ; 19 Aug 98  4:03 PM
               S DIC="^DIZ(640001,",BY=".01",L=0,FR=""
               S FLDS=".01;C1;L22;""PATIENT"",D SSN^MYPROG;X,W X;C24;""SSN"""
               D EN1^DIP
               Q
       
      NOIS: 
      =====
      ISB-0898-30889
       
      the resulting report may differ depending on whether or not the user's
      Thanks to Test Sites: 
      =====================
      Dayton, OH
      Clarksburg, WV
      CIOFO-Birmingham 
       
      Routine Summary: 
      ================
       
      The following routines are included in this patch.  The second line of
      DUZ(0) contains an at-sign (@).
      these routines now look like:
        
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DIP22          6639498         6717942         53 
       
      
    • 54 SEQ #47
      DATE APPLIED:   1998-10-16 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch corrects a problem when using FileMan Sort/Print functions that
      NAME
      --------------------------------------------------------------
       
                      *** NO RECORDS TO PRINT ***
       
       
      It will now look like:
       
      MY REPORT                       Aug. 28, 1998           PAGE 1
      NAME
      have statistical operations within Sort/Print logic and there were NO
      --------------------------------------------------------------
       
                      *** NO RECORDS TO PRINT ***
       
      NOIS: 
      =====
      AUG-0695-30662
      ISW-0197-21444
      ISW-0798-22049
       
      RECORDS TO PRINT.  The problem was the statistical line(s) would print
       
      Thanks to Test Sites: 
      =====================
      Dayton, OH
      Clarksburg, WV
      CIOFO-Washington
      CIOFO-Albany
       
       
      Routine Summary:
      before the header and the No Records To Print message.  For Example:
      ================
      The following routines are included in this patch.  The second line of
      these routines now look like:
        
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
       
        DIO4           5969086         6003254         54
       
       
      Installation Instructions: 
      ==========================
      This patch can be installed with VISTA users online.  However, it is 
      recommended that it be Queued for a time of generally least activity.
       
           1.  AXP sites: Review your mapped routine set.  If any of the
      routine(s) listed in the ROUTINE SUMMARY section are mapped, they should
      TOTAL                  0.0
      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.
       
           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
       
           5.  On the KIDS menu, under the 'Installation' menu, use the
      following option:
                  Select Installation Option: Install Package(s) 
                  Select INSTALL NAME: DI*21.0*54
                                       ==========
       
        
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
       
           6.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      other CPUs?'.  Then enter the names of your other Compute and Print 
      server(s).
       
           7.  AXP Sites - After the patch has been installed, rebuild your map
      set, if necessary.
      MY REPORT                       Aug. 28, 1998           PAGE 1
      
    • 50 SEQ #48
      DATE APPLIED:   1998-10-26 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
       
      onto your system. The problem was that if a developer changed the name of 
      a file or subfile the INIT would add another 'NM' node, instead of 
      removing the old 'NM' node and then adding the new node.  
       
      This patch corrects these duplicate "NM" nodes located in: 
      ^DD(<file/subfile#>,0,"NM",<file name>)="" 
      using the same logic that FileMan Option: 
      Check/Fix DD Structure [DI DDUCHK] uses when Fix is specified.  
       
      The routine DIPR50 loops through all of the DHCP files, looking for 
                               Notice:
      duplicate "NM" nodes and corrects any duplicates that are found.  The
      following is a sample dialog when a duplicate 'NM' node is encountered:
       
      File/Subfile: 662001 has duplicate 'NM' nodes.
           Duplicate 'NM' node(s) were deleted and fixed.
              'NM' node will be set to: ZZTAMI TEST
       
       
      Related NOIS: 
      =============
          ** This patch should be installed with NO users online ** 
      CTX-0397-71390 
      TUA-0798-31699 
       
      Thanks to Test Sites: 
      =====================
      Clarksburg, WV
      Tuscaloosa, AL 
      Central Texas HCS 
      Dayton, OH
      Several CIOFOs
       
       
      Routine Summary: 
      ================
      The following routine is included in this patch.  The second line of 
      this routine looks like: 
      <tab>;;21.0;VA FileMan;[patch list];Dec 28, 1994 
       
      CHECK^XTSUMBLD results: 
       
      Routine Name   Before Patch    After Patch     Patch List 
      Background: PreKIDS - when packages were installed, a set of routines were
      ============   ============    ===========     ==========
      DIPR50         N/A             982490          50 
       
      Installation Instructions: 
      ==========================
       
              1.  There is no routine mapping involved.  
       
              2.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu.  
      This option will load the KIDS package onto your system.  
      created by the developer(s) to export Data Dictionary changes.
       
              3.  The patch has now been loaded into a transport global on your 
      system.  You now need to use KIDS to finish the preperation for 
      installation.  
       
              4.  Optionally 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.  
        
       
           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 an Undefined error, the edits will be lost and records 
      may be left in an inconsistent state.  Note that most of these 
      DD's are heavily used in DHCP applications.  
        
           6.  AXP Sites - Place Taskman in a WAIT State.  
               MSM Sites - STOP Taskman.  
        
      These were in the form of <nmsp>INIT.  From the programmer prompt you 
           7.  On the KIDS menu, under the 'Installation' menu, use the 
      following option: 
                  Select Installation Option: Install Package(s) 
                  Select INSTALL NAME: DI*21.0*50 
                                       ==========
        
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu 
      Options, and Protocols? 
      Note to MSM Sites - Answer NO to the question 'Want to MOVE routines to 
      other CPUs?'.  
      would D ^<nmsp>INIT, i.e. D ^ABCINIT, and the package would be installed 
       
              8.  Restart TaskMan, any background filers, and reenable user 
      logons.  
       
              9. You may now delete DIPR50.  
      
    • 52 SEQ #49
      DATE APPLIED:   1998-12-14 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Bug Fixes
       
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
       
           6.  AXP Sites - After the patch has been installed, rebuild your map
      set, if necessary.
      Select OPTION: PRINT FILE ENTRIES  
       
      OUTPUT FROM WHAT FILE: PATIENT// 
      SORT BY: NAME// RAD/NUC MED PATIENT:
         By 'RAD', do you mean the RAD/NUC MED PATIENT File,
             pointing via its 'NAME' Field? Yes//   (Yes)??
      SORT BY: NAME// 
       
      This problem is fixed with this patch.
      =========
       
      3. When 2 separate fields are defined as Pointer to a File and they point
      to the same file and they are printed one after each other, an error would
      occur.  For example:
       
      Select OPTION: PRINT FILE ENTRIES
      OUTPUT FROM WHAT FILE: S0 TEST #1// 
      SORT BY: NAME// 
      START WITH NAME: FIRST// 
      FIRST PRINT FIELD: PT200A:
      1. If a computed field expression was too complex for DICOMP to interpret,
        THEN PRINT NEW PERSON FIELD: SSN    
        THEN PRINT NEW PERSON FIELD: 
      THEN PRINT FIELD: PT200B:
        THEN PRINT NEW PERSON FIELD: SSN    
        THEN PRINT NEW PERSON FIELD: 
      THEN PRINT FIELD: 
       
      NOISes
      ======
      BRX-1297-10331
      an error would result. With this patch, if an expression that is too
      BRX-0397-12607
      WRJ-0497-10294
      DAY-0997-40744
      REN-1097-61379
      WBP-0196-21370
      BRX-0995-11874
      FNC-0494-30103
       
       
      Thanks to Test Sites
      complex is entered, a beep and '??' will be displayed.
      ====================
      White River Junction, VT
      Bronx, NY
      Dayton, OH
       
      Routine Summary: 
      ================
       The following routines are included in this patch.  The second line of
      these routines now look like:
        
       
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DICOMP1        6095234         6197157         52
        DICOMPV        7196555         7170031         13,52
        DICOMPW        8864346         8886232         52
        DICOMPX        3767023         3939321         24,52
      2. If a backward extended pointer was used, and the name of the file
        DIL1           6752508         6849303         52 
       
      Installation Instructions: 
      ==========================
      This patch can be installed with VISTA users online.  However, it is 
      recommended that it be Queued for a time of generally least activity.
       
           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.
      contained a '/', the expression was rejected with a beep and '??'.
       
           2.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu. This 
      option will load the KIDS package onto your system.
       
           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 
      For example:
                  Compare Transport Global to Current System 
                  Verify Checksums in Transport Global 
                  Backup a Transport Global
       
           5.  On the KIDS menu, under the 'Installation' menu, use the
      following option:
                  Select Installation Option: Install Package(s) 
                  Select INSTALL NAME: DI*21.0*52
                                       ==========
        
      
    • 49 SEQ #50
      DATE APPLIED:   1999-01-05 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
       Description:
         
        
           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.
       For example, if the codes are:
       
           &       AND
           &'      AND NOT
           !       OR
           !'      OR NOT
         
       and the value 'AND' is passed to the Updater with "E" flag, the message:
         
       ============
           The value 'AND' for field xxxxx in file xxxxx is not valid.
         
       With this change, if the external code is ambiguous but exact, the value
       is accepted.  Also, display a 4-digit year in the prompt for a Date read,
       when an earliest and latest date are specified or in the error message
       when the date entered is out of the specified range.
       
       NOIS:
       =====
       DAY-0698-41519
       ** NOTICE: It is HIGHLY recommended that all users be logged off the
       ISL-1297-50203
       MIA-0698-31649
       
       Thanks to Test Sites:
       =====================
       Dayton, OH
       Salt Lake City CIOFO
       Fargo, ND
       Clarksburg, WV
       
       VistA system. **
       Routine Summary: 
       ================
        
       The following routines are included in this patch.  The second line of
       these routines now look like:
         
         <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
         
       CHECK^XTSUMBLD results: 
         
       
       Routine Name   Before Patch    After Patch     Patch List 
       ============   ============    ===========     ==========
       DIR1           7982983         8449705         6,13,19,41,49
       DIR2           9053765         9159183         41,49
       
       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
       Prior to this change, VAL^DIE and the DBS calls that use it, like
       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
       UPDATE^DIE and FILE^DIE, were returning Dialog Error message #701 when an
       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.  
        
           4.  On the KIDS menu, under the 'Installation' menu, use the
       following options: 
                  Print Transport Global 
                  Compare Transport Global to Current System 
       external form of a set of codes field was passed in, but the external
                  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 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.  
       code was ambiguous.
               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*21.0*49
                                    ==========
        
               Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu Options,
       and Protocols? 
      
    • 57 SEQ #51
      DATE APPLIED:   1999-03-16 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
              ** NOTICE: It is HIGHLY recommended that all users be logged off
      problem.
       
      NOIS
      ====
      CLA-1298-20489
      MUS-1298-70900
       
      Thanks to Test Sites
      ====================
      Martinez, CA
                         the VistA system. **
       
       
      Routine Summary: 
      ================
       The following routines are included in this patch.  The second line of
      these routines now look like:
        
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
      CHECK^XTSUMBLD results: 
       
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DIR1           8449705         8500908         6,13,19,41,49,57 
       
      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'
      Bug Fix
         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 queueing 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.
       
           4.  On the KIDS menu, under the 'Installation' menu, use the
      following options:
                  Print Transport Global 
      This patch fixes the following problem: 
                  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 will be lost
      and records may be left in an inconsistent state.  Note that most of these
      routines are heavily used in DHCP applications.
       
        When a user answered the Alert prompt for what action to take, they
           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*21.0*57
                                       ==========
       
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      could inadvertenly enter a control character (i.e. BackSpace, Tab) which
      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.
      would cause a looping within the DIR* routines.  This patch corrects that
      
    • 58 SEQ #52
      DATE APPLIED:   1999-05-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Bug Fix
      remove any of the erroneous entries.
       
      NOIS: 
      =====
      CHA-0299-32411
      DAY-0399-42742
       
      Thanks to Test Sites: 
      =====================
      Dallas CIOF
      =======
      Dayton, OH
       
      Routine Summary:
      ================
       
      The following routine is included in this patch.  The second line of
      the routine now look like: 
        
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
       
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DIPR58         N/A             1686734         58
       
      Installation Instructions: 
      ==========================
       
              This patch may be installed anytime during non-peak activity
      File #1 has a multiple called APPLICATION GROUP (Field #10) and on this
      and may be Queued to install during non-peak hours. The installation
      time will only take a couple of minutes.  
       
           1.  Routine mapping is NOT recommended for this routine. If you
      are using routine mapping, ensure that this routine is NOT in your
      mapped routine set before proceeding.  
       
           2.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu.
      This option will load the KIDS package onto your system.  
         
      multiple there is a whole file cross reference - "AC".  It was
           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 
      recently discovered that at some time in a past version that this cross
       
           5.  On the KIDS menu, under the 'Installation' menu, use the 
      following option: 
       
                  Select Installation Option: Install Package(s) 
                  Select INSTALL NAME: DI*21.0*58 
                                       ==========
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu 
      Options, and Protocols? 
        
      reference was not being properly killed off.  This patch will go through
           6.  MSM Sites - Answer YES to the question 'Want to MOVE routines
      to other CPUs?'. Then enter the names of your other Compute and Print 
      server(s). 
       
          7. You may now delete DIPR58. 
      this cross reference and remove any of the erroneous entries.  The routine
      will also check the APPLICATION GROUP multiple's "B" cross reference and
      
    • 8
      DATE APPLIED:   1996-10-03 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      1.  Most of the routines included in this patch support Laboratory's
      point.  
      option will load the KIDS package onto your system.  The environment check
      routine DIENV will run automatically.
       
          DIENV is sent in order to prevent the inadvertent queueing of 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.
       
          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 from login into the system.  Some of the routines
      being patched are used all over FileMan.  Having users on the system
      during installation could result in incomplete records or CLOBBER errors.
       
      The complete API description is available on the Software Service web page
          6.  AXP Sites - Place Taskman in a WAIT State.  
              MSM 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*21.0*8 
                                      ==========
       
                 Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      at URL:
      Options, and Protocols?
       
          8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      other CPUs?'.
           Then enter the names of your other Compute and Print server(s).
           NOTE: You will see the following message:
             TASKMAN is not running. You must run the routine XPDCPU in the
      production UCI for each of the VOLUME SETS you have listed once the
      installation starts!!
       
      http://www.vista.domain.ext/softserv/infrastr.uct/fileman/docs/pm/ft_diaxu
          9.  MSM Sites - After the installation begins, you will be prompted to
      enter a DEVICE.  After the device has been entered, KIDS will pause.  At
      this time, you need to go to each of the CPUs that were entered in step 8,
      and start a job that will allow them to receive the patched routines.  On
      each one, you do the following:
          a) >D ^XUP    This will set up the programming environment.
              ======
          b) >D ^XPDCPU  This starts the job that receives the patched routines.
              =========
          c) Select INSTALL NAME: DI*21.0*8 
      .htm
                                  =========
      The installation will then continue.  
       
          10.  AXP Sites - After the patch has been installed, rebuild your map
      set. 
       
          11.  AXP Sites - Remove Taskman from WAIT State.  
               MSM Sites - Restart Taskman.  
       
          12.  Enable user's login.  
       
          B.  New API: EXTRACT^DIAXU: 
       
      EXTRACT^DIAXU is a new entry point, introduced by patch DI*21*8. The main
      archiving functions described in patch LR*5.2*59.
      new features introduced with this entry point for extracting data are:
       
           * More than one record can be extracted in a call. 
           * Subrecords can be extracted as individual transactions. Previously,
             an entire record including all subrecords had to be extracted as a 
             single entity. 
           * DBS-style error reporting is used.  
       
      The complete API description is available on the Software Service web page
      at URL:
       
      http://www.vista.domain.ext/softserv/infrastr.uct/fileman/docs/pm/ft_diax2
      .htm
       
      2.  This patch also contains a fix for the DIVR routine.  When you use the
      'Utility Functions/Verify Fields' option to check a date/time field that
      can contain seconds, if the data has a time between 1 and 59 seconds after
      midnight (nnnnnnn.000001 through nnnnnnn.000059) the data was flagged as
      not valid.
       
      3.  The DIV routine in this patch has been modified to provide a way for
          A.  Changes to EN^DIAXU API: 
      customized input transforms to skip certain checks when the 'Verify
      Fields' Utility Function is used.  The variable to check is DIUTIL.  It is
      set equal to the string "VERIFY FIELDS" when the 'Verify Fields' option is
      running.  (DIV)
       
      4.  The changes made by some of the init routines in this patch are
      necessary to make some corrections to FM's files.  The new post-install
      routine, DIPOST, will make these corrections automatically.  IT IS NOT
      NECESSARY TO REINITIALIZE FILEMAN.
       
       
      Routine Summary: 
      ================
       
      The following routines are included in this patch.  The second line of
      these routines now look like:
        
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
      CHECK^XTSUMBLD results: 
        
      With patch DI*21*8, the extract tool has been enhanced to use FileMan's
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DIARA          14770992        14013708        8 
        DIARB          7839337         6210401         8 
        DIAX           7377151         11305747        8 
        DIAXD          N/A             11580617        8 
        DIAXERR        2053556         600222          8 
        DIAXF          N/A             373535          8 
        DIAXM1         4345149         4416751         8 
        DIAXP          N/A             2094474         8
      database server calls (DBS) in order to take advantage of the more
        DIAXT          N/A             1965631         8 
        DIAXU          4749815         7159038         8 
        DIC            9799355         9887383         8 
        DICA           5077499         5157184         6,17,8 
        DICL           4552973         4619639         17,8 
        DICU           2626995         3150917         8 
        DICU1          5290202         5260389         17,8 
        DIDU           5942346         6142297         6,17,8 
        DIFGB          7763085         7602021         8 
        DIFROM11       8986254         9004800         8 
      intelligent error handling in the DBS calls. This change has resulted in a
        DIFROMS5       3330062         3339695         6,8 
        DINIT          14307293        14339269        8 
        DINIT13        10341008        9427999         8 
        DINIT3         9096420         9152081         8 
        DIOU           4893133         4914520         8 
        DIPOST         N/A             159247          8 
        DIQGU          4906837         4937798         8 
        DIV            3715836         3841210         8 
        DIVR           6095014         6153747         8 
        DIVR1          N/A             10768511        8 
      number of changes to the input and output variables of the EN^DIAXU entry
        DIVU           N/A             3100544         8 
       
      Installation Instructions: 
      ==========================
        
          1.  Two of the routines in this patch, DIC and DIOU, are usually
      mapped on systems that allow mapping, AXP sites will need to disable
      mapping for these routines.
       
          2.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu. This
      
    • 31
      DATE APPLIED:   1996-10-15 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch fixes the following problem:
       
               MSM Sites - Restart Taskman.
       
          12.  Enable users' login.
      Routine Summary:
      ================
       
      The following routine is included in this patch. The second line of
      this routines now looks like:
       
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994
       
      CHECK^XTSUMBLD results:
       
       
        Routine Name   Before Patch    After Patch     Patch List
        ============   ============    ===========     ==========
        DICU1          5260389         5299469         17,8,31
       
      Installation Instructions:
      ==========================
       
          1.  AXP Sites - Although routine mapping is NOT recommended for this
      routine, your mapped set may include routines not usually recommended for
      1. PCE sites have reported sluggish performance. Skip Ormsby at 
      mapping. If this routine is in your local map set, disable mapping for it
      before proceeding with the installation, and rebuild your map set
      afterward before reactivating TaskMan.
       
          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, DIENV, will run automatically.
       
          DIENV is sent to prevent the inadvertent queuing of the installation
      of this patch.
      Clarksburg has tracked this to the activities of the FileMan Lister when 
       
          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
      it is used on the ICD9 file. The ICD9 file lacks a B index, and the 
                 Backup a Transport Global
       
          5.  Inhibit users from login into the system.  The consequence of
      having users on the system while installing this patch is that users
      looking up records will get a 'source routine edited' error.  Although
      this routine is not heavily used in DHCP applications yet, it is
      used increasingly in new application such as PCE.
       
          6.  AXP Sites - Place Taskman in a WAIT State.
              MSM Sites - STOP Taskman.
      Lister recreates and later deletes a temporary B index before each call 
       
          7.  On the KIDS menu, under the 'Installation' menu, use the
      following option:
       
                    Select Installation Option: Install Package(s)
                    Select INSTALL NAME: DI*21.0*31
                                         ==========
        
                    Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
      for that file. The Lister should only do that when asked to use the 
        
          8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      other CPUs?'.
       
           Then enter the names of your other Compute and Print server(s).
       
           NOTE: You will then see the following message:
       
           TASKMAN is not running. You must run the routine XPDCPU in the
      production UCI for each of the VOLUME SETS you have listed once the
      missing B index, but always does due to a bug introduced by DI*21*8. 
      installation starts!!
       
          9.  MSM Sites - After the installation begins, you will be prompted
      to enter a DEVICE.  After the device has been entered, KIDS will pause.
      At this time, you need to go to each of the CPUs that were entered in
      step 8, and start a job that will allow them to receive the patched
      routines.  On each one, you do the following:
       
          a) >D ^XUP    This will set up the programming environment.
              ======
      After installing this patch, PCE's performance should noticeably improve.
          b) >D ^XPDCPU This starts the job that receives the patched routines.
              =========
          c) Select INSTALL NAME: DI*21.0*31
                                  ==========
      The installation will then continue.
       
          10.  AXP Sites - After the patch has been installed and IF you
      disabled your map set (step 1 above), rebuild your map set.
       
          11.  AXP Sites - Remove Taskman from WAIT State.
      
    • 18
      DATE APPLIED:   1996-10-30 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch fixes 2 problems:
      are KNX-0396-41289 and WCO-0195-50090.  (DIDT)
      set.  
       
          12.  AXP Sites - Remove Taskman from WAIT State.  
               MSM Sites - Restart Taskman.
       
          13.  Enable users' login.  
       
      Routine Summary:
      ================
       
      The following routines are included in this patch.  The second line of
      these routines now look like:
        
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
       
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DIDT           6670456         6692350         18
        DIDTC          7237147         7334026         18
       
      Installation Instructions: 
      ==========================
        
      1. This patch fixes a very specific problem with converting time at 
          1.  The routines %DT and %DTC are usually mapped on systems that allow
      mapping.  AXP sites will need to disable mapping for these routines.
       
          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 DIENV will run automatically.
       
          DIENV is sent in order to prevent the inadvertent queueing of the
      installation of this patch.
       
      midnight.  The related NOIS is BTM-1095-13315.  (DIDTC)
          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 
       
       
          5.  Inhibit users' login into the system.  If users are on the
      system, you run the risk of getting incorrect 'date with time'
      values and/or CLOBBER errors. Due to the high usage of these routines in
      all of DHCP code, it is highly recommended that users get off the system
      when installing this patch.
       
          6.  AXP Sites - Place Taskman in a WAIT State.  
              MSM Sites - STOP Taskman.  
       
          7.  On the KIDS menu, under the 'Installation' menu, use the following
      2. Before this patch, %DT was accepting input that consisted of 8 or more
      option: 
                 Select Installation Option: Install Package(s)
                 Select INSTALL NAME: DI*21.0*18
                                      ==========
       
                 Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
       
          8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      other CPUs?'.
      numerics as long as the first 7 digits formed a valid date in FM internal
           Then enter the names of your other Compute and Print server(s).  
           NOTE: You will then see the following message: 
             TASKMAN is not running. You must run the routine XPDCPU in the 
      production UCI for each of the VOLUME SETS you have listed once the 
      installation starts!! 
       
          9.  MSM Sites - After the installation begins, you will be prompted to
      enter a DEVICE.  After the device has been entered, KIDS will pause.  At
      this time, you need to go to each of the CPUs that were entered in step 8,
      and start a job that will allow them to receive the patched routines.  On
      format and %DT contained a "T".  For example, %DT interpreted 604011422 as
      each one, you do the following:
          a) >D ^XUP    This will set up the programming environment.  
             ======
          b) >D ^XPDCPU  This starts the job that receives the patched routines.
              =========
          c) Select INSTALL NAME: DI*21.0*18
                                  ==========
      The installation will then continue.  
       
          10.  After installing this patch, you need to move these routines
      Jan 14, 2304.  This patch makes %DT reject such input.  The related NOIS's
      from your production account to the manager account:
             DIDT, DIDTC
             and in the manager account rename
             DIDT to %DT
             DIDTC to %DTC
            
             Example: ZL DIDT ZS %DT
                      ZL DIDTC ZS %DTC
       
          11.  AXP Sites - After the patch has been installed, rebuild your map
      
    • 33
      DATE APPLIED:   1996-12-24 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch fixes a few bugs related to word-processing fields:
      NOWRAP function is used.  (DIWP, TUA-1094-30461)
          11.  AXP Sites - Remove Taskman from WAIT State.  
               MSM Sites - Restart Taskman.  
       
          12.  Enable users' login.  
       
      4.  This patch prevents an infinite loop from happening when DIWL=0 and a
      call to ^DIWW is made.  (DIWP, NOIS BRX-0995-11453)
       
      5.  This patch allows the 'Transfer Text' Edit option from an EN^DIWE
      call provided that the text being edited is a FM word-processing field.
      (DIWE)
       
       Routine Summary: 
       
       ================
        The following routines are included in this patch.  The second line of
      these routines now look like:
        
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
        CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
      1.  This patch fixes problems with the 'Transfer Text' Edit option.
        DIWE           6067379         5827467         33
        DIWE3          8633894         12713274        33
        DIWE4          9748975         9685833         33
        DIWE5          8399507         7891987         33
        DIWP           5103576         5150036         33
       
       Installation Instructions: 
       ==========================
        
          1.  The routines DIW* are usually mapped on systems that allow
      (DIWE3,DIWE5, NOIS BRX-0495-10374))
      mapping.  Alpha sites that use routine mapping will need to disable
      mapping for these routines.
       
          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 DIENV will run automatically.
       
          The Environment Check routine, DIENV, is sent in order to prevent the
      inadvertent queueing of 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.
       
          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 
       
      2.  This patch fixes the header that gets printed when using the Print
          5.  Inhibit users from login into the system.  If users stay on the
      system while installing this patch, a hard error may occur while word
      processing fields are printed or edited.
       
          6.  AXP Sites - Place Taskman in a WAIT State.  
              MSM Sites - STOP Taskman.  
       
          7.  On the KIDS menu, under the 'Installation' menu, use the following
      option: 
                 Select Installation Option:  Install Package(s)
      option from the Line Editor.  (DIWE4)
                 Select INSTALL NAME: DI*21.0*33
                                      ==========
       
                 Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
       
          8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      other CPUs?'.
          Then enter the names of your other Compute and Print server(s).  
          NOTE: You will then see the following message: 
       
             TASKMAN is not running. You must run the routine XPDCPU in the 
      production UCI for each of the VOLUME SETS you have listed once the 
      installation starts!! 
       
          9.  MSM Sites - After the installation begins, you will be prompted to
      enter a DEVICE.  After the device has been entered, KIDS will pause.  At
      this time, you need to go to each of the CPUs that were entered in step 8,
      and start a job that will allow them to receive the patched routines.  On
      each one, you do the following:
          a) >D ^XUP    This will set up the programming environment.  
      3.  This patch prevents the printing of duplicate last lines when the
              ======
          b) >D ^XPDCPU  This starts the job that receives the patched routines.
              =========
          c) Select INSTALL NAME: DI*21.0*33
                                  ==========
      The installation will then continue.  
       
          10.  AXP Sites - After the patch has been installed, rebuild your map
      set. 
       
      
    • 20
      DATE APPLIED:   1996-12-24 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch fixes the following problems:
      were a lookup cross reference, and could pick up the wrong field.  (DDS0)
       string 18                             string 18a 
       string 19                             string 19a 
       Enter RETURN to continue or '^' to exit: 
       -------------------------------------------------------------------------
       
      String 15a should have printed next to string 15, but instead printed on
      the subsequent screen on a line by itself.  
        
      This change fixes this problem.  (DDSMSG)
       
       
      12.  This patch fixes and enhances the POINTER LINK property of blocks.
      Suppose you want to display, in a repeating block, entries in a file
      reached via a backward pointer and then from one of those entries,
      you want to follow a forward pointer and branch to a page to display
      entries from the pointed-to file.  No POINTER LINK syntax would allow you
      to define this relationship.  The reference point for the POINTER LINK
      needed to be the Primary File of the form, and the syntax didn't allow for
      navigation via a backward pointer.
       
      This patch introduces the syntax: 
      3.  If the last field on a block is uneditable, and you pressed <Up> or
       
             DD(file#,pfield#)  or [DD(file#,pfield#1):pfield#2...] 
         or  DD(file#,field#) 
       
      to the POINTER LINK, where file# is the point of reference to start the
      navigation, pfield# is the pointer field that points to the file defined
      by the block's DD#, and field# is the field used as a lookup value in the
      file defined by the blocks DD#.  
       
      This patch also allows for navigation via a variable pointer:
      <PF4> from another block or from the Command Line to this field, the
       
             vpfield#:file# 
         or  vpfield#:file#:pfield:pfield#...  
       
      where vpfield# is a the number of a variable pointer field.  The key 
      difference is that you can specify the file# to which to navigate.
      (DDSPTR)
       
      13.  If DDSBR was set to "fieldId^blockId^pageId", and blockId was the
      Block Name rather than the Block Order number, ScreenMan disregarded the
      cursor would appear to be stuck, and would remain in its current location.
      blockId and automatically assumed the first block on the page.  (DDS2)
       
       
      Routine Summary: 
      ===============
       
      The following routines are included in this patch.  The second line of
      these routines now look like:
       
         <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
      (DDS01)
        
      CHECK^XTSUMBLD results: 
        
         Routine Name   Before Patch    After Patch     Patch List 
         ============   ============    ===========     ==========
         DDS0           3530371         3556700         4,11,20
         DDS01          6353532         6466228         4,13,14,20
         DDS02          3319070         3361580         20
         DDS1           4939831         4949444         4,13,20
         DDS2           8724593         7821612         20
       
         DDS41          6131012         6283323         4,20
         DDS7           4229219         3559395         13,20
         DDSCAP         862095          860878          13,20
         DDSM           4593795         4923688         6,13,14,20
         DDSMSG         2481467         2834198         20
         DDSPTR         5051244         5419548         20
         DDSR           7814012         7813886         14,20
       
      Installation Instructions: 
      =========================
      4.  Suppose on a form you have a form-only field that is defined as
       
          1.  AXP Sites -  The routines DDS0, DDS01, DDS1, and DDSR are
      usually mapped on systems that allow mapping, so you will need to disable
      mapping for these routines.
       
          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, DIENV, will run automatically.
       
          DIENV is sent to prevent the inadvertent queuing of the installation
      'Reachable', which means the user can navigate to the field but can't
      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.
       
          4.  On the KIDS menu, under the 'Installation' menu, use the
      following options:
       
                 Print Transport Global
                 Compare Transport Global to Current System
      change its value.  If the user tried to change the value, ScreenMan would 
                 Verify Checksums in Transport Global
                 Backup a Transport Global
       
          5.  Inhibit users from login into the system.  The consequences of
      installing this patch while users are on the system are that users editing
      data via ScreenMan forms will get a 'source routine edited' error, and
      their edits will be lost, and the data may be left in an inconsistent
      state.  Note that PAID is an application that uses ScreenMan.
       
          6.  AXP Sites - Place Taskman in a WAIT State.
       
      correctly display a message that editing was not allowed.  But instead of 
              MSM 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*21.0*20
                                         ==========
        
                    Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      restoring the original value in the editing window, ScreenMan would
      Options, and Protocols?
        
          8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      other CPUs?'.
       
           Then enter the names of your other Compute and Print server(s).
       
           NOTE: You will then see the following message:
       
           TASKMAN is not running. You must run the routine XPDCPU in the
      display the new value entered by the user.  (DDS02)
      production UCI for each of the VOLUME SETS you have listed once the
      installation starts!!
       
          9.  MSM Sites - After the installation begins, you will be prompted
      to enter a DEVICE.  After the device has been entered, KIDS will pause.
      At this time, you need to go to each of the CPUs that were entered in
      step 8, and start a job that will allow them to receive the patched
      routines.  On each one, you do the following:
       
          a) >D ^XUP    This will set up the programming environment.
       
              ======
          b) >D ^XPDCPU This starts the job that receives the patched routines.
              =========
          c) Select INSTALL NAME: DI*21.0*20
                                  ==========
      The installation will then continue.
       
          10.  AXP Sites - After the patch has been installed and IF you
      disabled your map set (step 1 above), rebuild your map set.
       
      5.  Suppose you have a repeating block that displays pointer-type .01
          11.  AXP Sites - Remove Taskman from WAIT State.
               MSM Sites - Restart Taskman.
       
          12.  Enable users' login.
      fields, and connected to that .01 field you have a pop-up page that
      displays fields in the pointed-to entry.  If one of the .01 field values
      in the repeating block is a dangling pointer, when we pressed return at
      that record, the pop-up page would open up and display the data for the
      record we last selected.  This patch prevents the pop-up page from opening
      1.  If a form has no data dictionary fields, but DA happens to be set
      up when we press return at the dangling pointer.  (DDS1)
       
      6.  Before this patch, users were not able to jump to fields with
      executable captions.  This patch allows users to jumps to fields with
      executable captions that are on the current page.  (DDS2, DDSR)
       
      7.  Print message 'Please wait.  Loading all pages ...' in the command
      area right after the user issues a 'Save' command.  If there are a lot
      pages on the form, the loading process could take a while before the
      'Verifying ...' message appears.  (DDS41)
      before the ^DDS call, the caller could get the message 'Entry does not
       
      8.  If we deleted an entry pointed to by a .01 field, we ended up with a
      dangling pointer.  This patch makes ScreenMan display the internal form of
      the dangling .01 field pointer, so that the user can subsequently delete
      that .01, if it's on the form.  (DDS7)
       
      9.  In the Form Editor, if you're editing the properties of a field on the
      form, at the Caption prompt, you should be able to enter the following
      shortcuts: 
       
      exist', and the form would fail to run.  (DDS0)
             Shortcut        To define the caption as 
             --------        ------------------------
             !L              The Label of the field 
             !T              The Title of the field 
             !U              The Unique name of the field 
       
      Prior to this patch, these shortcuts weren't working.  (DDSCAP)
       
      10.  If a repeating block is used to display records in a multiple, and an
      Index is specified for the repeating block, FileMan loads only those
       
      entries that are in the index.  Prior to this patch, a hard error would
      result if the user selected an entry that was in the multiple but wasn't
      in the index, because ScreenMan hadn't loaded the data for that entry.
      This patch allows the user to select only those entries that have already 
      been loaded by ScreenMan.  (DDSM)
       
      11.  Suppose you have a field with executable that calls EN^DDIOL.  It
      passes a global to EN^DDIOL with formatting nodes so that the text appears
      in two columns.  For example:
       
      2.  If in the Form Editor, you add a data dictionary field to the
             ^TMP($J,1)=string 1 
             ^TMP($J,2)=string 1a 
             ^TMP($J,2,"F")="?40" 
             ^TMP($J,3)=string 2 
             ^TMP($J,4)=string 2a 
             ^TMP($J,4,"F")="?40" 
             
              etc.  
              
             D EN^DDIOL("","^TMP($J)") 
      form, but at the Field property, you enter a field number that doesn't
              
      When you enter a ? at the field, ScreenMan displays in the help area the 
      first 14 lines correctly, but the fifteenth line is incorrect.  The third 
      screen looks like this: 
       
       -------------------------------------------------------------------------
       string 11                             string 11a 
       string 12                             string 12a 
       string 13                             string 13a 
       string 14                             string 14a 
      exist, the Form Editor went on to use the "GL" nodes in the DD as if they
       string 15 
       Enter RETURN to continue or '^' to exit: 
       -------------------------------------------------------------------------
       
      and the fourth screen looks like this: 
       
       -------------------------------------------------------------------------
                                             string 15a 
       string 16                             string 16a 
       string 17                             string 17a 
      
    • 36 SEQ #27
      DATE APPLIED:   1996-12-27 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch fixes a bug in ^DIWP that started after patch DI*21*33: 
       
               MSM Sites - Restart Taskman.  
       
          12.  Enable users' login.  
      The related NOIS Calls are: WPB-1296-31219 and NOP-1296-11296.
       
      This patch reverses the fix sent by patch 33.
                                                                                 
       Routine Summary: 
       ================
        The following routines are included in this patch.  The second line of
      these routines now look like:
                                     
                        
        <tab>;;21.0;VA FileMan;**
       
       Routine Summary: 
       ================
        The following routines are included in this patch.  The second line of
      these routines now look like:
        
        <tab>;;21.0;VA FileMan;**[patch list]**;Dec 28, 1994 
        
        CHECK^XTSUMBLD results: 
      Applications doing the following are affected by this bug::
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DIWP           5150036         5103576         33,36
       
       Installation Instructions: 
       ==========================
        
          1.  The routines DIW* are usually mapped on systems that allow
      mapping.  Alpha sites that use routine mapping will need to disable
                    
      mapping for these routines.
       
          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 DIENV will run automatically.
       
          The Environment Check routine, DIENV, is sent in order to prevent the
      inadvertent queueing of the installation of this patch.
       
          3.  The patch has now been loaded into a transport global on your
             1.  Application calls ^DIWP with DIWL=0.
      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 
       
          5.  Inhibit users from login into the system.  If users stay on the
                                             
      system while installing this patch, a hard error may occur while word
      processing fields are printed or edited.
       
          6.  AXP Sites - Place Taskman in a WAIT State.  
              MSM 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*21.0*36
             2.  After the call to ^DIWP, application resets DIWL=0 and then
                                      ==========
       
                 Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
       
          8.  MSM Sites - Answer YES to the question 'Want to MOVE routines to
      other CPUs?'.
          Then enter the names of your other Compute and Print server(s).  
          NOTE: You will then see the following message: 
             TASKMAN is not running. You must run the routine XPDCPU in the 
      accesses the ^UTILITY global.  No text is found when referencing
      production UCI for each of the VOLUME SETS you have listed once the 
      installation starts!! 
       
          9.  MSM Sites - After the installation begins, you will be prompted to
      enter a DEVICE.  After the device has been entered, KIDS will pause.  At
      this time, you need to go to each of the CPUs that were entered in step 8,
      and start a job that will allow them to receive the patched routines.  On
      each one, you do the following:
          a) >D ^XUP    This will set up the programming environment.  
              ======
      ^UTILITY($J,"W",DIWL.
          b) >D ^XPDCPU  This starts the job that receives the patched routines.
              =========
          c) Select INSTALL NAME: DI*21.0*36
                                  ==========
      The installation will then continue.  
       
          10.  AXP Sites - After the patch has been installed, rebuild your map
      set. 
       
          11.  AXP Sites - Remove Taskman from WAIT State.  
      
    DATE INSTALLED AT THIS SITE:   1998-04-08 00:00:00
  • 22.0
    DATE DISTRIBUTED:   1999-03-30 00:00:00
    PATCH APPLICATION HISTORY:
    • 1
      DATE APPLIED:   1999-07-20 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      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
      
    • 2 SEQ #10
      DATE APPLIED:   1999-12-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Y2K Waiver ID#:  Y2KW0001               Y2K Waiver Status: Approved
      ========
       CLA-0197-20856
       PHI-0694-20785
       MEM-0997-70237
       
      Thanks to Test Sites 
      ====================
       White River Junction, VT 
       Hampton, VA 
       
      Routine Summary: 
      1.  If a user specified a print field whose data type definition is a
      ================
       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 
        
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
      Date/Time and they used a date Function along with the Count(!) operator,
        DIG            6293627         9213962         2
        DIH            4688941         4441871         2
        DIL1           6856617         4879469         2
        DIO            7212010         7253177         2
        DIO0           9418636         9464280         2
        DIO1           6789778         6980951         2
        DIO3           4969134         4961669         2
        DIO4           6003254         5849805         2
        DIOS1          1190642         1071375         2
        DIP            12986358        13075099        2
      the FileMan internal representation would be printed.  For example,
        DIP0           10722447        10870128        2
        DIP1           9773580         10046865        2
        DIP10          5293036         5158897         2
        DIP22          6717942         6867188         2
        DIP31          1504438         1478503         2
        DIXC           4724715         5003894         2
       
       
      Installation Instructions: 
      ==========================
      !MONTH(DATE FIELD)
      This patch can be installed with VISTA users online.  However, it is 
      recommended that it be Queued for a time of generally least activity.  
       
           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.  
       
          (NOIS: SAJ-1198-72266)
           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 
       
       
           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*2
                                       ==========
        
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu 
      Options, and Protocols? 
       
           6.  AXP Sites - After the patch has been installed, rebuild your 
      2.  Previous to this patch FileMan Sorts were limited to 7 levels.
      map set, if necessary.  
      With this patch the maximum number of Sort levels has been increased to
      15.  
       
          (NOIS: WBP-0795-21830; DAY-0297-41337)
       
      3.  When computing global length and comparing it to what was set in the
      MUMPS OPERATING SYSTEM file, Global Subscript truncation would begin
      before it was necessary.
          (NOIS: IOW-0998-40306)
       
      4.  When a Sort contain a Boolean expression, for example, MY FIELD["A",
      the Boolean operator was getting concatenated with the field name such
      that a user could not edit the Sort template.
      >>              This patch may be installed during the Y2K Moratorium,
          (NOIS: ISA-0395-10001)
       
      5.  Improvement to Descriptive Statistics and correction to Histogram
      report header.
       
      6.  If a user used the dot syntax for a date and the field is a DATE type
      and the TIME can be entered, an "????Invalid Entry" error message would be
      displayed or the data would not be displayed even though there was data
      that should have been displayed.  For example:
       
      either BEFORE 12/15/99 or AFTER 1/15/2000.
          GO TO FOIA REQUESTED DATE: LAST// 1.MAR.97
       
          (NOIS: CLA-0197-20856, VAC-1197-21817)
       
      7.  If a user was using the "!" in a print field and printed the same
      field again, an erroneous Count was reported which was twice the number of
      counted items.
       
          Example #1: In this example the output is correct as documentated the
          v22 Getting Started Manual, Section: Printing Statistics Only.
       
       
       Select OPTION:    PRINT FILE ENTRIES
       
       OUTPUT FROM WHAT FILE: NUMBER AND KIDS// 
       SORT BY: NAME// 
       START WITH NAME: FIRST// 
       FIRST PRINT FIELD: !NAME  
       THEN PRINT FIELD: 
       Heading (S/C): NUMBER AND KIDS STATISTICS  Replace 
       DEVICE:   Telnet terminal
      >>             This patch MAY NOT be installed between 12/15/1999 and
       NUMBER AND KIDS STATISTICS                JUL 23,1999  13:34    PAGE 1
                NAME
       -------------------------------------------------------------------------
       
       COUNT     3
       
          Example #2: This is an example of the fixed output.  Please note the
          PRINT FIELD entry order does not matter.
       
       OUTPUT FROM WHAT FILE: MUMPS OPERATING SYSTEM// 
      1/15/2000 (the Y2K Lockdown Period).
       SORT BY: NAME// 
       START WITH NAME: FIRST// 
       FIRST PRINT FIELD: !NAME  
       THEN PRINT FIELD: NAME  
       THEN PRINT FIELD: 
       Heading (S/C): MUMPS OPERATING SYSTEM STATISTICS  Replace 
       DEVICE:   SYSTEM
       MUMPS OPERATING SYSTEM STATISTICS          SEP 14,1999  07:06    PAGE 1
                NAME                            NAME
       -------------------------------------------------------------------------
       
       
                CACHE/OpenM                     CACHE/OpenM
                DSM for OpenVMS                 DSM for OpenVMS
                DTM-PC                          DTM-PC
                GT.M(VAX)                       GT.M(VAX)
                MSM                             MSM
                OTHER                           OTHER
                ------------------------------
       COUNT    6
       
      Bug Fix: 
          (NOIS: PHI-0694-20785, MEM-0997-70237)
       
      NOISes 
      ======
       SAJ-1198-72266
       WBP-0795-21830
       IOW-0998-40306
       ISA-0395-10001
       DAY-0297-41377
       VAC-1197-21817
      
    • 111 SEQ #101
      DATE APPLIED:   2002-10-08 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*111 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 71 SEQ #102
      DATE APPLIED:   2002-11-08 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*71 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 116 SEQ #103
      DATE APPLIED:   2002-11-16 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*116 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 76 SEQ #104
      DATE APPLIED:   2002-12-09 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*76 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 112 SEQ #105
      DATE APPLIED:   2002-12-09 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*112 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 117 SEQ #106
      DATE APPLIED:   2002-12-09 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*117 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 106 SEQ #107
      DATE APPLIED:   2002-12-09 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*106 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 70 SEQ #108
      DATE APPLIED:   2003-01-09 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*70 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 95 SEQ #109
      DATE APPLIED:   2003-02-04 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*95 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 120 SEQ #110
      DATE APPLIED:   2003-02-04 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*120 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 17 SEQ #11
      DATE APPLIED:   1999-12-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Miscellaneous bug fixes in the FileMan lookup ^DIC routines
      by Gary Beuschel on a local message at the San Francisco ISC.
      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*17
       
                                       ==========
       
               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.  
      Routines: DIC, DIC1
               OpenM/Cache Sites - Restart TaskMan.  
       
          10.  Enable users' login.  
      ===================
      Make the "Y" flag in DIC(0) work the same as it did in version 21.  This
      undocumented flag is supposed to make ^DIC return a list of entry numbers
      that match the lookup value in Y(n) where 'n' is an IEN. The FIND^DIC call
      is now a better way to do the same thing. Reported by Lucille Barrios on a
      FORUM mail message.
       
       
      Routines: DICLIX1, DICU11
      =========================
      I found during my testing that in cases where the Lister decides to build
      a temporary index on a pointer or variable pointer because it's the
      fastest way to return the list in order, I needed to save the internal
      pointer or variable pointer on the temporary list, in case the user asked
      to have it returned in the output.
       
      Routine: DICA
      =============
      Routines: DIC1, DIC2, DIC3
      With the "E" flag, UPDATE^DIE assumes that the values passed in the FDA
      are in external form. Also, for LAYGO/Finding (?+) nodes, the value of the
      .01 field is used as a lookup value to see if an existing record should be
      edited, or a new record added. Prior to this change, the Updater used the
      internal form of the .01 as a lookup value, rather than the external form.
      If the .01 is a pointer or variable, this meant the lookup would fail. For
      DINUM'd pointers, this resulted in the Dialog error message #302, "Entry
      'xxx' already exists" to be returned.
       
       
      ==========================
      NOIS 
      ====
      DAY-1099-42880
       
      Thanks to Test Sites 
      ====================
       
      Routine Summary: 
      ================
      The following routines are included in this patch.  The second line of
      Support the undocumented "U" flag so that MailMan can get the same display
      these routines now looks like:
        
        <tab>;;22.0;VA FileMan;**[patch list]**;Mar 30, 1999 
        
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DIC            9848200         9925689         4,17
        DIC1           8559944         8596617         1,4,17
      on one of their lookups as they did in V21. This supports a lookup on the
        DIC2           4974600         5005952         4,17
        DIC3           7291022         7365376         1,16,4,17
        DICA           8533062         8533782         1,4,17
        DICLIX1        2988293         3152916         17
        DICU11         3617845         3663044         17
       
        
      Installation Instructions: 
      ==========================
      ** It is HIGHLY recommended that ALL Users and VISTA Background jobs to be
      index with no transforms. I.e., the code expects the lookup value to be an
      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.
      internal format (of a pointer, date, etc.), and will look on the index for
       
               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.
       
           4.  On the KIDS menu, under the 'Installation' menu, use the
      following options:
      a match, and will not try to convert the lookup value in any way. Reported
       
                  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 will be lost
      and records may be left in an inconsistent state.  Note that most of these
      
    • 105 SEQ #111
      DATE APPLIED:   2003-03-01 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*105 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 114 SEQ #112
      DATE APPLIED:   2003-03-01 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*114 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 119 SEQ #113
      DATE APPLIED:   2003-06-28 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*119 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 122 SEQ #114
      DATE APPLIED:   2003-06-28 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*122 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 110 SEQ #115
      DATE APPLIED:   2003-08-21 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*110 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 118 SEQ #116
      DATE APPLIED:   2003-09-24 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*118 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 128 SEQ #117
      DATE APPLIED:   2003-10-23 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*128 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 131 SEQ #118
      DATE APPLIED:   2003-11-07 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*131 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 123 SEQ #119
      DATE APPLIED:   2004-01-31 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*123 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 129 SEQ #120
      DATE APPLIED:   2004-03-02 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*129 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 21 SEQ #12
      DATE APPLIED:   1999-12-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Y2K Waiver Exemption ID#:  Y2KWE0031
      valid list of index names.
       
      The problem can manifest itself as bad variable name errors at S+2^DIQ:1
      or null subscript errors at N5+16^DICN0 when the DEBTOR field (#9) of the
      ACCOUNTS RECEIVABLE file (#430) is edited.
       
      NOIS
      ====
      ALX-1299-70504
      BAC-1299-40203
        This patch may be installed at any time during the Y2K Moratorium
      DUR-1299-30293
      NCH-1199-42549
      NCH-1299-40048
      OKL-1199-72669
      REN-1199-62529
       
      Routine Summary:
      ===============
      The following routines are included in this patch.  The second line of
      these routines now look like:
        (including the 12/15/1999 thru 1/15/2000 Y2K lockdown).
       
        <tab>;;22.0;VA FileMan;**[patch list]**;Mar 30, 1999
       
      CHECK^XTSUMBLD results:
       
        Routine Name    Before Patch    After Patch    Patch List 
        ============    ============    ===========    ==========
        DIED              10169985       10197675         4,21
       
       
       
      Installation Instructions:
      ==========================
       ***********************************************************************
       *  It is HIGHLY recommended that ALL Users and VISTA Background jobs  *
       *  be STOPPED. Failure to do so may result in a 'source routine       *
       *  edited' error. 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
      This patch fixes a problem that occurs when you edit a pointer field that
      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 inadvertent queuing during
      the installation of this patch.
       
      has a screen and allows LAYGO into the pointed-to file. If the variable D
           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
      happens to be set when the input transform of the pointer field is
       
           5.  Inhibit users from login into the system.  DIED and is used
      heavily in VISTA applications. A consequence of installing this patch
      while users are on the system is that users editing records may get a
      'source routine edited' error, edits will be lost, and records may be left
      in an inconsistent state.
       
           6.  AXP Sites - Place TaskMan in a WAIT State.
               OpenM/Cache Sites - STOP TaskMan.   
       
      executed and isn't changed by the input transform, ^DIE is passing it to
           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*21
                                       ==========
       
               Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu Options,
      and Protocols?
              
      MIX^DIC1 to do the lookup on the pointed-to file, even though D isn't a
           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.
      
    • 136 SEQ #121
      DATE APPLIED:   2004-03-02 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*136 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 138 SEQ #122
      DATE APPLIED:   2004-07-02 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*138 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 133 SEQ #123
      DATE APPLIED:   2004-09-03 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*133 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 135 SEQ #124
      DATE APPLIED:   2004-09-03 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*135 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 140 SEQ #125
      DATE APPLIED:   2004-10-15 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*140 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 130 SEQ #126
      DATE APPLIED:   2005-03-11 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*130 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 143 SEQ #127
      DATE APPLIED:   2005-04-26 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*143 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 145 SEQ #128
      DATE APPLIED:   2006-03-08 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Please see complete description in the Forum patch description.
      
    • 146 SEQ #129
      DATE APPLIED:   2006-03-08 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*146 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 148 SEQ #130
      DATE APPLIED:   2006-05-04 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*148 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 22 SEQ #13
      DATE APPLIED:   1999-12-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch fixes the following problem: If a new-style cross-reference is
      follows:
       
        Select MFIELD: ENTRY 1// <RET>
          MFIELD1: TEST 1// <RET>
        Select MFIELD: <RET>
        FIELD1: first// second
        
      When the new-style cross reference on FIELD1 is executed, X1 and X1(1)
      contain 'second' instead of 'first'.
       
      defined on a field, ^DIE or FileMan's 'ENTER OR EDIT FILE ENTRIES' is
      Y2K Waiver ID#:    Y2KW0001
      Y2K Waiver Status: Approved
      ===========================
           *  This patch may be installed during the Y2K Moratorium, either
              BEFORE 12/15/99 or AFTER 1/15/2000.
           *  This patch MAY NOT be installed between 12/15/1999 and 1/15/2000
              (the Y2K Lockdown Period).
       
      NOIS
      ====
      used to edit a multiple field and the field with the new-style
      ISA-1199-12633
       
      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
       
      CHECK^XTSUMBLD results:
      cross-reference, then the X1 array (which contains the old values of the
       
        Routine Name    Before Patch    After Patch    Patch List 
        ============    ============    ===========    ==========
        DIKC              11836728       11879894         1,22
       
       
      Installation Instructions:
      ==========================
       ***********************************************************************
       *  It is HIGHLY recommended that ALL Users and VISTA Background jobs  *
      fields in the cross-references) may be set incorrectly after the user
       *  be STOPPED. Failure to do so may result in a 'source routine       *
       *  edited' error. 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
      descends into and back out of the multiple.
      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 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.
       
           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 from login into the system.
       
           6.  AXP Sites - Place TaskMan in a WAIT State.
      For example, suppose MFIELD is a multiple field, a new-style
               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*22
                                       ==========
       
               Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu Options,
      cross-reference contains field MFIELD1, and you edit the fields as
      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.
      
    • 147 SEQ #131
      DATE APPLIED:   2006-05-25 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*147 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 150 SEQ #132
      DATE APPLIED:   2006-09-23 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*150 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 144 SEQ #133
      DATE APPLIED:   2007-09-04 22:58:50
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*144 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 153 SEQ #134
      DATE APPLIED:   2007-09-04 23:04:03
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*153 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 149 SEQ #135
      DATE APPLIED:   2007-09-05 00:15:37
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*149 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 156 SEQ #136
      DATE APPLIED:   2007-12-12 20:45:33
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*156 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 151 SEQ #137
      DATE APPLIED:   2007-12-12 21:35:47
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*151 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 152 SEQ #138
      DATE APPLIED:   2008-02-03 21:32:38
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*152 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 159 SEQ #139
      DATE APPLIED:   2009-04-21 16:00:59
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      See patch DI*22*159 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 157 SEQ #140
      DATE APPLIED:   2009-06-15 11:57:29
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      See patch DI*22*157 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 23 SEQ #14
      DATE APPLIED:   1999-12-20 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Bug Fixes
       Nois: SPO-1299-50519; BRX-1299-10679; SUX-1299-40851; DUB-1299-31316
       Routine: DIO0
       
      2.  During SQA it was also found that If you answer:
       HEADING: TEST LIST //  [<sp>
       where you are telling FileMan to use the space-bar retrieval of the
      Template previously named, FileMan would use the "[" as the header.
       Routine: DIP3
       
       
      =========
      NOISes 
      ======
       SPO-1299-50519
       BRX-1299-10679
       SUX-1299-40851
       DUB-1299-31316
       
      Thanks to Test Sites 
      ====================
       Spokane, WA
       
       Bronx, NY
       Sioux Falls, SD
       Dublin, GA
       
      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 
      1.  An error of <SUBSCRIPT>HDR^DIO4:3 would occurr if the following
        
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DIO0           9464280         9610303         2,23
        DIP3           10828796        10830710        23
       
      Installation Instructions: 
      ==========================
      conditions were true:
      This patch can be installed with VISTA users online.  However, it is 
      recommended that it be Queued for a time of generally least activity.  
       
           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.  
       
       A.  After Sorting there were No Records To Be Printed.
           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 
       
       and
           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*23
                                       ==========
        
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu 
      Options, and Protocols? 
       
           6.  AXP Sites - After the patch has been installed, rebuild your 
       B.  If the Header was a Print Template that contained Fields that were to
      map set, if necessary.  
      be printed.
      
    • 160 SEQ #141
      DATE APPLIED:   2010-01-05 16:59:31
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      See patch DI*22*160 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 161 SEQ #142
      DATE APPLIED:   2010-02-24 11:53:53
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      See patch DI*22*161 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 162 SEQ #143
      DATE APPLIED:   2010-02-24 11:54:06
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      See patch DI*22*162 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 163 SEQ #144
      DATE APPLIED:   2010-06-30 09:23:57
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      See patch DI*22*163 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 164 SEQ #145
      DATE APPLIED:   2010-08-24 10:09:59
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      See patch DI*22*161 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 165 SEQ #146
      DATE APPLIED:   2011-11-02 12:03:10
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      See patch DI*22*165 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 168 SEQ #147
      DATE APPLIED:   2012-08-29 11:27:18
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      See patch DI*22*168 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 167 SEQ #148
      DATE APPLIED:   2013-09-12 15:01:03
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      See the Patch Module on FORUM for complete information.
      
    • 169 SEQ #149
      DATE APPLIED:   2013-09-17 12:45:57
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      See the Patch Module on FORUM for complete information.
      
    • 170 SEQ #150
      DATE APPLIED:   2014-06-02 14:41:02
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      See the Patch Module on FORUM for complete information.
      
    • 27 SEQ #15
      DATE APPLIED:   2000-01-25 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*27 in the National Patch Module for complete information
      on this patch.
      
    • 24 SEQ #16
      DATE APPLIED:   2000-02-04 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*24 in the National Patch Module for complete information
      on this patch.
      
    • 25 SEQ #17
      DATE APPLIED:   2000-02-04 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*25 in the National Patch Module for complete information
      on this patch.
      
    • 20 SEQ #18
      DATE APPLIED:   2000-02-04 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Fixes several bugs in the FileMan lookup ^DIC routines and the finder
       
      no need to re-run DINIT to get the new field installed.
       
      Routines: DINIT0FA, DINIT0FB
      ============================
      When a new-style cross-reference is edited, provide a default for
      Subscript Number only for Regular-type indexes, not MUMPS-type indexes.
      Also, set the Subscript Length to 30 for Free Text and MUMPS fields only
      if the the field is used as a subscript. Note that these changes to the
      ScreenMan form for editing new-style cross-references is transported as
      part of the KIDS build for this patch, so there is no need to re-run DINIT
      Routines: DIC1, DIC2, DIC5 
      to get these changes.
       
      Routine: DIKCP1
      ===============
      Include the new field TRANSFORM FOR LOOKUP (#5.3) in Data Dictionary
      Listings.
       
       
      NOIS 
      ====
      ==========================
      BIL-1299-32021
      ISD-1199-72724
      ISL-1299-51117
      SLC-1299-51331 
       
       
      Thanks to Test Sites 
      ====================
       
      Routine Summary: 
      When the "T" flag in DIC(0) is used, FileMan displays the field on which a 
      ================
      The following routines are included in this patch.  The second line of these
      routines now looks like: 
        
        <tab>;;22.0;VA FileMan;**[patch list]**;Mar 30, 1999 
        
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
      match is made, as it presents the entries. This was happening even when DIC(0)
        DIC            9925689         9515778         4,17,20
        DIC0           4839635         5249546         4,20
        DIC1           8596617         8701710         1,4,17,20 
        DIC2           5005952         5078251         4,17,20
        DIC3           7365376         7735073         1,16,4,17,20
        DIC4           5435232         5480003         4,20
        DIC5           1959090         1889906         4,20
        DICF           8504495         8884337         20
        DICF2          8940451         9016160         4,20
        DICL2          4796448         4973816         20
      did not contain "E". This patch prevents the display unless DIC(0) contains
        DICM           8330209         8458025         4,20
        DICM0          9037748         9043441         16,4,20
        DICM1          6170473         6277445         20
        DICM3          4576635         4769867         16,4,20
        DICUIX         7050873         7091249         20
        DIKCFORM      10827227        10615684         20
        DIKCP1         7463319         7673038         20
        DINIT0F1       5527731         5526766         20
        DINIT0FA       7807085         9430600         20
        DINIT0FB       9020615        10086109         20
      "E".   (Found by Gary Beuschel, MailMan developer).
        DINIT2A3      13176711        14045038         1,20
        DINIT2A4       9326344        10531062         1,20
       
        
      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
      Routines: DIC3, DICF, DICF2, DICL2
      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.  
       
           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 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.  
      FIND^DIC.
      A .01 field that was 240 characters long caused a SUBSCRIPT error to occur
               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*20
                                       ==========
       
               Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu Options, and
      in the Finder FIND^DIC calls. I also found a similar problem in ^DIC if
      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.  
      the lookup value was very long. This patch corrects both problems.
      (Reported by Hellevi, Ruonamaa of Finland.)
       
      Routines: DICM3
      ===============
      When doing a lookup on an indexed variable pointer field where the pointer
      had a screen, the screen logic wasn't being honored during lookup on the
      pointed-to file. Found by Frank Stalling and Paul Sharp. NOIS:
       
      ISD-1199-72724, SLC-1299-51331.
       
      Routines: DICM0
      ===============
      If a New Style index on the .01 field has a TRANSFORM FOR STORAGE on it,
      then don't allow LAYGO to the file while the value is in it's format after
      going through the transform, as it may not be proper internal storage
      format. An example is a date transformed to backwards collating sequence,
      9999999-2991214. Found by developer.
       
      Y2K Waiver ID#:  Y2KW0001               Y2K Waiver Status: Approved
      Routines: DIC, DIC0
      ===================
      The new feature that makes ^DIC set DIC("P") so that it doesn't have to be
      set as an input variable by the developer when allowing LAYGO to
      multiples, wasn't working correctly. Found by Jerald F Rutherford. NOIS:
      ISL-1299-51117.
       
      Routines: DIC1, DIC2, DICM, DICM1
      =================================
      In the process of testing the Name Standardization project for the New
       => This patch MAY NOT be installed between 12/15/1999 and 1/15/2000
      Person file, it was discovered that when there was a transform on the "B"
      index, the index value wasn't being displayed correctly during lookup.
       
      Routines: DIC4
      ==============
      When the new "T" flag was used in DIC(0), developer discovered that a hard
      error could occur if one of the indexes was a new style index with
      TRANSFORM FOR STORAGE code. The error happened during the code that
      executes the transform against the lookup value, then does a second lookup
      on the index looking for a match to the transformed lookup value.
          (the Y2K Lockdown Period).
       
      Routines: DIC3
      ==============
      Entries were not being found doing lookup when DIC(0) contained the
      undocumented flag "U", as it is when doing a relational jump using a
      backwards pointer. NOIS: BIL-1299-32021
       
      Routine: DICUIX
      ===============
      Look for the new field 'TRANSFORM FOR LOOKUP' in the INDEX file.
       => This patch may be installed during the Y2K Moratorium
      Previously during lookup, if FileMan failed to find a match to the lookup
      value, and if a lookup index had TRANSFORM FOR STORAGE code, FileMan
      executed that against the lookup value and tried to find a match with the
      new transformed value. Now it uses the TRANSFORM FOR LOOKUP code instead.
      The TRANSFORM FOR STORAGE code is used only to transform an entries field
      value before storing it in the index for that entry.
       
      Routines: DIC3, DIC5, DICM
      ===========================
      Because of the place where the DICR array was being NEWed when DIC(0)
          - AFTER 1/15/2000.
      contained the new "T" flag, I was losing a flag that told me I asked the
      user whether they wanted to add a new entry while I had an internal,
      transformed lookup value to stuff in the .01 field. This was causing me to
      ask again whether they wanted to add a new entry, after all the transforms
      were done.  Found by developer.
       
      Routine: DIKCFORM
      =================
      When a new-style index is created and a TRANSFORM FOR STORAGE code was
      defined on one of the cross-reference values, the TRANSFORM FOR DISPLAY
       
      field was made required. This change makes the TRANSFORM FOR DISPLAY
      optional, even if a TRANSFORM FOR STORAGE is defined, since the internal
      form of the index value may already be readable to the user.
       
      Routines: DINIT2A3, DINIT2A4, DINIT0FA, DINIT0FB
      ================================================
      Add a new field to the Index file (#.11), Cross-References Values multiple
      (#.114). The field is TRANSFORM FOR LOOKUP (#5.3) and is used by FileMan's
      lookup utilities (see change to routine DICUIX above). Note that this new
      field is transported as part of the KIDS build for this patch, so there is
      
    • 29 SEQ #19
      DATE APPLIED:   2000-02-29 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*29 in the National Patch Module for complete information
      on this patch.
      
    • 13 SEQ #2
      DATE APPLIED:   1999-10-02 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Routine: DIC11
      developers had used DIC("V") to limit the lookup to only one of the
      pointed-to files.  This patch makes the lookup work on variable pointers
      as well as pointers.
       
      NOIS 
      ====
       BAY-0899-31670
       PAL-0899-62585
       
      Thanks to Test Site
      --------------
      ====================
       Bay Pines, FL
       Palo Alto HCS, CA
       
      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 
      In version 21 of FileMan, if lookup value is accent grave followed by a
        
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DIC11          3318576         3304157         1,13
          
      Installation Instructions: 
      ==========================
      ** It is HIGHLY recommended that ALL Users and VISTA Background jobs to be 
      number, FileMan first looks on the current file for a matching IEN.  If
      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 DIC11 is mapped on
      your system, it 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.  
       
      none is found, but we can add records to the file, and if the .01 field is
      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.  
       
           4.  On the KIDS menu, under the 'Installation' menu, use the following 
      options: 
                  Print Transport Global 
      a pointer or variable pointer, FileMan looks on the pointed-to file for a
                  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 will be lost
      and records may be left in an inconsistent state.  Note that DIC11 is
      heavily used in DHCP applications.  
       
      matching IEN. This did not work for variable pointers in version 22
           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*13
                                       ==========
       
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu Options, 
      because it was felt that the user had no control over which of the
      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.  
      pointed-to files might be used for the match.  However, on the NOIS, the
      
    • 8 SEQ #20
      DATE APPLIED:   2000-02-29 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*8 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 9 SEQ #21
      DATE APPLIED:   2000-04-05 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*9 in the National Patch Module for complete information
      on this patch.
      
    • 26 SEQ #22
      DATE APPLIED:   2000-04-05 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*26 in the National Patch Module for complete information
      on this patch.
      
    • 30 SEQ #23
      DATE APPLIED:   2000-04-05 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See DI*22*30 of the National Patch Module for full documentation.
      
    • 32 SEQ #24
      DATE APPLIED:   2000-04-05 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*32 in the National Patch module on FORUM for a full
      description.
      
    • 28 SEQ #25
      DATE APPLIED:   2000-04-17 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*28 in the National Patch Module for complete information
      on this patch.
      
    • 33 SEQ #26
      DATE APPLIED:   2000-05-01 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Please see the National Patch Module for details to patch DI*22*33.
      
    • 36 SEQ #27
      DATE APPLIED:   2000-05-01 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Please see DI*22*36 in FORUM's National Patch Module for details 
      
    • 39 SEQ #28
      DATE APPLIED:   2000-05-01 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*39 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 11 SEQ #29
      DATE APPLIED:   2000-05-01 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*11 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 12 SEQ #3
      DATE APPLIED:   1999-10-07 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch introduces two new APIs in VA FileMan, DELIX^DDMOD and
       
        
              MYOUT("DDAUD")=1
              MYOUT("DIEZ",100)=ZZTEST EDIT^16200^ZZIT
              MYOUT("DIKZ")=ZZCR
        
            The MYOUT output array indicates that the deletion was recorded in
            the DD Audit file (#.6).  Field #12 is included in the compiled
            input template ZZTEST EDIT (#100), which is compiled into the ZZIT
            namespaced routines. Cross-references on file #16200 are compiled
            under the ZZCR namespace.
        
        
        2.  In this example, the whole-file regular cross-reference #7 (the "N"
            index), defined on field #15 within subfile #16200.075, is deleted.
            The "K" flag indicates that the entire ^DIZ(16200,"N") index should
            be removed, and the "W" flag indicates that messages should be
            printed to the current device.
        
              >D DELIX(16200.075,15,7,"KW")
        
              Removing index ...
      Documentation:
              Deleting cross-reference definition ...
        
        
              Compiling ZZ TEST CR Input Template of File 16200...
              'ZZIT1' ROUTINE FILED..
              'ZZIT' ROUTINE FILED....
              'ZZIT2' ROUTINE FILED.
        
              Compiling Cross-Reference(s) 16200 of File 16200.
        
      =============
              ...SORRY, HOLD ON...
        
              'ZZCR1' ROUTINE FILED.
              'ZZCR2' ROUTINE FILED.
              'ZZCR3' ROUTINE FILED.
              'ZZCR4' ROUTINE FILED.
              'ZZCR5' ROUTINE FILED.
              'ZZCR' ROUTINE FILED.
        
        Error Codes Returned
       
        --------------------
        202   The specified parameter is missing or invalid.
        301   The passed flags are incorrect.
        401   The file does not exist.
        406   The file has no .01 definition.
        407   A word-processing field is not a file.
        501   The file does not contain the specified field.
       
       
        DELIXN^DDMOD: New-Style Index Deleter
        DELIX^DDMOD: Traditional Cross-Reference Deleter
        =====================================
        This procedure deletes a New-Style Index definition from the Index file.
        Optionally, it deletes the data in the index or executes the kill logic
        for all entries in the file. Compiled input templates that contain one
        or more of the fields defined in the index are recompiled. If
        cross-references on the file are compiled, they are recompiled.
        
        Format
        ------
        DELIXN^DDMOD(FILE,INDEX,FLAGS,OUTPUT_ROOT,MSG_ROOT)
        ================================================
        
        Input Parameters
        ----------------
        FILE          (Required) File or subfile number. For whole-file indexes,
                      this is the number of the file at the upper level where
                      the data in the index resides.
        
        INDEX         (Required) Index name.
                      
        FLAGS         (Optional)
        This procedure deletes a Traditional Cross-Reference definition from the
                      Flags to control processing. The possible values are:
                      
                        K     For Regular indexes, delete the data in the index.
                              For MUMPS indexes, execute the kill logic for all
                              entries in the file.
                      
                        W     Write messages to the current device as the index
                              is deleted and cross-references and input
                              templates are recompiled.
                              
        data dictionary. Optionally, it deletes the data in the index or
        OUTPUT_ROOT   (Optional) The name of the array that should receive
                      information about input templates and cross-references
                      that may have been recompiled. See Output below. This must
                      be a closed root, either local or global.
                      
        MSG_ROOT      (Optional) The name of the array that should receive any
                      error messages. This must be a closed root, either local
                      or global. If not passed, errors are returned descendent
                      from ^TMP("DIERR",$J).
        
        executes the kill logic for all entries in the file. Compiled input
        Output
        ------
        OUTPUT_ROOT   See OUTPUT_ROOT under Input Parameters. If a field used in
                      the index is used in any compiled input templates, those
                      input templates are recompiled. Information about the
                      recompiled input templates is stored descendant from
                      OUTPUT_ROOT("DIEZ"):
                      
                        OUTPUT_ROOT("DIEZ",input template #) =
                          input template name ^ file # ^ compiled routine name
      DELIXN^DDMOD. DELIX^DDMOD can be used to delete a Traditional
        templates that contain the field on which the cross-reference is defined
                      
                      If cross-references for the file are compiled, they are
                      recompiled, and the compiled routine name is stored in
                      OUTPUT_ROOT("DIKZ"):
                      
                        OUTPUT_ROOT("DIKZ") = compiled routine name
        
        Example
        -------
        1.  In this example, the new-style "G" index defined on file #16200 is
        are recompiled. If cross-references on the file are compiled, they are
            deleted. The "K" flag indicates that the entire ^DIZ(16200,"G")
            index should be removed from the file.
        
              >D DELIXN^DDMOD(16200,"G","K","MYOUT")
        
              >ZW MYOUT
              MYOUT("DIEZ",94)=ZZ TEST^16200^ZZIT
              MYOUT("DIEZ",100)=ZZ TEST A^16200^ZZITA
              MYOUT("DIKZ")=ZZCR
        
        recompiled.
            The MYOUT output array indicates that a field or fields defined in
            the deleted index are used in the compiled input templates ZZ TEST
            (#94) and ZZ TEST 2 (#100). Those two input templates were
            recompiled. Cross-references on file #16200 were also recompiled
            under the ZZCR namespace.
        
        2.  In this example, the whole-file regular index (the "J" index) is
            deleted. The fields in the index come from fields in a multiple,
            subfile #16200.075, but the whole-file index resides at the
            top-level file #16200. The "K" flag indicates that the entire
        
            ^DIZ(16200,"J") index should be removed, and the "W" flag indicates
            that messages should be printed to the current device.
        
              >D DELIXN^DDMOD(16200,"J","KW","MYOUT")
        
              Removing index ...
              Deleting index definition ...
        
        
              Compiling ZZ TEST Input Template of File 16200....
        Format
              'ZZIT' ROUTINE FILED....
              'ZZIT1' ROUTINE FILED.
        
        
              Compiling ZZ TEST A Input Template of File 16200....
              'ZZITA' ROUTINE FILED....
              'ZZITA' ROUTINE FILED.
        
              Compiling Cross-Reference(s) 16200 of File 16200.
        
        ------
              ...SORRY, JUST A MOMENT PLEASE...
        
              'ZZCR1' ROUTINE FILED.
              'ZZCR2' ROUTINE FILED.
              'ZZCR3' ROUTINE FILED.
              'ZZCR4' ROUTINE FILED.
              'ZZCR5' ROUTINE FILED.
              'ZZCR6' ROUTINE FILED.
              'ZZCR7' ROUTINE FILED.
              'ZZCR8' ROUTINE FILED.
        DELIX^DDMOD(FILE,FIELD,CROSS_REF,FLAGS,OUTPUT_ROOT,MSG_ROOT)
              'ZZCR9' ROUTINE FILED.
              'ZZCR10' ROUTINE FILED.
              'ZZCR' ROUTINE FILED.
        
        Error Codes Returned
        --------------------
        202   The specified parameter is missing or invalid.
        301   The passed flags are incorrect.
        
       
        
      NOISes
      ======
      ISW-0799-22411
      BRX-0297-10955
       
      Thanks to Test Sites
      ====================
      BRONX, NY
       
      Routine Summary:
        Input Parameters
      ================
      The following routines are included in this patch.  The second line
      of these routines now looks like:
       
        <tab>;;22.0;VA FileMan;**[patch list]**;Mar 30, 1999
       
      CHECK^XTSUMBLD results: 
       
        Routine Name   Before Patch    After Patch     Patch List
        ============   ============    ===========     ==========
        ----------------
           DDMOD           N/A            147228           12
           DIKCU1        3879444         3896028           12
           DIKD            N/A           3683869           12
           DIKD1           N/A           2907868           12
           DIKD2           N/A           2009556           12
       
      Installation Instructions: 
      ==========================
      This patch can be installed with VISTA users online.  However, it is
      recommended that it be Queued for a time of generally least activity.
      Cross-Reference definition from the data dictionary. DELIXN^DDMOD can be
        FILE          (Required) File or subfile number.
       
           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.  On the KIDS menu, under the 'Installation' menu, use the
      following option:
       
                  Select Installation Option: Install Package(s)
                  Select INSTALL NAME: DI*22.0*12
        FIELD         (Required) Field number.
                                       ==========
       
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
       
           5.  AXP Sites - After the patch has been installed, rebuild your map
      set, if necessary.
                        
        CROSS_REF     (Required) Cross-reference number. Traditional
                      cross-references are defined in the data dictionary
                      under ^DD(file#,field#,1,cross reference number).
                        
        FLAGS         (Optional) Flags to control processing. The possible
                      values are:
      used to delete a New-Style Index definition from the Index file (#.11).
                        
                        K     For Regular, KWIC, Mnemonic, and Soundex-type
                              cross-references, delete the data in the index.
                              For MUMPS and Trigger-type cross-references,
                              execute the kill logic of the cross-reference for
                              all entries in the file. For Bulletin-type
                              cross-references, the "K" flag is ignored; the
                              kill logic for Bulletin-type cross-references is
                              never executed by this procedure.
                        
      Optionally, depending on the type of cross-reference deleted, the APIs
                        W     Write messages to the current device as the index
                              is deleted and cross-references and input
                              templates are recompiled.
                        
        OUTPUT_ROOT   (Optional) The name of the array that should receive
                      information about input templates and cross-references
                      that may have been recompiled and a flag to indicate that
                      the deletion was audited in the DD Audit file (#.6). See
                      Output below. This must be a closed root, either local or
                      global.
      will also delete the data in the index or execute the kill logic for all
                        
        MSG_ROOT      (Optional) The name of the array that should receive any
                      error messages. This must be a closed root, either local
                      or global. If not passed, errors are returned descendent
                      from ^TMP("DIERR",$J).
        
        Output
        ------
        OUTPUT_ROOT   See OUTPUT_ROOT under Input Parameters.
                        
      entries in the file. Compiled input templates that contain the field on
                      If the field on which the deleted cross-reference was
                      defined is used in any compiled input templates, those
                      input templates are recompiled. Information about the
                      recompiled input templates is stored descendant from
                      OUTPUT_ROOT("DIEZ"):
                        
                        OUTPUT_ROOT("DIEZ",input template #) = 
                          input template name ^ file # ^ compiled routine name
                      
                      If cross-references for the file are compiled, they are
      which the cross-reference is defined are recompiled. If cross-references
                      recompiled, and the compiled routine name is stored in
                      OUTPUT_ROOT("DIKZ"):
                      
                        OUTPUT_ROOT("DIKZ") = compiled routine name
                      
                      If the data dictionary for the file is audited, an entry
                      is made in the DD Audit file (#.6) and
                      OUTPUT_ROOT("DDAUD") is set to 1:
                      
                        OUTPUT_ROOT("DDAUD") = 1
      on the file are compiled, they are also recompiled.
        
        Example
        -------
        1.  In this example, regular cross-reference #4 (the "C" index), defined
            on field #12 in file #16200, is deleted. The "K" flag indicates that
            the entire ^DIZ(16200,"C") index is removed from the file.
        
              >D DELIX^DDMOD(16200,12,4,"K","MYOUT")
        
              >ZW MYOUT
      
    • 31 SEQ #30
      DATE APPLIED:   2000-05-01 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*31 in the National Patch Module for complete information
      on this patch.
      
    • 6 SEQ #31
      DATE APPLIED:   2000-05-01 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*6 in the National Patch Module for complete information
      on this patch.
      
    • 34 SEQ #32
      DATE APPLIED:   2000-05-01 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*34 in the National Patch Module for complete information
      on this patch.
      
    • 19 SEQ #33
      DATE APPLIED:   2000-05-16 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*19 in the National Patch Module for complete information
      on this patch.
      
    • 37 SEQ #34
      DATE APPLIED:   2000-05-16 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*37 in the National Patch Module for complete information
      on this patch.
      
    • 5 SEQ #35
      DATE APPLIED:   2000-06-12 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*5 in the National Patch Module for complete information on
      this patch.
      
    • 35 SEQ #36
      DATE APPLIED:   2000-06-12 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*35 in the National Patch Module for complete information
      on this patch.
      
    • 3 SEQ #37
      DATE APPLIED:   2000-07-11 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*3 in the National Patch Module for complete information on
      this patch.
      
    • 40 SEQ #38
      DATE APPLIED:   2000-07-11 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*40 in the National Patch Module for complete information
      on this patch.
      
    • 48 SEQ #39
      DATE APPLIED:   2000-07-11 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*48 in the National Patch Module for complete information
      on this patch.
      
    • 14 SEQ #4
      DATE APPLIED:   1999-10-07 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch fixes some bugs, and contains an enhancement to address a Y2K
      With this patch, if %%DT'["X" the above inputs are interpreted as July
      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.
       
           4.  On the KIDS menu, under the 'Installation' menu, use the
      following options: 
       
                  Print Transport Global
      2000.
                  Compare Transport Global to Current System
                  Verify Checksums in Transport Global
                  Backup a Transport Global
       
           5.  Inhibit users from login into the system.  %DT and %DTC are used
      heavily in VISTA applications. The consequences of installing this patch
      while users are on the system are that users may get a 'source routine
      edited' error.
       
           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*14
                                       ==========
       
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      2. Input such as "0700", where the input is exactly 4 numerics with "00"
      Options, and Protocols? 
              
           8.  After installing this patch, you need to move the routines DIDT
      and DIDTC from your production account into your manager account. Then, in
      the manager account, rename:
       
                  DIDT to %DT 
                  DIDTC to %DTC 
       
                  Example: ZL DIDT ZS %DT 
      as the last to digits, was interpreted as July of the current year (if the
       
           9.  AXP Sites - After the patch has been installed, rebuild your map
      set, if necessary.
       
          10.  AXP Sites - Remove TaskMan from WAIT State.
               OpenM/Cache Sites - Restart TaskMan.
       
          11.  Enable users' login.
      "P" and "F" flags weren't used). With this patch, if %DT'["X", "0700" is
      interpreted as July 2000; if %DT["X", it is rejected.
       
      3. Input such as "070", where the input is exactly 3 numerics, and the
      first two numbers are a valid month and the third number is a 0, was
      issue.
      interpreted as July of the current year (if the "P" and "F" flags weren't
      used). With this patch, "070" is rejected.
       
      Enhancement:
      -----------
      Introduce a new "M" flag for %DT. This flag allows input such as "0701",
      "07/01", "JUL 01", "01 JUL" to be interpreted as July 2001, instead of
      July 1st.
       
        M      Only Month and year input is allowed (example 1). If only a month
       
               and two digits are entered, interpret the two digits as a year
               instead of a day (example 2).
               
               If the M flag is used with the X flag, a month must be specified;
               otherwise, the input can be just a year (example 3).
       
        M Flag
        ================================================
                           Date            Date Returned
        Ex.   Input        Returned        Without M
      Routine: DIDT (%DT), DIDTC (%DTC)
        ------------------------------------------------
        1)    7-05-2005    --invalid--     July 5, 2005
        2)    7-05         July 2005       July 5, 2000*
        ================================================
        * Assumes the current year is 2000 and the P and F flags aren't used.
       
        M Flag with X
        ================================================
                           Date Returned   Date Returned
        Ex.   Input        With X          Without X
      ---------------------------------
        ------------------------------------------------
        3)    05 or 2005   --invalid--     2005
        ================================================
       
               
      NOISs:
      =====
      ISP-0899-N2311
      ISP-0899-N2314
      ISP-0899-N2322
      Bug fixes:
       
       
      Thanks to Test Sites:
      ====================
      White City, OR
      Bay Pines CIOFO
       
         
      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 
        
      CHECK^XTSUMBLD results: 
       
        Routine Name    Before Patch    After Patch    Patch List 
        ============    ============    ===========    ==========
        DIDT (%DT)        6481242         6856270          14
      1. Input such as such as "07/00", "JUL 00", and "00 JUL", where the
        DIDTC (%DTC)      7099203         7770956          14
       
       
      Installation Instructions: 
      ==========================
       ***********************************************************************
       *  It is HIGHLY recommended that ALL Users and VISTA Background jobs  *
       *  be STOPPED. Failure to do so may result in a 'source routine       *
       *  edited' error. Edits will be lost and records may be left in an    *
       *  inconsistent state.                                                *
      two-digit year is "00", was rejected even if inexact dates are allowed.
       ***********************************************************************
       
           1.  AXP sites: Review your mapped routine set. If any of the
      routine(s) listed in the ROUTINE SUMMARY section are mapped, the 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.
      
    • 51 SEQ #40
      DATE APPLIED:   2000-07-11 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Fixes "bad syntax at end of command or Xecute string" error in S2+7^DICL2.
       
      See patch DI*22*51 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 38 SEQ #41
      DATE APPLIED:   2000-07-11 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*38 in the National Patch Module for complete information
      on this patch.
      
    • 43 SEQ #42
      DATE APPLIED:   2000-07-11 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*43 in the National Patch Module for complete information
      on this patch.
      
    • 44 SEQ #43
      DATE APPLIED:   2000-07-11 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*44 in the National Patch Module for complete information
      on this patch.
      
    • 45 SEQ #44
      DATE APPLIED:   2000-07-11 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*45 in the National Patch Module for complete information
      on this patch.
      
    • 47 SEQ #45
      DATE APPLIED:   2000-07-11 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*47 in the National Patch Module for complete information
      on this patch.
      
    • 50 SEQ #46
      DATE APPLIED:   2000-08-16 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*50 in the National Patch Module for complete information
      on this patch.
      
    • 46 SEQ #47
      DATE APPLIED:   2000-08-16 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*46 in the National Patch Module for complete information
      on this patch.
      
    • 54 SEQ #48
      DATE APPLIED:   2000-08-16 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*54 in the National Patch Module for complete information
      on this patch.
      
    • 56 SEQ #49
      DATE APPLIED:   2000-08-24 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*56 in the National Patch Module for complete information
      on this patch.
      
    • 7 SEQ #5
      DATE APPLIED:   1999-10-19 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Routines: DID1, DID2
       
       
                  Print Transport Global
                  Compare Transport Global to Current System
                  Verify Checksums in Transport Global
                  Backup a Transport Global
       
           5.  On the KIDS menu, under the 'Installation' menu, use the
      following option:
       
                  Select Installation Option: Install Package(s)
      Routine: DID1
                  Select INSTALL NAME: DI*22.0*7
                                       =========
       
                  Answer 'NO' to 'Want to DISABLE Scheduled Options, Menu
      Options, and Protocols?
       
           6.  AXP Sites - After the patch has been installed, rebuild your map
      set, if necessary.
       
           7.  You may optionally delete the pre-installation routine DIPR7.
      -------------
      Bug: In a Standard DD Listing, the Descriptions of cross-references
      weren't formatted correctly within the margins of the report.
      (NOIS: ISW-1198-21324)
       
      Routines: DIV, DIVR
      -------------------
      Bug: If the UTILITY FUNCTIONS/VERIFY FIELDS option is used, the generated
      --------------------
      report could scroll off the screen. This patch makes the option prompt for
      device, and if the report is printed to the screen, makes it issue the
      "Enter RETURN to continue or '^' to exit:" prompt at the end of each page.
       
      Routines: DIVR, DIVR1
      ---------------------
      Bug: When the UTILITY FUNCTIONS/VERIFY FIELDS option is used, and if a
      required or key field equals only one or more spaces, the message
      "Missing" would be printed. This patch changes the message to "Equals only
      1 or more spaces" to more accurately reflect the reason an entry is
      Bug: When running the List File Attributes option on a file that has
      flagged as having a possible problem.
      (NOIS: ISL-0499-51116)
       
      Routine: DICATT
      ---------------
      Bug: The prompt after option 4, Modify File Attributes, had a typo:
      the word "USER" should be "USE":
       
              DO YOU WANT TO USER THE SCREEN-MODE VERSION? Yes//
                             ====
      extensive M code for Cross References, Input Transforms and the like, if
       
      Routines: DIPR7, DINIT11B
      -------------------------
      Bug: Change field 20 DEVELOPER in file 1 (FILE) so that LAYGO is not
      allowed to file 200 (NEW PERSON file).  This should have never been
      allowed and was an oversite.  DIPR7 is a pre-init routine that changes the
      second piece of the field from 200P to 200P'.  DINIT11B is the routine
      that is the part of the initialization of FileMan that brings in field 20.
       
       **NOTE** You may safely delete routine DIPR7 after installing this patch.
      the Right Margin was small enough, it was possible to go into an endless
       
      NOIS
      ====
       BRX-1295-10591
       ISL-0499-51116
       ISW-1198-21324
       
      Thanks to Test Sites 
      ====================
       Bronx, NY
      loop. This was noticed when trying to List File Attributes for file #63
       White River Junction, VT
       Hampton, VA
       
      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
        
      and sending the output to the Browser with a right margin less than 132.
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
            DICATT        8217226         7872715           7
            DID1         10810057        10875512           7
            DID2         10525120        10677478           7
            DINIT11B      3195420         3197349           7
            DIPR7          n/a              27289           7
            DIV           3841210         6086701           7
      The result was a "disk full" error.
            DIVR          8571704        10083576           7
            DIVR1        10947202        10953209           7
       
      Installation Instructions: 
      ==========================
      This patch can be installed with VISTA users online.  However, it is
      recommended that it be Queued for a time of generally least activity.
       
           1.  AXP sites: Review your mapped routine set. If any of the
      routine(s) listed in the ROUTINE SUMMARY section are mapped, the should be
      (NOIS: BRX-1295-10591)
      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.
       
           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:
      
    • 53 SEQ #50
      DATE APPLIED:   2000-09-05 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*53 in the National Patch Module for complete information
      on this patch.
      
    • 57 SEQ #51
      DATE APPLIED:   2000-09-05 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*57 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 61 SEQ #52
      DATE APPLIED:   2000-10-12 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*61 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 55 SEQ #53
      DATE APPLIED:   2000-10-12 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*55 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 58 SEQ #54
      DATE APPLIED:   2000-10-27 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*58 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 60 SEQ #55
      DATE APPLIED:   2000-10-27 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*60 in the National Patch Module for complete 
      informationon this patch.
      
    • 62 SEQ #56
      DATE APPLIED:   2000-10-27 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*62 in the National Patch Module for complete 
      informationon this patch.
      
    • 65 SEQ #57
      DATE APPLIED:   2000-11-27 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*65 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 69 SEQ #58
      DATE APPLIED:   2001-01-03 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*69 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 63 SEQ #59
      DATE APPLIED:   2001-01-22 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*63 in the National Patch Module for complete 
      informationon this patch.
      
    • 16 SEQ #6
      DATE APPLIED:   1999-10-19 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      This patch repairs allocation errors when doing a call to the FileMan
      error would only happen on a real file if it had several thousand
       
           9.  AXP Sites - Remove TaskMan from WAIT State.  
               OpenM/Cache Sites - Restart TaskMan.  
       
          10.  Enable users' login.  
      individual cross-references (which would not be likely to happen). Nois:
      KAN-0999-40493.
       
      Routines: DICM0,DICM3
      =====================
      Repairs allocation error at S+14^DIC3. This would only happen when a
      cross-reference was on a pointer or variable pointer field, there were
      many (over 1000) entries that pointed to an entry whose .01 field matched
      the value being looked-up, but a screen made it so that most of the
      lookup routine ^DIC.
      entries with the pointer were not selected. Noises: HIN-0999-42903,
      ATG-0999-32715, SLC-0999-52640, DAY-0899-41847.
       
       
      NOIS 
      ====
       ATG-0999-32715
       DAY-0899-41847
       HIN-0999-42903
       KAN-0999-40493
       
       SLC-0999-52640
       
      Thanks to Test Sites 
      ====================
       
      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 
        
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DIC3           8138582         8139369         1,16
        DICM0          6941241         8997983         16
        DICM3          3812212         4576635         16
       
      Routine: DIC3
          
      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.  
       
           3.  The patch has now been loaded into a transport global on your system.
      Repairs allocation error at C4+2^DICUIX2. This happened because one of the
      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 
       
           5.  Inhibit users' login into the system.  The consequence of having users
      Mailman files had some invalid nodes that looked like cross-references.
      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.  
       
           7.  On the KIDS menu, under the 'Installation' menu, use the following
      option: 
      Each node had a subscript that contained an "R" followed by a number. This
                  Select Installation Option: Install Package(s) 
                  Select INSTALL NAME: DI*22.0*16
                                       ==========
       
                  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. 
      
    • 64 SEQ #60
      DATE APPLIED:   2001-01-22 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*64 in the National Patch Module for complete 
      informationon this patch.
      
    • 74 SEQ #61
      DATE APPLIED:   2001-02-28 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*70 in the National Patch Module for complete information
      on this patch.
      
    • 67 SEQ #62
      DATE APPLIED:   2001-03-26 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*67 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 81 SEQ #63
      DATE APPLIED:   2001-05-07 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*81 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 72 SEQ #64
      DATE APPLIED:   2001-06-08 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*72 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 52 SEQ #66
      DATE APPLIED:   2001-06-25 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      When a file or subfile is deleted, clean up "PT" nodes on pointed to 
      files, "TRB" node on fields triggered in other other files, and "IX" nodes
      for whole file cross-references. Also clean up "PT" nodes when a variable
      pointer field is created, and then made into a multiple.
       
      See patch DI*22*52 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 79 SEQ #67
      DATE APPLIED:   2001-06-25 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*79 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 42 SEQ #68
      DATE APPLIED:   2001-07-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*42 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 75 SEQ #69
      DATE APPLIED:   2001-07-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*75 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 85 SEQ #70
      DATE APPLIED:   2001-07-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*85 in the National Patch Module on FORUM for complete 
      information on this patch.
      
    • 15 SEQ #7
      DATE APPLIED:   1999-10-19 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Routine: DICF1 
       
      Thanks to Test Site 
      ====================
       Dayton, OH
       
      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 
        
      CHECK^XTSUMBLD results: 
        
        Routine Name   Before Patch    After Patch     Patch List 
        ============   ============    ===========     ==========
        DICF1          6446378         6462834         15 
          
      Installation Instructions: 
      ==========================
      A problem was reported when using $$FIND1^DIC and the first
      ** 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 DICF1 is mapped
      on your system, it should be removed from the mapped set at this time.  
       
           2.  Use the 'INSTALL/CHECK MESSAGE' option on the PackMan menu. 
      position of the [.]VALUE was equal to a Comma, a Null Subscript error
      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.  
       
           4.  On the KIDS menu, under the 'Installation' menu, use the
      would occurr at LOOP+3^DICFIX.  For example, VALUE=",DOE,JANE"
      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
      will be lost and records may be left in an inconsistent state.  Note
       
      that DIC11 is 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*15 
                                       ==========
      NOIS 
       
                  Answer 'YES' to 'Want KIDS to INHIBIT LOGONs during the
      install?
                  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.  
       DAY-0999-41729
      
    • 88 SEQ #71
      DATE APPLIED:   2001-07-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*88 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 73 SEQ #72
      DATE APPLIED:   2001-08-02 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*73 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 77 SEQ #73
      DATE APPLIED:   2001-08-02 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*77 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 78 SEQ #74
      DATE APPLIED:   2001-08-02 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*78 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 87 SEQ #75
      DATE APPLIED:   2001-08-02 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*87 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 86 SEQ #76
      DATE APPLIED:   2001-09-26 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*86 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 18 SEQ #77
      DATE APPLIED:   2001-09-26 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*18 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 59 SEQ #78
      DATE APPLIED:   2001-11-06 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*59 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 82 SEQ #79
      DATE APPLIED:   2001-11-06 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*82 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 41 SEQ #80
      DATE APPLIED:   2001-11-21 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*41 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 10 SEQ #8
      DATE APPLIED:   1999-11-04 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      Routine: ^DIK1
       
       
                  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.
       
        - the difference between X and the ien of the next record is large
          10.  Enable users' login.
       
      ^DIK could go into an extremely time-consuming loop as it attempts to find
      the ien of the last (or next) record in the file.
       
      For example, file 16010 has the following header node and entries:
       
        ^DIZ(16010,0) = TEST^16010^xxx^3
                                    ^------- 3rd piece of header node
      --------------
        ^DIZ(16010,1,0) = FIRST
        ^DIZ(16010,10,0) = SECOND
        ^DIZ(16010,12345678901234,0) = THIRD
       
      If you use ^DIK to delete entry #10 (and xxx = 10) or entry
      #12345678901234 (and xxx = 12345678901234), ^DIK could go into a
      time-consuming loop.
      (NOIS: IVM-1099-31783)
       
      Y2K Waiver Exemption Number:
      Bug: Suppose ^DIK is used to delete a record with an internal entry number
      ============================
      Y2KWE0005
       
      NOIS:
      =====
      IVM-1099-31783
       
      Thanks to Test Sites:
      =====================
      HEC-ATLANTA
      (ien) of X in a file, X equals what's in the 3rd piece of the header node
       
      Routine Summary:
      ================
      The following routine is included in this patch. The second line of the
      routine now looks like:
       
        <tab>;;22.0;VA FileMan;**[patch list]**;Mar 30, 1999
       
      CHECK^XTSUMBLD results:
       
      of the file, and there is no record in the file with an ien of X-1. If
        Routine Name   Before Patch    After Patch     Patch List
        ============   ============    ===========     ==========
            DIK1         6302851         6092464          1,10
       
      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  *
      either of the following is true:
       *  inconsistent state.                                                  *
       *************************************************************************
       
           1.  AXP sites: Review your mapped routine set. If any of the
      routine(s) listed in the ROUTINE SUMMARY section are mapped, the 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.
       
           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:
       
        - X is the last ien used in the file, and the difference between X and
                  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 will be lost
      and records may be left in an inconsistent state. Note that most of these
      routines are heavily used in DHCP applications.
          the ien of the preceding record is large; or
       
           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*10
                                       ==========
      
    • 68 SEQ #81
      DATE APPLIED:   2001-11-21 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*68 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 49 SEQ #82
      DATE APPLIED:   2001-12-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*49 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 90 SEQ #83
      DATE APPLIED:   2001-12-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*90 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 94 SEQ #84
      DATE APPLIED:   2001-12-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*94 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 92 SEQ #85
      DATE APPLIED:   2001-12-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*92 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 83 SEQ #86
      DATE APPLIED:   2002-02-04 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*83 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 91 SEQ #87
      DATE APPLIED:   2002-02-07 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*91 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 89 SEQ #88
      DATE APPLIED:   2002-02-26 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*89 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 103 SEQ #89
      DATE APPLIED:   2002-04-08 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*103 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 99 SEQ #90
      DATE APPLIED:   2002-04-08 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*99 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 4 SEQ #9
      DATE APPLIED:   1999-11-23 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      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
      
    • 100 SEQ #91
      DATE APPLIED:   2002-04-23 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*100 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 107 SEQ #92
      DATE APPLIED:   2002-05-16 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*107 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 102 SEQ #93
      DATE APPLIED:   2002-06-26 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*102 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 108 SEQ #94
      DATE APPLIED:   2002-06-26 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*108 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 109 SEQ #95
      DATE APPLIED:   2002-06-27 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*109 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 104 SEQ #96
      DATE APPLIED:   2002-07-10 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*104 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 96 SEQ #97
      DATE APPLIED:   2002-08-14 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*96 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 97 SEQ #98
      DATE APPLIED:   2002-08-14 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*97 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 113 SEQ #99
      DATE APPLIED:   2002-09-27 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*113 in the National Patch Module on FORUM for complete
      information on this patch.
      
    • 101 SEQ #100
      DATE APPLIED:   2002-10-08 00:00:00
      APPLIED BY:   USER,ONE
      DESCRIPTION:   
      See patch DI*22*101 in the National Patch Module on FORUM for complete
      information on this patch.
      
    DATE INSTALLED AT THIS SITE:   2013-09-12 00:00:00
    INSTALLED BY:   USER,SEVENTEEN
    DESCRIPTION OF ENHANCEMENTS:   
    This Build file entry contains the Options, Security Keys, and Remote
    Procedures used by VA FILEMAN.
    
  • 22.2
    DATE DISTRIBUTED:   2016-01-05 00:00:00
    PATCH APPLICATION HISTORY:
    • 1 SEQ #1
      DATE APPLIED:   2016-08-29 13:06:09
      APPLIED BY:   USER,FIFTYFOUR
      DESCRIPTION:   
      Patch DI*22.2*1 will repair VA FileMan 22.2 defects.
      
    • 9
      DATE APPLIED:   2019-03-01 14:05:36
      APPLIED BY:   USER,FIFTYFOUR
      DESCRIPTION:   
      This patch provides an option to map a VistA resource to a 
      File Name (#)               Field Name (#)      New/Modified/Deleted
       
       
      Installation Instructions:
      --------------------------
       1.  From the Kernel Installation and Distribution System (KIDS) Menu,
           select the Installation menu. 
       2.  Use Load a Distribution. You may need to precede the host file name
           with a directory name.
       3.  From the Kernel Installation and Distribution System Menu, select
           the Installation Menu.  From this menu, you may elect to use the
      -------------               --------------      -------------
           following options. When prompted for the INSTALL NAME, enter DI*22.2*9.
         a.  Backup a Transport Global - This option will create a backup message
             of any routines exported with this 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 this patch is installed.
             It compares all components of this patch.
         c.  Verify Checksums in Transport Global - This option will allow you to
             ensure the integrity of the routines that are in the transport global.
       4.  From the Installation Menu, select the Install Package(s) option and
      Entity (#1.5)                                   New
           when prompted for the INSTALL NAME, enter DI*22.2*9.
       5.  When prompted "Want KIDS to Rebuild Menu Trees Upon Completion of
           Install? NO//" enter NO.
       6.  When prompted "Want KIDS to INHIBIT LOGONs during the install? NO//"
           enter NO.
       7.  When prompted "Want to DISABLE Scheduled Options, Menu Options,
           and Protocols? NO//" enter NO.
       8.  If prompted "Delay Install (Minutes):  (0  60): 0//" enter 0.
       
       
       
      Example Install:
       
      Select OPTION NAME: XPD MAIN       Kernel Installation & Distribution System
       
         Edits and Distribution ...
         Utilities ...
         Installation ...
       
      Select Kernel Installation & Distribution System <TEST> Option: INstallation
       
      Form Name                    File #             New/Modified/Deleted
         1      Load a Distribution
         2      Verify Checksums in Transport Global
         3      Print Transport Global
         4      Compare Transport Global to Current System
         5      Backup a Transport Global
         6      Install Package(s)
                Restart Install of Package(s)
                Unload a Distribution
       
      Select Installation <TEST> Option: 1  Load a Distribution
      ---------                    ------             --------------------
      Enter a Host File: /srv/vista/oak/user/hfs/DI_222_9_VPR_1_8.KID
       
      KIDS Distribution saved on Oct 02, 2018@10:54:44
      Comment: Combined patches DI*22.2*9 and VPR*1*8
       
      This Distribution contains Transport Globals for the following Package(s):
         DI*22.2*9
         VPR*1.0*8
      Distribution OK!
       
      DDE ENTITY ENTER/EDIT        1.5                New
      Want to Continue with Load? YES// 
      Loading Distribution...
       
         DI*22.2*9
         VPR*1.0*8
      Use INSTALL NAME: DI*22.2*9 to install this Distribution.
       
         1      Load a Distribution
         2      Verify Checksums in Transport Global
         3      Print Transport Global
       
         4      Compare Transport Global to Current System
         5      Backup a Transport Global
         6      Install Package(s)
                Restart Install of Package(s)
                Unload a Distribution
       
       
      Select Installation <TEST> Option: 6  Install Package(s)
      Select INSTALL NAME: DI*22.2*9       Loaded from Distribution    10/2/18@12:43:4
      Option Name                  Type               New/Modified/Deleted
           => Combined patches DI*22.2*9 and VPR*1*8  ;Created on Oct 02, 2018@10:54
       
      This Distribution was loaded on Oct 02, 2018@12:43:47 with header of 
         Combined patches DI*22.2*9 and VPR*1*8  ;Created on Oct 02, 2018@10:54:44
         It consisted of the following Install(s):
            DI*22.2*9      VPR*1.0*8
      Checking Install for Package DI*22.2*9
       
      Install Questions for DI*22.2*9
       
      -----------                  ----               --------------------
      Incoming Files:
       
       
         1.5       ENTITY
       
      Want KIDS to Rebuild Menu Trees Upon Completion of Install? NO// 
       
      Checking Install for Package VPR*1.0*8
       
      Install Questions for VPR*1.0*8
      representation of a Summary Document Architecture (SDA) data type.
      Entity Enter/Edit            
       
      Incoming Files:
       
       
         560       VPR SUBSCRIPTION
       
      Want KIDS to Rebuild Menu Trees Upon Completion of Install? NO// 
       
       
      Want KIDS to INHIBIT LOGONs during the install? NO// 
      [DDE ENTITY ENTER/EDIT]      run routine        New
      Want to DISABLE Scheduled Options, Menu Options, and Protocols? NO// 
       
      Enter the Device you want to print the Install messages.
      You can queue the install by enter a 'Q' at the device prompt.
      Enter a '^' to abort the install.
       
      DEVICE: HOME//   NETWORK
       
       
       
      Entity Mapping             
      Post-Installation Instructions:
      -------------------------------
      None
       
       
      Backout and Rollback Procedure:
      -------------------------------
      During the VistA Installation Procedure of the KIDS build, the 
      installer should back up the modified routines by the use of the
      'Backup a Transport Global' action (step 3a in the Installations 
      [DDE ENTITY MAPPING]         menu               New
      Instructions below).
       
      If rollback/backout is required, the installer can use the MailMan
      message to restore the routines to previous state. 
       
      To backout the ENTITY (#1.5) file and DDE EDIT ENTITY input template, use 
      the EN^DIU2 API. Caution should be taken when using this API. For more 
      information on usage of this API see FileMan 22.2 Developer Guide. The
      following is an example execution to remove files and input template:
       
      Other Options[DIOTHER]       menu               Modified
      S DIU=1.5,DIU(0)="DT" D EN^DIU2
       
      To rollback/backout DDE options exported with this patch, may be disabled
      by using VA FileMan to assign an Out of Order message as follows:
       
      VA FileMan 22.2
       
       
      Select OPTION: 1  ENTER OR EDIT FILE ENTRIES
       
       
       
      Input to what File: OPTION//              (11330 entries)
      EDIT WHICH FIELD: ALL// OUT OF ORDER MESSAGE  
      THEN EDIT FIELD: 
       
       
      Select OPTION NAME: Entity Mapping       DDE ENTITY MAPPING
      OUT OF ORDER MESSAGE: ROLLBACK PATCH DI*22.2*9
       
      Select OPTION NAME: 
       
       
      To rollback/backout DDE form exported with this patch, use VA FileMan
      [DDS DELETE A FORM] option as follows:
       
      VA FileMan 22.2
       
       
      Select OPTION: OTHER OPTIONS  
      Select OTHER OPTION: SCREENMAN  
      Select SCREENMAN OPTION: DELETE A FORM  
      Input Template               File #             New/Modified/Deleted
       
      Delete Form for what File: OPTION// ENTITY    (2 entries)
       
      Select FORM to delete: DDE ENTITY ENTER/EDIT  DDE ENTITY ENTER/EDIT
               #165    3/6/18                 File #1.5
       
       
        BLOCKS USED ON FORM "DDE ENTITY ENTER/EDIT" (IEN #165)
       
       Internal                                        Used on
      --------------               ------             --------------------
       Entry Number    Block Name                      Other Forms?  Deletable?
       ------------    -------------                   ------------  ----------
        602            DDE ENTITY HEADER                    NO            YES
        603            DDE ENTITY 1                         NO            YES
        604            DDE ITEMS                            NO            YES
        605            DDE ENTITY 2                         NO            YES
        606            DDE ENTITY 3                         NO            YES
        607            DDE ITEM FIXED                       NO            YES
        608            DDE ITEM ID                          NO            YES
        609            DDE ITEM SIMPLE                      NO            YES
      DDE EDIT ENITY               1.5                New
        610            DDE ITEM WORD PROC                   NO            YES
        611            DDE ITEM COMPLEX                     NO            YES
        612            DDE ITEM ENTITY                      NO            YES
        613            DDE ITEM LIST                        NO            YES
        614            DDE COMPLEX LIST                     NO            YES
        615            DDE LIST FILE                        NO            YES
        616            DDE LIST COMPLEX                     NO            YES
        617            DDE LIST COMPLEX ITEMS               NO            YES
       
       
       
       
      Delete all deletable blocks used on form DDE ENTITY ENTER/EDIT
      from the BLOCK file (Y/N)? YES// 
       
       
      Delete blocks without prompting (Y/N)? NO// y  YES
       
      Continue (Y/N)? NO// YES
       
      Deleting form DDE ENTITY ENTER/EDIT (IEN #165) ...
       
       
      Deleting block DDE ENTITY HEADER (IEN #602) ...
      Deleting block DDE ENTITY 1 (IEN #603) ...
      Deleting block DDE ITEMS (IEN #604) ...
      Deleting block DDE ENTITY 2 (IEN #605) ...
      Deleting block DDE ENTITY 3 (IEN #606) ...
      Deleting block DDE ITEM FIXED (IEN #607) ...
      Deleting block DDE ITEM ID (IEN #608) ...
      Deleting block DDE ITEM SIMPLE (IEN #609) ...
      Deleting block DDE ITEM WORD PROC (IEN #610) ...
      Deleting block DDE ITEM COMPLEX (IEN #611) ...
      Blood Bank Clearance:
      Deleting block DDE ITEM ENTITY (IEN #612) ...
      Deleting block DDE ITEM LIST (IEN #613) ...
      Deleting block DDE COMPLEX LIST (IEN #614) ...
      Deleting block DDE LIST FILE (IEN #615) ...
      Deleting block DDE LIST COMPLEX (IEN #616) ...
      Deleting block DDE LIST COMPLEX ITEMS (IEN #617) ...
       
      DONE!
       
       
      ---------------------
      Routine Information:
      ====================
       
      The second line of each of these routines now looks like:
       ;;22.2;VA FileMan;**[Patch List]**;Jan 05, 2016;Build 46
       
      The checksums below are new checksums, and
       can be checked with CHECK1^XTSUMBLD.
       
      Routine Name: DDE
      EFFECT ON BLOOD BANK FUNCTIONAL REQUIREMENTS: Patch DI*22.2*9 contains
          Before:       n/a   After:  B4683326  **9**
      Routine Name: DDE1A
          Before:       n/a   After:   B737990  **9**
      Routine Name: DDEG
          Before:       n/a   After:B122631592  **9**
      Routine Name: DDEGET
          Before:       n/a   After: B10359109  **9**
      Routine Name: DDEMAP
          Before:       n/a   After: B44771305  **9**
      Routine Name: DDEOPT
      changes to a package referenced in ProPath standard titled: BBM Team
          Before:       n/a   After:   B794105  **9**
      Routine Name: DDERR
          Before:       n/a   After:   B683652  **9**
      Routine Name: DDEX
          Before:       n/a   After:  B1026050  **9**
      Routine Name: DII1
          Before:  B2240976   After:  B2361298  **8,10,9**
       
      Routine list of preceding patches: 10
      Review of VistA Patches. This patch does not alter or modify any VistA
      Blood Bank software design safeguards or safety critical elements
      functions.
       
      The patch includes a new ENTITY (#1.5) file.  The ENTITY file defines 
      RISK ANALYSIS: Changes made by patch DI*22.2*9 have no effect on Blood
      Bank software functionality, therefore RISK's none. 
       
       
      Test Sites:
      -----------
      Charleston, SC
      North Chicago, IL
       
      Software and Documentation Retrieval Instructions:
      the VistA resource being mapped to an SDA type.
      -------------------------------------------------- 
      Software is being released as a host file and documentation describing
      the new functionality introduced by this patch is available.
       
      The preferred method is to retrieve files from download.vista.domain.ext.
      This transmits the files from the first available server. Sites may 
      also elect to retrieve files directly from a specific server. 
      Sites may retrieve the software and/or documentation directly using 
      Secure Transfer Protocol (SFTP) from the ANONYMOUS.SOFTWARE directory 
      at the following OI Field Offices:
       
         
      Hines:                  fo-hines.domain.ext    
      Salt Lake City:         fo-slc.domain.ext
       
      Software                  File Name                   SFTP Mode
      ----------------------------------------------------------------------
      VPR*1*8 & DI*22.2*9       DI_222_9_VPR_1_8.KID        ASCII
       
       
      Documentation can also be found on the VA Software Documentation Library 
      Patch Components:
      at: http://www.domain.ext/vdl/ 
       
      Title                          File Name                 SFTP Mode
      -----------------------------------------------------------------------
      FileMan 22.2 Technical Manual  FM22_2TM.PDF              Binary
       
       
      Patch Installation:
      -------------------
      Software is being released as a host file, DI_222_9_VPR_1_8.KID.  The host
      -----------------
      file contains two patches; DI*22.2*9 and VPR*1*8.
       
      Patches DI*22.2*9 and VPR*1*8 are scheduled to be released nationally as a
      bundle.  Installation of these patches into Production within the first 15
      days from the National Release date is requested. The VA leadership has asked
      for an expedited release to comply with the schedule for the high profile
      Mission Act.  Certain functionality has to be loaded into production in 130
      VA Medical Centers within a short timeframe.  We appreciate your cooperation.
       
       
       
      Pre-Installation Instructions:
      ------------------------------
      This patch may be installed with users on the system although it is
      recommended that it be installed during non-peak hours to minimize
      potential disruption to users.  This patch should take less than
      2 minutes to install.
       
      NOTE: This patch was created with VA FileMan 22.2, so please ensure
      the target system has also been upgraded to this version, otherwise
      installation will fail.
      
    • 14 SEQ #11
      DATE APPLIED:   2019-07-08 09:46:16
      APPLIED BY:   USER,SIXTYFIVE
      DESCRIPTION:   
       
      ===========
        results
       Resolution:
        Change to DICOMP0 to handle variable pointers correctly
       
      10.  Ticket:   I16902120FY18
       Problem:
        If the variable %DT(0) is defined when an Input Transform is executed,
        it causes incorrect information
       Resolution:
        Change DICN to new the variable before executing the Input Transform
       This patch corrects twelve issues with VA FileMan 22.2.  These issues where
       
      11.  Ticket:   I17417683FY18, I10449501FY16
       Problem:
        Audit is not recording changes if it happens during a trigger to another
        file
       Resolution:
        The problem is the DA variable is changed.  Change DICR to save the DA
        array and other variables before auditing and then restore the variables
       
      12.  Ticket:   R15604177FY17
       discovered at sites that have installed VA FileMan 22.2 and DI*22.2*10.
       Problem:
        If the records being transferred is in a file that contain a multiple field
        that uses DINUM in the Input Transform, then FileMan stacks the DA array,
        but never unstacks it when it tries to delete the record
       Resolution:
        Change DIT0 to reset DA to the correct record before deleting
       
        
      Test Sites:
      -----------
       
       
       
       
      Software and Documentation Retrieval Instructions:
      -------------------------------------------------- 
      Software is being released as a host file and documentation describing
      the new functionality introduced by this patch is available.
       
      The preferred method is to retrieve files from download.vista.domain.ext.
      This transmits the files from the first available server. Sites may 
       
      also elect to retrieve files directly from a specific server. 
      Sites may retrieve the software and/or documentation directly using 
      Secure Transfer Protocol (SFTP) from the ANONYMOUS.SOFTWARE directory 
      at the following OI Field Offices:
         
      Hines:                  fo-hines.domain.ext    
      Salt Lake City:         fo-slc.domain.ext
       
       
      Documentation can also be found on the VA Software Documentation Library 
      Patch Components:
      at: http://www.domain.ext/vdl/ 
       
      Title                          File Name                 SFTP Mode
      -----------------------------------------------------------------------
      FileMan 22.2 Technical Manual  FM22_2TM.PDF              Binary
       
       
      Patch Installation:
         
      Pre-Installation Instructions:
      -----------------
      ------------------------------
      This patch can be queued for installation.  TaskMan does not have to be
      stopped, Health Level 7 (HL7) filers do not need to be stopped, and
      users may be on the system.  The patch should be installed during
      non-peak hours to minimize potential for disruption to users.  This
      patch should take less than 1 minute to install.
       
       
      Installation Instructions:
      --------------------------
       
      1. Choose the MailMan message containing this patch.
       
      2. Choose the INSTALL/CHECK MESSAGE PackMan option.  
       
      3. From the Kernel Installation and Distribution System Menu, select
         the Installation Menu.  From this menu, you may elect to use the
         following options. When prompted for the INSTALL NAME enter
         DI*22.2*10.
       a. Print Transport Global - This option lets you print the contents
          of a Transport Global that is currently loaded in the ^XTMP
      File Name (#)                Field Name (#)      New/Modified/Deleted
          global.
       b. Backup a Transport Global - This option will create a backup
          message of any routines exported with this patch. It will not
          backup any other changes such as functions.
       c. Compare Transport Global to Current System - This option will
          allow you to view all changes that will be made when this patch
          is installed.  It compares all components of this patch
          (routines, DDs, templates, etc.).
       d. Verify Checksums in Transport Global - This option will allow
          you to ensure the integrity of the routines that are in the
      -------------                --------------      -------------
          transport global.
       
      4. From the Installation Menu, select the Install Package(s) option
         and when prompted for the INSTALL NAME, enter DI*22.2*14.
       
      5. If prompted 'Want KIDS to Rebuild Menu Trees Upon Completion of
         Install? NO//' respond NO.
       
      7. When prompted "Want KIDS to INHIBIT LOGONs during the install?
         NO//" respond NO.
      Associated patches: DI*22.2*13
      AUDIT (#1.1)                 OLD VALUE (2)       Modified
       
      8. If prompted "Want to DISABLE Scheduled Options, Menu Options, 
         and Protocols? NO//" respond NO. 
       
      9. If prompted "Delay Install (Minutes):  (0 - 60): 0//" respond 0.
       
       
      Post-Installation Instructions:
      -------------------------------
      You need to run EN^DI14POST to check for bad nodes on multiples.  This
                                   NEW VALUE (3)
      is issue #8.  The routine will find all bad nodes and prompt you to fix
      them.  The results will be kept in the ^XTMP("DI14") global for 30 days,
      unless you run the report again, and can be reversed by using the 
      RESTORE^DI14POST call.
       
        
      Backout and Rollback Procedure:
      -------------------------------
      This patch consists of routines and a fix to the AUDIT file. During the VistA
      Installation Procedure of the KIDS build, the installer should back up the
       
      modified routines by the use of the 'Backup a Transport Global' action
      (step 3b in the Installations Instructions below).
       
      If rollback/backout is required, the installer can restore the routines
      using the MailMan message that were saved prior to installing the
      patch.  The changes to the two fields in the AUDIT file can remain.
       
       
      Routine Information:
      ====================
       
      The second line of each of these routines now looks like:
       ;;22.2;VA FileMan;**[Patch List]**;Jan 05, 2016;Build 2
       
      The checksums below are new checksums, and
       can be checked with CHECK1^XTSUMBLD.
       
      Routine Name: DI14POST
          Before:       n/a   After:  B9063359  **14**
      Routine Name: DICN
          Before: B21480119   After: B21929121  **2,5,13,14**
       
      Routine Name: DICOMP0
          Before: B23489999   After: B27698020  **2,14**
      Routine Name: DICR
          Before: B25667667   After: B26163162  **14**
      Routine Name: DIDH1
          Before: B22350242   After: B23605706  **14**
      Routine Name: DIDT
          Before: B25746733   After: B26129943  **14**
      Routine Name: DIEZ
          Before: B23918443   After: B24336790  **14**
      Blood Bank Clearance:
      Routine Name: DIFROMS2
          Before: B45453261   After: B51495195  **3,5,14**
      Routine Name: DINIT20
          Before: B30255167   After: B30371045  **2,14**
      Routine Name: DINIT2A4
          Before: B37901832   After: B37907044  **14**
      Routine Name: DIP1
          Before: B36571552   After: B36617181  **14**
      Routine Name: DIQ1
          Before:  B9302112   After:  B9407505  **14**
      ---------------------
      Routine Name: DIT0
          Before:  B5572177   After:  B5692057  **14**
       
      Routine list of preceding patches: 13
       
      Please see the description on Forum
      2/5/2019
      EFFECT ON BLOOD BANK FUNCTIONAL REQUIREMENTS: Patch DI*22.2*14 contains
      changes to a package referenced in ProPath standard titled: BBM Team
       
      Review of VistA Patches. 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.2*14 have no adverse effect on
      Blood Bank software functionality, therefore RISK is none. 
       
       
      Defect Tracking System Ticket(s) & Overview:
      --------------------------------------------
      Subject:  BUG FIXES TO VA FILEMAN
      1.  Ticket:   I12133765FY17
       Problem:
        Sort templates don't show previous values when editing the template
       Resolution:
        Change DIP1 to display previous value
       
      2.  Ticket:   I10027710FY16
       Problem:
        Date utility, %DT, allows incorrect time.  Calling %DT with X=3160707.8
        should return Y=-1
       
       Resolution:
        Change DIDT to return Y=-1 if X contains an incorrect time. Post install
        routine DI14POST will resave DIDT as %DT.
       
      3.  Ticket:   R13378947FY17
       Problem:
        Can't print OLD VALUE (#2) and NEW VALUE (#3) fields from AUDIT (#1.1) file
       Resolution:
        Change the logic in the computed fields #2 and #3.  Replace If statement
        with $Select.  Also, change DINIT20, which sets the logic when FileMan
      Category:  ROUTINE
        is initialized.
       
      4.  Ticket:   INC3327007
       Problem:
        Add APPLICATION GROUP to Data Dictionary List File Attributes option
       Resolution:
        Change DIDH1 to display APPLICATION GROUP
       
      5.  Ticket:   INC1570061
       Problem:
                 DATA DICTIONARY
        Maximum length of new style cross reference is too short
       Resolution:
        Change MAXIMUM LENGTH (#6) field in INDEX (#.11) file from 240 to 999.
        Add change to DI14POST and DINIT2A4
       
      6.  Ticket:   INC1550303
       Problem:
        Undefined error when doing an Inquire to a file that has a computed field
        that calls EN^DIQ1
       Resolution:
       
        Change DIQ1 to new the variables C and DI at tag EN
       
      7.  Ticket:   I16938507FY18
       Problem:
        The variable DISYS is undefined when calling EN^DIEZ in background
       Resolution:
        Move the call to DT^DICRW to earlier in the routine.  It sets DISYS.
       
      8.  Ticket:   I17087603FY18
       Problem:
      Description:
        When a partial Data Dictionary containing a multiple is distributed using
        KIDS, the zero node of sub dictionary has the wrong first piece
       Resolution:
        Change DIFROMS2; comment out line that was setting the sub dictionary zero
        node incorrectly to fix the bug.  Post Install EN^DI14POST will check and
        correct any corrupted sub dictionaries.
       
      9.  Ticket:   INC0105488
       Problem:
        Queries for data that utilizes a variable pointer field could be missing
      
    • 16 SEQ #12
      DATE APPLIED:   2019-07-08 21:59:18
      APPLIED BY:   USER,SIXTYFIVE
    • 17 SEQ #13
      DATE APPLIED:   2019-08-15 16:14:50
      APPLIED BY:   USER,SIXTYFIVE
      DESCRIPTION:   
      Description:
       
       
      Post-Installation Instructions:
      -------------------------------
      none
        
        
      Backout and Rollback Procedure:
      ------------------------------- 
      If rollback/backout is required, the installer can restore the routines
      using the MailMan message that were saved prior to installing the
      none
      patch.
       
       
      Routine Information:
      ====================
      The second line of each of these routines now looks like:
       ;;22.2;VA FileMan;**[Patch List]**;Jan 05, 2016;Build 1
       
      The checksums below are new checksums, and
       can be checked with CHECK1^XTSUMBLD.
       
       
      Routine Name: DDEG
          Before:B128480515   After:B129431147  **9,16,17**
      Routine Name: DDEPRT
          Before: B48500922   After: B48600939  **16,17**
       
      Routine list of preceding patches: 16
       
       
      Blood Bank Clearance:
      ---------------------
      ?/??/2019
      EFFECT ON BLOOD BANK FUNCTIONAL REQUIREMENTS: Patch DI*22.2*17 contains
      changes to a package referenced in ProPath standard titled: BBM Team
      Review of VistA Patches. 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.2*17 have no adverse effect on
      Blood Bank software functionality, therefore RISK is none. 
       
       
      Defect Tracking System Ticket(s) & Overview:
      --------------------------------------------
      1. Problem:
      Patch 17 correct 2 issues that were discovered during pre-load
          Word processing and free text fields can contain control characters from
          the extended character set ($C values of 127 to 159)
         Resolution:
          Change DDEG to remove control characters
        
      2. Problem:
          Inquire to ENTITY file option doesn't display GROUP AS A LIST items.
         Resolution:
          Change DDEPRT to display GROUP AS A LIST items
       
      of the Veteran's Data Integration & Federation (VDIF) Qualifying
       
      Test Sites:
      -----------
      TBD
       
       
      Software and Documentation Retrieval Instructions:
      -------------------------------------------------- 
      Software is being released as a KIDS Build on Forum.
       
      Patient Query (QPQ) endeavor.
       
      Patch Installation:
        
      Pre-Installation Instructions:
      ------------------------------
      This patch can be queued for installation.  TaskMan does not have to be
      stopped, Health Level 7 (HL7) filers do not need to be stopped, and
      users may be on the system.  The patch should be installed during
      non-peak hours to minimize potential for disruption to users.  This
      patch should take less than 1 minute to install.
       
       
       
      Installation Instructions:
      --------------------------
      1. Choose the MailMan message containing this patch.
       
      2. Choose the INSTALL/CHECK MESSAGE PackMan option.  
       
      3. From the Kernel Installation and Distribution System Menu, select
         the Installation Menu.  From this menu, you may elect to use the
       
         following options. When prompted for the INSTALL NAME enter
         DI*22.2*17.
       a. Print Transport Global - This option lets you print the contents
          of a Transport Global that is currently loaded in the ^XTMP
          global.
       b. Backup a Transport Global - This option will create a backup
          message of any routines exported with this patch. It will not
          backup any other changes such as functions.
       c. Compare Transport Global to Current System - This option will
          allow you to view all changes that will be made when this patch
      Patch Components:
          is installed.  It compares all components of this patch
          (routines, DDs, templates, etc.).
       d. Verify Checksums in Transport Global - This option will allow
          you to ensure the integrity of the routines that are in the
          transport global.
       
      4. From the Installation Menu, select the Install Package(s) option
         and when prompted for the INSTALL NAME, enter DI*22.2*17.
       
      5. If prompted 'Want KIDS to Rebuild Menu Trees Upon Completion of
      -----------------
         Install? NO//' respond NO.
       
      6. When prompted "Want KIDS to INHIBIT LOGONs during the install?
         NO//" respond NO.
       
      7. If prompted "Want to DISABLE Scheduled Options, Menu Options, 
         and Protocols? NO//" respond NO. 
       
      8. If prompted "Delay Install (Minutes):  (0 - 60): 0//" respond 0.
       
      
    • 18 SEQ #14
      DATE APPLIED:   2020-10-21 10:05:39
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      Please see the description on Forum
      
    • 19b
      DATE APPLIED:   2021-05-26 00:00:00
      DESCRIPTION:   
      Backup of DI*22.2*19 on May 26, 2021
       
      Warning:  Installing this backup patch message will install older versions
      of routines and Build Components (options, protocols, templates, etc.).
      Please verify with the Development Team that it is safe to install.
      
    • 19 SEQ #15
      DATE APPLIED:   2021-05-26 09:01:51
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      Please see the description on Forum
      
    • 20 SEQ #16
      DATE APPLIED:   2021-10-27 11:12:24
      APPLIED BY:   USER,SEVENTEEN
      DESCRIPTION:   
      Please see Patch Description on Forum
      
    • 21 SEQ #17
      DATE APPLIED:   2022-04-19 17:42:52
      APPLIED BY:   USER,EIGHTYSIX
      DESCRIPTION:   
      Please see Patch Description on Forum
      
    • 22 SEQ #18
      DATE APPLIED:   2022-06-27 14:37:43
      APPLIED BY:   USER,EIGHTYSIX
    • 3 SEQ #2
      DATE APPLIED:   2016-10-14 13:52:48
      APPLIED BY:   USER,FIFTYFOUR
      DESCRIPTION:   
      Patch DI*22.2*3 will repair VA FileMan 22.2 defects.
      
    • 23 SEQ #19
      DATE APPLIED:   2022-11-23 17:17:35
      APPLIED BY:   USER,EIGHTYNINE
      DESCRIPTION:   
      Please see Patch Description on Forum
      
    • 24 SEQ #20
      DATE APPLIED:   2023-05-09 17:38:29
      APPLIED BY:   USER,EIGHTYNINE
      DESCRIPTION:   
      Please see Patch Description on Forum
      
    • 25 SEQ #21
      DATE APPLIED:   2023-10-16 15:49:03
      APPLIED BY:   USER,EIGHTYNINE
      DESCRIPTION:   
      Please see Patch Description on Forum.
      
    • 25b
      DATE APPLIED:   2023-11-22 10:12:20
      APPLIED BY:   USER,EIGHTYNINE
      DESCRIPTION:   
      Backup of DI*22.2*25 on Oct 16, 2023
       
      Warning:  Installing this backup patch message will install older versions
      of routines and Build Components (options, protocols, templates, etc.).
      Please verify with the Development Team that it is safe to install.
      
    • 26 SEQ #22
      DATE APPLIED:   2023-11-22 11:49:25
      APPLIED BY:   USER,EIGHTYNINE
      DESCRIPTION:   
      Please see Patch Description on Forum.
      
    • 27 SEQ #23
      DATE APPLIED:   2024-02-21 10:12:24
      APPLIED BY:   USER,EIGHTYNINE
      DESCRIPTION:   
      Please see Patch Description on Forum.
      
    • 4 SEQ #3
      DATE APPLIED:   2017-01-23 14:03:40
      APPLIED BY:   USER,FIFTYFOUR
      DESCRIPTION:   
      Patch DI*22.2*4 will repair VA FileMan 22.2 defects.
      
    • 2 SEQ #4
      DATE APPLIED:   2017-04-03 14:42:32
      APPLIED BY:   USER,FIFTYFOUR
      DESCRIPTION:   
      Extensible Data Types and Meta Data Dictionary enhancements
      
    • 7 SEQ #5
      DATE APPLIED:   2017-04-27 16:58:16
      APPLIED BY:   USER,FIFTYFOUR
      DESCRIPTION:   
      Please refer to the Description in Forum Patch Module for details.
      
    • 5 SEQ #6
      DATE APPLIED:   2017-07-26 13:04:54
      APPLIED BY:   USER,FIFTYFOUR
      DESCRIPTION:   
      Corrections for three defects in VA FileMan 22.2.
      
    • 8 SEQ #7
      DATE APPLIED:   2017-08-30 14:48:41
      APPLIED BY:   USER,FIFTYFOUR
      DESCRIPTION:   
      Please refer to the Description in Forum Patch Module for details.
      
    • 13 SEQ #8
      DATE APPLIED:   2017-10-05 12:23:20
      APPLIED BY:   USER,FIFTYFOUR
      DESCRIPTION:   
      Seven routines with corrections to five defects in VA FileMan 22.2
      
    • 10 SEQ #9
      DATE APPLIED:   2018-06-01 16:21:24
      APPLIED BY:   USER,FIFTYFOUR
      DESCRIPTION:   
      Patch DI*22.2*10 repairs the following defects:
      Patch Components:
       Modified DIEQ and added DO to kill statement at line Q
       
       4. Ticket R13102022FY17
       Problem:
       --------
       Need API to repoint a deleted value in a record, similar to what happens
        when a pointer field value is deleted.
       
       Resolution:
       ----------
      ----------------- 
       Modified DITP and added tag EN(file, list) where file=file number,
       list= array containing list of entries to be repointed(Passed by Reference)
       
       5. Ticket R14175506FY17
       Problem:
       --------
       New options that were for adding new data types and released as part of
       patch DI*22.2*2 had no parent menu.  These option were not meant for
       general distribution.  The options are: DI DATA TYPE OPTIONS,
        DI DATA TYPE FILE, DI DATA TYPE METHOD FILE, and
       Files & Fields Associated:
        DI DATA TYPE PROPERTY FILE.
       
       Resolution:
       ----------
       All four options will be deleted from the OPTION file and added to the
       hard coded options in the DII routine.  Modified DII1 and DIFMEDT1
       routines.
      
       6. No ticket
       Problem:
                                                                   New/Modified/
       --------
       Developer needs API to check what entries points to a particular record
        in a file.
      
       Resolution:
       ----------
       CHKPT^DIUTL(file, ien, message).
       ;INPUT: DIFILE=file number, DA=ien of record, DIMSG=closed global root
        or local array
       ;OUTPUT: DIMSG(0)=line count, DISMG(#)="Entry ien in FILE (file #)
      File Name (#)                  Field Name (#)                       Deleted
        refers to record DA" 
      
       Blood Bank Clearance:
       ---------------------
       EFFECT ON BLOOD BANK FUNCTIONAL REQUIREMENTS: Patch DI*22.2*10 contains
       changes to a package referenced in ProPath standard titled: BBM Team Review
       of VistA Patches. 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.2*10 have no effect on Blood Bank
      -------------                  --------------                  -------------
       software functionality, therefore RISK is none.
      
      
      Test Sites:
      -----------
       Charleston
       West Palm Beach
       
       
      Software and Documentation Retrieval Instructions:
       N/A
      -------------------------------------------------- 
      Documentation describing the new api, EN^DITP, can be found in the
      FM 22.2 Developer's Guide
       
      Current documentation is on the VA Software Documentation Library 
      at: http://www.domain.ext/vdl/ 
       
      Title                                File Name          SFTP Mode
      -----------------------------------------------------------------
      FM 22.2 Developer's Guide              fm22_2dg.PDF    Binary
       
      FM 22.2 User Manual                    fm22_2um1.PDF   Binary
      FM 22.2 Advanced User Manual           fm22_2um2.PDF   Binary
      FM 22.2 Technical Manual               fm22_2tm.PDF    Binary
       
       
      Backout and Rollback Procedure:
      -------------------------------
      This patch only consists of routines. During the VistA Installation
      Procedure of the KIDS build, the installer should back up the modified routines by the use of the 'Backup a Transport Global' action
      (step 3b in the Installations Instructions below).
      Forms Associated:
       
      If rollback/backout is required, the installer can restore the routines
      using the MailMan message that were saved prior to installing the
      patch.
       
       
      Patch Installation:
       
        
      Pre-Installation Instructions:
       
      ------------------------------
      This patch can be queued for installation.  TaskMan does not have to be 
      stopped, HL7 filers do not need to be stopped, and users may be on the 
      system.  The patch should be installed during non-peak hours to minimize
      potential for disruption to users.  This patch should take less than 1 
      minute to install.
       
       
      Installation Instructions:
      --------------------------
       1.     DIWP only supports strings up to 999 characters
      Form Name                     File #               New/Modified/Deleted
      1.  Choose the MailMan message containing this patch.
       
      2.  Choose the INSTALL/CHECK MESSAGE PackMan option.  
       
      3.  From the Kernel Installation and Distribution System Menu, select
          the Installation Menu.  From this menu, you may elect to use the
          following options. When prompted for the INSTALL NAME enter DI*22.2*10.
       a.     Print Transport Global - This option lets you print the contents
              of a Transport Global that is currently loaded in the ^XTMP
              global.
      ---------                     ------               --------------------
       b.     Backup a Transport Global - This option will create a backup
              message of any routines exported with this patch. It will not
              backup any other changes such as functions.
       c.     Compare Transport Global to Current System - This option will
              allow you to view all changes that will be made when this patch
              is installed.  It compares all components of this patch
              (routines, DDs, templates, etc.).
       d.     Verify Checksums in Transport Global - This option will allow
              you to ensure the integrity of the routines that are in the
              transport global.
       N/A
       
      4.  From the Installation Menu, select the Install Package(s) option and
          When prompted for the INSTALL NAME, enter DI*22.2*10.
       
      5.  If prompted 'Want KIDS to Rebuild Menu Trees Upon Completion of
          Install? NO//' respond NO.
       
      7.  When prompted "Want KIDS to INHIBIT LOGONs during the install?
          NO//" respond NO.
       
       
      8.  If prompted "Want to DISABLE Scheduled Options, Menu Options, 
          and Protocols? NO//" respond NO. 
       
      9.  If prompted "Delay Install (Minutes):  (0 - 60): 0//" respond 0.
       
       
      Post-Installation Instructions:
      -------------------------------
      none
       
      Mail Groups Associated:
       
       
      Mail Group Name          New/Modified/Deleted
      ---------------          --------------------
       N/A                       
       
       2.     NUMDATE fix in patch 7 was not added to DINIT
      Options Associated:
       
      Option Name                    Type               New/Modified/Deleted
      -----------                    ----               -------------------- 
       DI DATA TYPE OPTIONS          Menu               Deleted
       DI DATA TYPE FILE             Run Routine        Deleted
       DI DATA TYPE METHOD FILE      Run Routine        Deleted
       DI DATA TYPE PROPERTY FILE    Run Routine        Deleted
       
       
       3.     The variable DO is not killed after call to DIE
      Protocols Associated:
       
      Protocol Name       New/Modified/Deleted
      -------------       -------------------- 
       N/A
       
      Security Keys Associated:
       
      Security Key Name
      -----------------
       4.     New api EN^DITP for repointing deleted records
       N/A
       
      Templates Associated:
       
      Template Name   Type      File Name        (Number)  New/Modified/Deleted
      -------------   ----      -------------------------  --------------------
       N/A
       
      Additional Information:
      -----------------------
       5.     New options for editing Data Types in patch 2 have no parent
       N/A
       
      New Service Requests (NSRs):
      ----------------------------  
       N/A
       
      Patient Safety Issues (PSIs):
      -----------------------------
       N/A
       
       6.     New API CHKPT^DIUTL(file, ien, message)
      Defect Tracking System Ticket(s) & Overview:
      --------------------------------------------
       1. Ticket I13413576FY17
       Problem:
       --------
       Word Processing cannot parse a string greater than 999 and the FM 22.2
       allows strings up to 4K characters.
       
       Resolution:
       ----------
      
       Modified DIWP and changed 999 to 9999
       
       2. Ticket I15917948FY17
       Problem:
       --------
       Patch DI*22.2*7 fixed the NUMDATE function in the FUNCTION file #.5,
        but DINIT restored the old function.
       
       Resolution:
       ----------
        
       Modified DINIT4 and added fix to NUMDATE
       
       3. Ticket I16009474FY17
       Problem:
       --------
       The variable DO is not killed after a call to DIE if a user asked for
        help in a multiple Date field.
      
       Resolution:
       ----------
      
    DATE INSTALLED AT THIS SITE:   2024-03-13 00:00:00
    INSTALLED BY:   USER,FIFTYFOUR
    DESCRIPTION OF ENHANCEMENTS:   
    This Build file entry contains the Options, Security Keys, and Remote
    Procedures used by VA FILEMAN 22.2.