57 lines
2.0 KiB
Mathematica
57 lines
2.0 KiB
Mathematica
|
IBDFN6 ;ALB/CJM - ENCOUNTER FORM - INTERFACE ROUTINES ;NOV 16,1992
|
||
|
;;3.0;AUTOMATED INFO COLLECTION SYS;;APR 24, 1997
|
||
|
ADDRESS ;returns address, telephone
|
||
|
;input variables - DFN
|
||
|
N ARY,CNT,LINE S CNT=1
|
||
|
S ARY="^TMP(""IB"",$J,""INTERFACES"",+$G(DFN))"
|
||
|
D ADD^VADPT
|
||
|
I VAERR S (@ARY@("DPT PATIENT ADDRESS LINES"),@ARY@("DPT PATIENT'S TELEPHONE NUMBER"),@ARY@("DPT PATIENT SHORT ADDRESS"))="" Q
|
||
|
I VAPA(1)'="" S @ARY@("DPT PATIENT ADDRESS LINES",CNT)=VAPA(1),CNT=CNT+1
|
||
|
I VAPA(2)'="" S @ARY@("DPT PATIENT ADDRESS LINES",CNT)=VAPA(2),CNT=CNT+1
|
||
|
I VAPA(3)'="" S @ARY@("DPT PATIENT ADDRESS LINES",CNT)=VAPA(3),CNT=CNT+1
|
||
|
S @ARY@("DPT PATIENT ADDRESS LINES",CNT)=VAPA(4)_", "_$P(VAPA(5),"^",2)_" "_$P(VAPA(11),"^",2)
|
||
|
;
|
||
|
;short address
|
||
|
F CNT=1:1:3 S LINE=VAPA(CNT) Q:LINE'=""
|
||
|
S @ARY@("DPT PATIENT SHORT ADDRESS")=LINE_","_VAPA(4)_", "_$P(VAPA(5),"^",2)_" "_$P(VAPA(11),"^",2)
|
||
|
;
|
||
|
S @ARY@("DPT PATIENT'S TELEPHONE NUMBER")=VAPA(8)
|
||
|
K VAPA,VA,VAERR,VAEL
|
||
|
Q
|
||
|
;
|
||
|
INSURANC ;returns all sorts of insurance information
|
||
|
;input - DFN,ACT
|
||
|
;ACT="" to return all insurance, ACT=1 to return only active insurance, ACT=2 to return active insurance and insurance that will not reimburse (Medicare)
|
||
|
;
|
||
|
Q:'$G(DFN)
|
||
|
N NODE,SUB,ITEM,ENTRY,DATE,ARY,WHO
|
||
|
I $L($T(ALL^IBCNS1)) D
|
||
|
.S ARY="^TMP(""IBDF"",$J,""INSURANCE"")"
|
||
|
.K @ARY
|
||
|
.D ALL^IBCNS1(DFN,ARY,$G(ACT))
|
||
|
;
|
||
|
S SUB=0,ITEM=1,ENTRY="" F S SUB=$O(@ARY@(SUB)) Q:'SUB D
|
||
|
.S NODE=$G(@ARY@(SUB,0)) Q:NODE=""
|
||
|
.S:$P(NODE,"^") ENTRY=$P($G(^DIC(36,$P(NODE,"^"),0)),"^")
|
||
|
.S Y=$P(NODE,"^",4) I Y>0 D DD^%DT S $P(ENTRY,"^",2)=Y
|
||
|
.S $P(ENTRY,"^",3)=$P(NODE,"^",2)
|
||
|
.S $P(ENTRY,"^",4)=$P(NODE,"^",3)
|
||
|
.S $P(ENTRY,"^",5)=$P(NODE,"^",15)
|
||
|
.S $P(ENTRY,"^",6)=$P(NODE,"^",17)
|
||
|
.S WHO=$P(NODE,"^",6)
|
||
|
.S $P(ENTRY,"^",7)=$S(WHO="v":"APPLICANT",WHO="s":"SPOUSE",WHO="o":"OTHER",1:"")
|
||
|
.S @IBARY@(ITEM)=ENTRY
|
||
|
.S ITEM=ITEM+1
|
||
|
K @ARY
|
||
|
Q
|
||
|
;
|
||
|
INSURED ;is the patient insured?
|
||
|
;input - DFN
|
||
|
Q:'$G(DFN)
|
||
|
N INS S INS=""
|
||
|
;do it the new way?
|
||
|
I $L($T(INSURED^IBCNS1)) D
|
||
|
.S INS=$$INSURED^IBCNS1(DFN)
|
||
|
S @IBARY=$S(INS=1:"YES",INS=0:"NO",1:"UNKNOWN")
|
||
|
Q
|