| 1 | DITMU3(FILE,FIELD,ROOT) ;SFISC/EDE(OHPRD)-GET XREFS FOR ONE FIELD IN ONE FILE/SUBFILE ; | 
|---|
| 2 | ;;22.0;VA FileMan;;Mar 30, 1999 | 
|---|
| 3 | ;Per VHA Directive 10-93-142, this routine should not be modified. | 
|---|
| 4 | ; | 
|---|
| 5 | ; Given a file/subfile number, a field number, and a variable | 
|---|
| 6 | ; from which to assign subscripted values, this routine will | 
|---|
| 7 | ; return the xrefs for the specified field. | 
|---|
| 8 | ; | 
|---|
| 9 | ; The returned xrefs will be subscripted from the ROOT as follows: | 
|---|
| 10 | ; | 
|---|
| 11 | ;  ROOT(FIELD,n)     = file/subfile^xref (e.g. 9000010^AC) | 
|---|
| 12 | ;  ROOT(FIELD,n,"K") = executable kill logic | 
|---|
| 13 | ;  ROOT(FIELD,n,"S") = executable set logic | 
|---|
| 14 | ; | 
|---|
| 15 | ; Formal list: | 
|---|
| 16 | ; | 
|---|
| 17 | ; 1)  FILE   = file or subfile number (call by value) | 
|---|
| 18 | ; 2)  FIELD  = field number (call by value) | 
|---|
| 19 | ; 3)  ROOT   = array root (call by reference) | 
|---|
| 20 | ; | 
|---|
| 21 | START ; | 
|---|
| 22 | NEW Y | 
|---|
| 23 | F Y=0:0 S Y=$O(^DD(FILE,FIELD,1,Y)) Q:Y'=+Y  S ROOT(FIELD,Y)=^(Y,0),ROOT(FIELD,Y,"S")=^(1),ROOT(FIELD,Y,"K")=^(2) | 
|---|
| 24 | Q | 
|---|