Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: DIPR89

DIPR89.m

Go to the documentation of this file.
  1. DIPR89 ;SFISC/SO-PRE INSTALL ROUTINE FOR PATCH DI*22.0*89 ;5:23 AM 2 Feb 2002
  1. ;;22.0;VA FileMan;**89**;Mar 30, 1999;Build 1
  1. ;Per VHA Directive 10-93-142, this routine should not be modified.
  1. ;Utility to follow up patch DI*22*83
  1. ;Check for field whose type are Pointer and Set Of Codes
  1. ;whose $P#3 was has been corrupted and report them out for maual
  1. ;correction.
  1. ;Reference NOIS: BRX-1001-12770, Note #7 for replication and 'how
  1. ;to' manually correct.
  1. S X="Check for corrupted 3rd piece, Type: Pointer or Set Of Codes."
  1. D MES^XPDUTL(X)
  1. S X="Checking..."
  1. D MES^XPDUTL(X)
  1. ;
  1. S ; Start testing
  1. N DDFILE,NOERR
  1. S NOERR=0
  1. S DDFILE=1.99999
  1. F S DDFILE=$O(^DD(DDFILE)) Q:'DDFILE D
  1. . N DDFIELD
  1. . S DDFIELD=0
  1. . F S DDFIELD=$O(^DD(DDFILE,DDFIELD)) Q:'DDFIELD D
  1. . . N NODE
  1. . . S NODE=$G(^DD(DDFILE,DDFIELD,0))
  1. . . I $P(NODE,U,3)]"" Q ;No corruption here
  1. . . I $P(NODE,U,2)'["P",$P(NODE,U,2)'["S" Q ;Something other than a Pointer or Set Of Codes Field
  1. . . ;Piece #3 of the DD node is Null & the field type is a Pointer or Set Of Codes
  1. . . I +$P(NODE,U,2) Q ;We are looking at a Multiple
  1. . . S NOERR=1
  1. . . N X
  1. . . S X=">>File/Subfile: "_DDFILE
  1. . . D MES^XPDUTL(X)
  1. . . S X=" Field: #"_DDFIELD_"("_$P(NODE,U)_") Type: "_$S($P(NODE,U,2)["P":"Pointer",$P(NODE,U,2)["S":"Set",1:"")
  1. . . D MES^XPDUTL(X)
  1. . . S X=" Node="_NODE
  1. . . D MES^XPDUTL(X)
  1. I 'NOERR S X="No problems found" D MES^XPDUTL(X)
  1. Q