1 | PXCEHLOC ;ISL/dee,ISA/KWP - Creates the List Manager display of visit for a hospital location ;04/30/99
|
---|
2 | ;;1.0;PCE PATIENT CARE ENCOUNTER;**1,52,70,75**;Aug 12, 1996
|
---|
3 | ;; ;
|
---|
4 | Q
|
---|
5 | ;
|
---|
6 | MAKELIST ;
|
---|
7 | K VALMHDR S VALMBCK="R"
|
---|
8 | ;
|
---|
9 | D CLEAN^VALM10
|
---|
10 | K ^TMP("PXCEIDX",$J)
|
---|
11 | D CHGCAP^VALM("LOCATION","Patient")
|
---|
12 | S VALMBG=1
|
---|
13 | S VALMCNT=0
|
---|
14 | I '$D(PXCEHLOC) D
|
---|
15 | . N PXCEHLOC
|
---|
16 | . S PXCEHLOC=0
|
---|
17 | . F S PXCEHLOC=$O(^AUPNVSIT("AHL",PXCEHLOC)) Q:PXCEHLOC'>0 D ONEHLOC
|
---|
18 | E D ONEHLOC
|
---|
19 | S ^TMP("PXCEIDX",$J,0)=VALMCNT
|
---|
20 | I VALMCNT'>0 D
|
---|
21 | . S ^TMP("PXCE",$J,1,0)=" "
|
---|
22 | . S ^TMP("PXCE",$J,2,0)=" No encounter found that satisfy the above criteria."
|
---|
23 | . S VALMCNT=2
|
---|
24 | Q
|
---|
25 | ;
|
---|
26 | ONEHLOC ;
|
---|
27 | N PXCEDATE,PXCELOC,PXCESTAT,PXCEPDFN,PXCEVSIT,PXCENAME,PXCEIEN
|
---|
28 | N PXCEPRIM,PXELIG,PXDATA
|
---|
29 | N PXCEDT
|
---|
30 | S PXCEDT=PXCE9END
|
---|
31 | N PXCECLST,PXCEGAFR,PXCEGAF,DFN,PXCEMH
|
---|
32 | S PXCEMH=$$MHCLIN^SDUTL2(PXCEHLOC)
|
---|
33 | S PXCECLST=$P(^SC(PXCEHLOC,0),"^",7)
|
---|
34 | F S PXCEDT=$O(^AUPNVSIT("AHL",PXCEHLOC,PXCEDT)) Q:PXCEDT'>0!(PXCEDT>PXCE9BEG) D
|
---|
35 | . S PXCEIEN=""
|
---|
36 | . F S PXCEIEN=$O(^AUPNVSIT("AHL",PXCEHLOC,PXCEDT,PXCEIEN)) Q:PXCEIEN'>0 D
|
---|
37 | .. S PXCEVSIT=^AUPNVSIT(PXCEIEN,0)
|
---|
38 | .. S PXCEPRIM=$P($G(^AUPNVSIT(PXCEIEN,150)),"^",3)
|
---|
39 | .. ;+do not show encounter if the encounter type is S,C or null
|
---|
40 | .. Q:"SC"[PXCEPRIM
|
---|
41 | .. I PXCEKEYS'["S",PXCEKEYS'["V","A"=PXCEPRIM Q ;+let supervisor and viewer see ancillary package encounters
|
---|
42 | .. S PXCENAME=$P(PXCEVSIT,"^",5),DFN=PXCENAME,PXCEGAFR=" "
|
---|
43 | .. I PXCEKEYS'["V",$$DISPOSIT^PXUTL1(PXCENAME,+PXCEVSIT,PXCEIEN) Q ;+let viewer see dispositions
|
---|
44 | .. S PXELIG=$$ELSTAT^SDUTL2(DFN)
|
---|
45 | .. S PXDATA=$G(^DPT(DFN,"S",+PXCEVSIT,0))
|
---|
46 | .. I PXCEMH,'($$COLLAT^SDUTL2(PXELIG)!$P(PXDATA,U,11)) D
|
---|
47 | ... S PXCEGAF=$$NEWGAF^SDUTL2(DFN)
|
---|
48 | ... I $P(PXCEGAF,"^") S PXCEGAFR="*"
|
---|
49 | .. D PATNAME^PXCEPAT(.PXCENAME)
|
---|
50 | .. S VALMCNT=VALMCNT+1
|
---|
51 | .. S PXCEDATE=$$DATE^PXCEDATE($P(PXCEVSIT,"^",1))
|
---|
52 | .. S PXCEDATE=$E(PXCEDATE,1,18)_$J("",(19-$L(PXCEDATE)))
|
---|
53 | .. S PXCELOC=$S($P(PXCEVSIT,"^",22)>0:$P(^SC($P(PXCEVSIT,"^",22),0),"^"),1:"")
|
---|
54 | .. S PXCELOC=$E(PXCELOC,1,26)_$J("",(28-$L(PXCELOC)))
|
---|
55 | .. S PXCEPDFN=$E(PXCENAME("SSN_BRIEF")_" ",1,5)_$E(PXCENAME("NAME"),1,21)
|
---|
56 | .. S PXCEPDFN=PXCEPDFN_$J("",(28-$L(PXCEPDFN)))
|
---|
57 | .. S PXCESTAT=$P($$STATUS^SDPCE(PXCEIEN),"^",2)
|
---|
58 | .. S ^TMP("PXCE",$J,VALMCNT,0)=PXCEGAFR_$J(VALMCNT,4)_" "_PXCEDATE_PXCEPDFN_PXCESTAT
|
---|
59 | .. S ^TMP("PXCEIDX",$J,VALMCNT)=PXCEIEN
|
---|
60 | Q
|
---|
61 | ;
|
---|