[641] | 1 | XBGXREFS(FILE,FIELD,ROOT) ; IHS/ADC/GTH - GET XREFS FOR ONE FIELD IN ONE FILE ; [ 02/07/97 3:02 PM ]
|
---|
| 2 | ;;4.0;XB;;Jul 20, 2009;Build 2
|
---|
| 3 | ;
|
---|
| 4 | ; ATTENTION PROGRAMMERS: Do not use line one for entry.
|
---|
| 5 | ; Use label XREF for entry.
|
---|
| 6 | ;
|
---|
| 7 | ; Given a file/subfile number, a field number, and a variable
|
---|
| 8 | ; from which to assign subscripted values, this routine will
|
---|
| 9 | ; return the xrefs for the specified field.
|
---|
| 10 | ;
|
---|
| 11 | ; The returned xrefs will be subscripted from the ROOT as
|
---|
| 12 | ; follows:
|
---|
| 13 | ;
|
---|
| 14 | ; ROOT(FIELD,n) = file/subfile^xref (e.g. 9000010^AC)
|
---|
| 15 | ; ROOT(FIELD,n,"K") = executable kill logic
|
---|
| 16 | ; ROOT(FIELD,n,"S") = executable set logic
|
---|
| 17 | ;
|
---|
| 18 | ; Formal list:
|
---|
| 19 | ;
|
---|
| 20 | ; 1) FILE = file or subfile number (call by value)
|
---|
| 21 | ; 2) FIELD = field number (call by value)
|
---|
| 22 | ; 3) ROOT = array root (call by reference)
|
---|
| 23 | ;
|
---|
| 24 | G START
|
---|
| 25 | ;
|
---|
| 26 | XREF(FILE,FIELD,ROOT) ;PEP - Return x-ref info for a field.
|
---|
| 27 | ;
|
---|
| 28 | START ;
|
---|
| 29 | NEW Y
|
---|
| 30 | 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)
|
---|
| 31 | Q
|
---|
| 32 | ;
|
---|