| 1 | IBDFN6 ;ALB/CJM - ENCOUNTER FORM - INTERFACE ROUTINES ;NOV 16,1992 | 
|---|
| 2 | ;;3.0;AUTOMATED INFO COLLECTION SYS;;APR 24, 1997 | 
|---|
| 3 | ADDRESS ;returns address, telephone | 
|---|
| 4 | ;input variables - DFN | 
|---|
| 5 | N ARY,CNT,LINE S CNT=1 | 
|---|
| 6 | S ARY="^TMP(""IB"",$J,""INTERFACES"",+$G(DFN))" | 
|---|
| 7 | D ADD^VADPT | 
|---|
| 8 | I VAERR S (@ARY@("DPT PATIENT ADDRESS LINES"),@ARY@("DPT PATIENT'S TELEPHONE NUMBER"),@ARY@("DPT PATIENT SHORT ADDRESS"))=""  Q | 
|---|
| 9 | I VAPA(1)'="" S @ARY@("DPT PATIENT ADDRESS LINES",CNT)=VAPA(1),CNT=CNT+1 | 
|---|
| 10 | I VAPA(2)'="" S @ARY@("DPT PATIENT ADDRESS LINES",CNT)=VAPA(2),CNT=CNT+1 | 
|---|
| 11 | I VAPA(3)'="" S @ARY@("DPT PATIENT ADDRESS LINES",CNT)=VAPA(3),CNT=CNT+1 | 
|---|
| 12 | S @ARY@("DPT PATIENT ADDRESS LINES",CNT)=VAPA(4)_", "_$P(VAPA(5),"^",2)_" "_$P(VAPA(11),"^",2) | 
|---|
| 13 | ; | 
|---|
| 14 | ;short address | 
|---|
| 15 | F CNT=1:1:3 S LINE=VAPA(CNT) Q:LINE'="" | 
|---|
| 16 | S @ARY@("DPT PATIENT SHORT ADDRESS")=LINE_","_VAPA(4)_", "_$P(VAPA(5),"^",2)_" "_$P(VAPA(11),"^",2) | 
|---|
| 17 | ; | 
|---|
| 18 | S @ARY@("DPT PATIENT'S TELEPHONE NUMBER")=VAPA(8) | 
|---|
| 19 | K VAPA,VA,VAERR,VAEL | 
|---|
| 20 | Q | 
|---|
| 21 | ; | 
|---|
| 22 | INSURANC ;returns all sorts of insurance information | 
|---|
| 23 | ;input - DFN,ACT | 
|---|
| 24 | ;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) | 
|---|
| 25 | ; | 
|---|
| 26 | Q:'$G(DFN) | 
|---|
| 27 | N NODE,SUB,ITEM,ENTRY,DATE,ARY,WHO | 
|---|
| 28 | I $L($T(ALL^IBCNS1)) D | 
|---|
| 29 | .S ARY="^TMP(""IBDF"",$J,""INSURANCE"")" | 
|---|
| 30 | .K @ARY | 
|---|
| 31 | .D ALL^IBCNS1(DFN,ARY,$G(ACT)) | 
|---|
| 32 | ; | 
|---|
| 33 | S SUB=0,ITEM=1,ENTRY="" F  S SUB=$O(@ARY@(SUB)) Q:'SUB  D | 
|---|
| 34 | .S NODE=$G(@ARY@(SUB,0)) Q:NODE="" | 
|---|
| 35 | .S:$P(NODE,"^") ENTRY=$P($G(^DIC(36,$P(NODE,"^"),0)),"^") | 
|---|
| 36 | .S Y=$P(NODE,"^",4) I Y>0 D DD^%DT S $P(ENTRY,"^",2)=Y | 
|---|
| 37 | .S $P(ENTRY,"^",3)=$P(NODE,"^",2) | 
|---|
| 38 | .S $P(ENTRY,"^",4)=$P(NODE,"^",3) | 
|---|
| 39 | .S $P(ENTRY,"^",5)=$P(NODE,"^",15) | 
|---|
| 40 | .S $P(ENTRY,"^",6)=$P(NODE,"^",17) | 
|---|
| 41 | .S WHO=$P(NODE,"^",6) | 
|---|
| 42 | .S $P(ENTRY,"^",7)=$S(WHO="v":"APPLICANT",WHO="s":"SPOUSE",WHO="o":"OTHER",1:"") | 
|---|
| 43 | .S @IBARY@(ITEM)=ENTRY | 
|---|
| 44 | .S ITEM=ITEM+1 | 
|---|
| 45 | K @ARY | 
|---|
| 46 | Q | 
|---|
| 47 | ; | 
|---|
| 48 | INSURED ;is the patient insured? | 
|---|
| 49 | ;input - DFN | 
|---|
| 50 | Q:'$G(DFN) | 
|---|
| 51 | N INS S INS="" | 
|---|
| 52 | ;do it the new way? | 
|---|
| 53 | I $L($T(INSURED^IBCNS1)) D | 
|---|
| 54 | .S INS=$$INSURED^IBCNS1(DFN) | 
|---|
| 55 | S @IBARY=$S(INS=1:"YES",INS=0:"NO",1:"UNKNOWN") | 
|---|
| 56 | Q | 
|---|