[613] | 1 | VAFHLFNC ;ALB/MLI - Generic functions for MAS HL7 Interface ; 27 Feb 93
|
---|
| 2 | ;;5.3;Registration;**33,122**;Aug 13, 1993
|
---|
| 3 | ;
|
---|
| 4 | ; This routine contains generic MAS functions used to interface with
|
---|
| 5 | ; the DHCP HL7 package
|
---|
| 6 | ;
|
---|
| 7 | ADDR(VAFADDR,VAFCOUNT) ; returns address in HL7 format
|
---|
| 8 | ;
|
---|
| 9 | ; NOTE: THIS MAY BE REPLACED WITH AN HL7 CALL IN THE FUTURE
|
---|
| 10 | ;
|
---|
| 11 | ; Input - VAFADDR as address in format:
|
---|
| 12 | ; line1^line2^line3^city^state^zip
|
---|
| 13 | ; VAFCOUNT as internal value of county (optional)
|
---|
| 14 | ;
|
---|
| 15 | ; ****Also assumes all HL7 variables returned from****
|
---|
| 16 | ; INIT^HLTRANS are defined
|
---|
| 17 | ;
|
---|
| 18 | ; Output - HL7 formated Address_HLFS_County Code (if requested)
|
---|
| 19 | ;
|
---|
| 20 | N X,Y
|
---|
| 21 | S X=$E(HLECH) ; first component separator
|
---|
| 22 | S $P(Y,X,1)=$P(VAFADDR,"^",1) ; line 1
|
---|
| 23 | S $P(Y,X,2)=$P(VAFADDR,"^",2)_$S($P(VAFADDR,"^",3)]"":" "_$P(VAFADDR,"^",3),1:"") ; lines 2 & 3
|
---|
| 24 | S $P(Y,X,3)=$P(VAFADDR,"^",4),$P(Y,X,5)=$P(VAFADDR,"^",6) ; city,zip
|
---|
| 25 | S $P(Y,X,4)=$P($G(^DIC(5,+$P(VAFADDR,"^",5),0)),"^",2) ; state abbr
|
---|
| 26 | I $G(VAFCOUNT) D ; county
|
---|
| 27 | .S $P(Y,HLFS,2)=$P($G(^DIC(5,+$P(VAFADDR,"^",5),1,+$G(VAFCOUNT),0)),"^",3)
|
---|
| 28 | .I $P(Y,HLFS,2)']"" S $P(Y,HLFS,2)=HLQ
|
---|
| 29 | I $P(Y,HLFS,1)=(X_X_X_X) S $P(Y,HLFS,1)=HLQ ; if no data...only component separator
|
---|
| 30 | Q Y
|
---|
| 31 | ;
|
---|
| 32 | ;
|
---|
| 33 | INS(DFN,VAFDT) ; call to see if pt has active insurance
|
---|
| 34 | ;
|
---|
| 35 | ; Input - DFN as internal entry number of PATIENT file
|
---|
| 36 | ; VAFDT [optional] as date to compute ins coverage for
|
---|
| 37 | ;
|
---|
| 38 | ; Output - 1 if yes, 0 if no
|
---|
| 39 | ;
|
---|
| 40 | INSQ Q $$INSURED^IBCNS1(DFN,$G(VAFDT))
|
---|
| 41 | ;
|
---|
| 42 | ;
|
---|
| 43 | YN(X) ; extrinsic function to convert YES/NO responses to 1/0
|
---|
| 44 | ; (format of MAS-HL7 table VA01)
|
---|
| 45 | ;
|
---|
| 46 | ; Input - X as value of DHCP yes/no field
|
---|
| 47 | ;
|
---|
| 48 | ; Output - 1 if yes, 0 if no, or "" otherwise
|
---|
| 49 | ;
|
---|
| 50 | S X=$TR($E(X),"Yy1Nn0","111000")
|
---|
| 51 | Q $S(X=1:X,X=0:0,1:HLQ)
|
---|
| 52 | ;
|
---|
| 53 | STATION(INSTPTR) ;
|
---|
| 54 | ;Description: Returns the facility number, including the suffix.
|
---|
| 55 | ;
|
---|
| 56 | ;Input:
|
---|
| 57 | ; INSTPTR - ien, record in the INSTITUTION file
|
---|
| 58 | ;Output:
|
---|
| 59 | ; Function value - If unsuccessful, returns NULL, otherwise the facility number, including suffix
|
---|
| 60 | ;
|
---|
| 61 | Q:'$G(INSTPTR) ""
|
---|
| 62 | Q $P($G(^DIC(4,INSTPTR,99)),"^",1)
|
---|