1 | PXRMVSIT ; SLC/PKR - Visit related info for reminders. ;02/22/2007
|
---|
2 | ;;2.0;CLINICAL REMINDERS;**4,6**;Feb 04, 2005;Build 123
|
---|
3 | ;
|
---|
4 | ;======================================================
|
---|
5 | GETDATA(DA,DATA,SVALUE) ;Return data for a specific Visit file entry.
|
---|
6 | ;DBIA #2028 for Visit file.
|
---|
7 | N DONE,IEN,HTEMP,LOE,TEMP
|
---|
8 | S TEMP=^AUPNVSIT(DA,0)
|
---|
9 | S DATA("VISIT")=DA
|
---|
10 | S DATA("DATE VISIT CREATED")=$P(TEMP,U,2)
|
---|
11 | S DATA("DFN")=$P(TEMP,U,5)
|
---|
12 | S (DATA("LOC. OF ENCOUNTER"),LOE)=$P(TEMP,U,6)
|
---|
13 | ;DBIA #10090
|
---|
14 | S DATA("STATION NUMBER")=$$GET1^DIQ(4,LOE,99)
|
---|
15 | S DATA("OFFICAL VA NAME")=$$GET1^DIQ(4,LOE,100)
|
---|
16 | S DATA("SERVICE CATEGORY")=$P(TEMP,U,7)
|
---|
17 | I $G(SVALUE) S DATA("VALUE")=$P(TEMP,U,7)
|
---|
18 | S DATA("HOSPITAL LOCATION")=$P(TEMP,U,22)
|
---|
19 | ;DBIA #10040, #2804
|
---|
20 | I $G(DATA("HOSPITAL LOCATION"))="" S HTEMP=""
|
---|
21 | E S HTEMP=^SC(DATA("HOSPITAL LOCATION"),0)
|
---|
22 | S DATA("HLOC")=$P(HTEMP,U,1)
|
---|
23 | S DATA("DSS ID")=$P(TEMP,U,8)
|
---|
24 | I DATA("DSS ID")="" S DATA("DSS ID")=$P(HTEMP,U,7)
|
---|
25 | ;DBIA #557
|
---|
26 | I DATA("DSS ID")'="" S DATA("STOP CODE")=$P(^DIC(40.7,DATA("DSS ID"),0),U,2)
|
---|
27 | S DATA("OUTSIDE LOCATION")=$G(^AUPNVSIT(DA,21))
|
---|
28 | S DATA("COMMENTS")=$G(^AUPNVSIT(DA,811))
|
---|
29 | ;DBIA #4850
|
---|
30 | S DATA("STATUS")=$$STATUS^SDPCE(DA)
|
---|
31 | ;Get the primary provider.
|
---|
32 | ;DBIA #3455 for V PROVIDER
|
---|
33 | S DATA("PRIMARY PROVIDER")="",IEN="",DONE=0
|
---|
34 | F S IEN=$O(^AUPNVPRV("AD",DA,IEN)) Q:(DONE)!(IEN="") D
|
---|
35 | . S TEMP=^AUPNVPRV(IEN,0)
|
---|
36 | . I $P(TEMP,U,4)="P" S DATA("PRIMARY PROVIDER")=$P(TEMP,U,1),DONE=1
|
---|
37 | Q
|
---|
38 | ;
|
---|
39 | ;======================================================
|
---|
40 | GAPSTAT(VIEN) ;Return the status of the appointment associated with the
|
---|
41 | ;visit.
|
---|
42 | ;DBIA #4850
|
---|
43 | Q $$STATUS^SDPCE(VIEN)
|
---|
44 | ;
|
---|
45 | ;======================================================
|
---|
46 | HENC(VIEN,INDENT,NLINES,TEXT) ;Display location and comment for historical
|
---|
47 | ;encounters associated with the V files.
|
---|
48 | N COMMENT,HLOC,LOCATION,OLOC,NIN,TEXTIN,VDATA
|
---|
49 | D GETDATA(VIEN,.VDATA) I VDATA("SERVICE CATEGORY")'="E" Q
|
---|
50 | S NIN=0
|
---|
51 | S LOCATION=VDATA("LOC. OF ENCOUNTER")
|
---|
52 | I LOCATION'="" D
|
---|
53 | . S LOCATION=$$GET1^DIQ(4,LOCATION,.01)_" "_$$GET1^DIQ(4,LOCATION,99)
|
---|
54 | . S NIN=NIN+1,TEXTIN(NIN)="Location of Encounter: "_LOCATION_"\\"
|
---|
55 | S HLOC=VDATA("HOSPITAL LOCATION")
|
---|
56 | I HLOC'="" D
|
---|
57 | . S HLOC=$$GET1^DIQ(44,HLOC,.01)
|
---|
58 | . S NIN=NIN+1,TEXTIN(NIN)="Hospital Location: "_HLOC_"\\"
|
---|
59 | S OLOC=VDATA("OUTSIDE LOCATION")
|
---|
60 | I OLOC'="" D
|
---|
61 | . S NIN=NIN+1,TEXTIN(NIN)="Outside Location: "_OLOC_"\\"
|
---|
62 | S COMMENT=VDATA("COMMENT")
|
---|
63 | I COMMENT'="" D
|
---|
64 | . S NIN=NIN+1,TEXTIN(NIN)="Comment: "_COMMENT
|
---|
65 | I NIN>0 D
|
---|
66 | . N JND,NOUT,TEXTOUT
|
---|
67 | . S NLINES=NLINES+1
|
---|
68 | . S TEXT(NLINES)=$$INSCHR^PXRMEXLC(INDENT," ")_"Historical Encounter Information:"
|
---|
69 | . D FORMAT^PXRMTEXT(INDENT+2,PXRMRM,NIN,.TEXTIN,.NOUT,.TEXTOUT)
|
---|
70 | . F JND=1:1:NOUT S NLINES=NLINES+1,TEXT(NLINES)=TEXTOUT(JND)
|
---|
71 | Q
|
---|
72 | ;
|
---|
73 | ;======================================================
|
---|
74 | ISHIST(VIEN) ;Return true if the encounter was historical.
|
---|
75 | ;DBIA #2028
|
---|
76 | I $P($G(^AUPNVSIT(VIEN,0)),U,7)="E" Q 1
|
---|
77 | Q 0
|
---|
78 | ;
|
---|
79 | ;======================================================
|
---|
80 | VAPSTAT(VIEN) ;Return true if the appointment associated with
|
---|
81 | ;the visit has a valid appointment status.
|
---|
82 | ;Return false if the status is one of the following:
|
---|
83 | ;CANCELLED BY CLINIC
|
---|
84 | ;CANCELLED BY CLINIC & AUTO RE-BOOK
|
---|
85 | ;CANCELLED BY PATIENT
|
---|
86 | ;CANCELLED BY PATIENT & AUTO-REBOOK
|
---|
87 | ;DELETED
|
---|
88 | ;NO ACTION TAKEN
|
---|
89 | ;NO-SHOW
|
---|
90 | ;NO-SHOW & AUTO RE-BOOK
|
---|
91 | ;NULL
|
---|
92 | N STATUS,VALID
|
---|
93 | ;DBIA #4850
|
---|
94 | S STATUS=$P($$STATUS^SDPCE(VIEN),U,2)
|
---|
95 | S VALID=$S(STATUS["CANCELLED":0,STATUS["DELETED":0,STATUS["NO ACTION":0,STATUS["NO-SHOW":0,STATUS="":0,1:1)
|
---|
96 | Q VALID
|
---|
97 | ;
|
---|