1 | ECXSCXN1 ;ALB/JAP Clinic Extract No Shows; 8/28/02 1:11pm ; 10/26/04 10:35am
|
---|
2 | ;;3.0;DSS EXTRACTS;**71**;Dec 22, 1997
|
---|
3 | NOSHOW(ECXSD,ECXED) ;get noshows from file #44
|
---|
4 | ; ECXSD = start date, ECXED = end date
|
---|
5 | N ALEN,CLIN,JDATE,JJ,NODE,NOSHOW,PP,STAT,MDIV
|
---|
6 | S CLIN=0
|
---|
7 | F S CLIN=$O(^TMP($J,"ECXCL",CLIN)) Q:'CLIN D
|
---|
8 | .Q:$P($G(^TMP($J,"ECXCL",CLIN)),U,3)'="C"
|
---|
9 | .S (P1,P2,P3)=""
|
---|
10 | .D FEEDER^ECXSCX1(CLIN,ECXSD,.P1,.P2,.P3,.TOSEND,.ECXDIV)
|
---|
11 | .Q:TOSEND=6
|
---|
12 | .;find appts in date range
|
---|
13 | .S JDATE=ECXSD,(ALEN,NOSHOW)=""
|
---|
14 | .F S JDATE=$O(^SC(CLIN,"S",JDATE)) Q:'JDATE Q:JDATE>ECXED D
|
---|
15 | ..S ECXDATE=JDATE,JJ=0,ECXTI=$P($$FMTE^XLFDT(JDATE,1),"@",2)
|
---|
16 | ..S ECXTI=$E(($TR(ECXTI,":","")_"000000"),1,6)
|
---|
17 | ..S:ECXTI="000000" ECXTI="000300"
|
---|
18 | ..;get noshows only - no data in check-in/check-out node
|
---|
19 | ..F S JJ=$O(^SC(CLIN,"S",JDATE,JJ)) Q:'JJ D
|
---|
20 | ...S K=0
|
---|
21 | ...F S K=$O(^SC(CLIN,"S",JDATE,JJ,K)) Q:'K D
|
---|
22 | ....S PP=$G(^SC(CLIN,"S",JDATE,JJ,K,0)),ECXDFN=$P(PP,U) Q:ECXDFN=""
|
---|
23 | ....S NODE=$G(^DPT(ECXDFN,"S",JDATE,0)),MDIV=$P($G(^SC(CLIN,0)),U,15)
|
---|
24 | ....Q:(NODE="")!($P(NODE,U)'=CLIN)
|
---|
25 | ....S ECXOBI=$G(^SC(CLIN,"S",JDATE,JJ,K,"OB")),STAT=$P(NODE,U,2)
|
---|
26 | ....S NOSHOW=$S(STAT="N":"N",STAT="NA":"N",1:"")
|
---|
27 | ....Q:NOSHOW="" D INTPAT^ECXSCX2 S ECXERR=0
|
---|
28 | ....D PAT1^ECXSCX2(ECXDFN,ECXDATE,.ECXERR) Q:ECXERR
|
---|
29 | ....S ALEN=$P(PP,U,2),ALEN=$$RJ^XLFSTR(ALEN,3,0)
|
---|
30 | ....D PAT2^ECXSCX2(ECXDFN,ECXDATE)
|
---|
31 | ....S ECXPVST=$P(NODE,U,7),ECXATYP=$P(NODE,U,16) ;Get POV & appt type
|
---|
32 | ....S:+ALEN=0 ALEN=$P($G(^TMP($J,"ECXCL",CLIN)),U,2)
|
---|
33 | ....S ECXCLIN=CLIN,ECXSTOP=P1 S:ECXICD9P="" ECXICD9P="799.9"
|
---|
34 | ....S:ECXCPT1="" ECXCPT1="9919901"
|
---|
35 | ....S ECXCBOC=$S(MDIV'="":$$CBOC^ECXSCX2(.MDIV),1:"")
|
---|
36 | ....S (ECXDSSD,ECXENEL,ECXIR,ECXAO,ECXMIL,ECXPROV,ECXPROVP,ECXPROVN)=""
|
---|
37 | ....I TOSEND'=3 D
|
---|
38 | .....S ECXKEY=P1_P2_ALEN_P3_NOSHOW,ECXOBS=$$OBSPAT^ECXUTL4(ECXA,ECXTS,ECXKEY)
|
---|
39 | .....S ECXENC=$$ENCNUM^ECXUTL4(ECXA,ECXSSN,ECXADMDT,ECXDATE,ECXTS,ECXOBS,ECHEAD,ECXKEY,) D:ECXENC'="" FILE^ECXSCXN
|
---|
40 | ....I TOSEND=3 D
|
---|
41 | .....S ECXKEY=P1_"000"_ALEN_P3_NOSHOW,ECXOBS=$$OBSPAT^ECXUTL4(ECXA,ECXTS,ECXKEY)
|
---|
42 | .....S ECXENC=$$ENCNUM^ECXUTL4(ECXA,ECXSSN,ECXADMDT,ECXDATE,ECXTS,ECXOBS,ECHEAD,ECXKEY,) D:ECXENC'="" FILE^ECXSCXN
|
---|
43 | ....I TOSEND=3 D
|
---|
44 | .....S ECXKEY=P2_"000"_ALEN_P3_NOSHOW,ECXOBS=$$OBSPAT^ECXUTL4(ECXA,ECXTS,ECXKEY)
|
---|
45 | .....S ECXENC=$$ENCNUM^ECXUTL4(ECXA,ECXSSN,ECXADMDT,ECXDATE,ECXTS,ECXOBS,ECHEAD,ECXKEY,) D:ECXENC'="" FILE^ECXSCXN
|
---|
46 | ....;create a record for noshow appended ekg. The code was removed for CTX-0604-70970 CLI Extract Problem EXPANDED to NoShows
|
---|
47 | Q
|
---|