[613] | 1 | IBDFU1A ;ALB/CJM - ENCOUNTER FORM (read data field description);NOV 16,1992
|
---|
| 2 | ;;3.0;AUTOMATED INFO COLLECTION SYS;;APR 24, 1997
|
---|
| 3 | ;utilities
|
---|
| 4 | FLDDESCR(IBFLD) ;IBFLD should be a pointer to the IB DATA FIELD file
|
---|
| 5 | ;parses the 0 NODE and returns the fields
|
---|
| 6 | ;returns 1 if the field description is not found
|
---|
| 7 | N NODE
|
---|
| 8 | Q:'$G(IBFLD) 0
|
---|
| 9 | S:$G(IBFLD) NODE=$G(^IBE(357.5,IBFLD,0))
|
---|
| 10 | Q:NODE="" 0
|
---|
| 11 | S FLDNAME=$P(NODE,"^",1)
|
---|
| 12 | S BLK=$P(NODE,"^",2)
|
---|
| 13 | S RTN=$P(NODE,"^",3)
|
---|
| 14 | S LASTITEM=$P(NODE,"^",4)
|
---|
| 15 | S ITEM=+$P(NODE,"^",5)
|
---|
| 16 | S LABEL=$P(NODE,"^",6)
|
---|
| 17 | S DISPLAY=$P(NODE,"^",7)
|
---|
| 18 | S XIO=+$P(NODE,"^",10)
|
---|
| 19 | S YIO=+$P(NODE,"^",11)
|
---|
| 20 | S HIO=+$P(NODE,"^",12)
|
---|
| 21 | S SPACING=$P(NODE,"^",13)
|
---|
| 22 | S WIO=+$P(NODE,"^",14)
|
---|
| 23 | Q 1
|
---|
| 24 | SFLDDSCR(IBFLD,LAST) ;gets the next subfield - LAST is the last subfield processed, IBFLD is the field
|
---|
| 25 | ;outputs - LABEL,XIO,YIO,WIO,XLAB,YLAB,PIECE,LENGTH,LAST
|
---|
| 26 | ;returns 0 if no more subfields, LAST otherwise
|
---|
| 27 | ;
|
---|
| 28 | N NODE
|
---|
| 29 | F S LAST=$O(^IBE(357.5,IBFLD,2,LAST)) Q:'LAST S NODE=$G(^IBE(357.5,IBFLD,2,LAST,0)) I NODE'="" D Q
|
---|
| 30 | .S LABEL=$P(NODE,"^",1),DISPLAY=$P(NODE,"^",3),XLAB=$P(NODE,"^",4),YLAB=$P(NODE,"^",5),YIO=$P(NODE,"^",6),XIO=$P(NODE,"^",7),WIO=$P(NODE,"^",8),PIECE=$P(NODE,"^",9)
|
---|
| 31 | Q LAST
|
---|