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