1 | WVBRNOT2 ;HCIOFO/FT,JR IHS/ANMC/MWR - BROWSE NOTIFICATIONS;
|
---|
2 | ;;1.0;WOMEN'S HEALTH;;Sep 30, 1998
|
---|
3 | ;;* MICHAEL REMILLARD, DDS * ALASKA NATIVE MEDICAL CENTER *
|
---|
4 | ;; PROMPTS FOR SELECTION CRITERIA WHEN BROWSING NOTIFICATIONS.
|
---|
5 | ;; CALLED BY WVBRNOT.
|
---|
6 | ;
|
---|
7 | D SETVARS^WVUTL5
|
---|
8 | D TITLE^WVUTL5("BROWSE NOTIFICATIONS")
|
---|
9 | D ONEALL Q:WVPOP
|
---|
10 | D DATES Q:WVPOP
|
---|
11 | D STATUS Q:WVPOP
|
---|
12 | D CMGR Q:WVPOP
|
---|
13 | D ORDER Q:WVPOP
|
---|
14 | D DEVICE Q:WVPOP
|
---|
15 | Q
|
---|
16 | ;
|
---|
17 | ONEALL ;EP
|
---|
18 | ;---> SELECT ONE PATIENT OR ALL PATIENTS.
|
---|
19 | K DIR
|
---|
20 | W !!?3,"Browse Notifications for ONE individual patient,"
|
---|
21 | W !?3,"or browse Notifications for ALL patients?"
|
---|
22 | S DIR("A")=" Select ONE or ALL: ",DIR("B")="ALL"
|
---|
23 | S DIR(0)="SAM^o:ONE;a:ALL" D HELP2
|
---|
24 | D ^DIR K DIR
|
---|
25 | I Y=-1!($D(DIRUT)) S WVPOP=1 Q
|
---|
26 | ;---> IF ALL PATIENTS, S WVA=1 AND QUIT.
|
---|
27 | I Y="a" S WVA=1 Q
|
---|
28 | ;
|
---|
29 | W !!," Select the patient whose Notifications you wish to browse."
|
---|
30 | D PATLKUP^WVUTL8(.Y)
|
---|
31 | I Y<0 S WVPOP=1 Q
|
---|
32 | ;---> FOR ONE PATIENT, SET WVA=0 AND WVDFN=PATIENT DFN, QUIT.
|
---|
33 | S WVDFN=+Y,WVA=0,WVCMGR=$P(^WV(790,WVDFN,0),U,10)
|
---|
34 | Q
|
---|
35 | ;
|
---|
36 | DATES ;EP
|
---|
37 | ;---> ASK DATE RANGE. RETURN DATES IN WVBEGDT AND WVENDDT.
|
---|
38 | ;---> IF LOOKING AT ONLY ONE PATIENT, SET DEFAULT BEGIN DATE=T-365.
|
---|
39 | S WVBEGDF=$S(WVA:"T-30",1:"T-365")
|
---|
40 | D ASKDATES^WVUTL3(.WVBEGDT,.WVENDDT,.WVPOP,WVBEGDF,"T")
|
---|
41 | Q
|
---|
42 | ;
|
---|
43 | STATUS ;EP
|
---|
44 | ;---> GET XREF: OPEN OR ALL
|
---|
45 | W !!?3,"Do you wish to browse DELINQUENT, OPEN, QUEUED, "
|
---|
46 | W "or ALL Notifications?"
|
---|
47 | S DIR("A")=" Select DELINQUENT, OPEN, QUEUED or ALL: "
|
---|
48 | S DIR("B")="OPEN"
|
---|
49 | S DIR(0)="SAM^d:DELINQUENT;o:OPEN;q:QUEUED;a:ALL" D HELP4
|
---|
50 | D ^DIR K DIR
|
---|
51 | I Y=-1!($D(DIRUT)) S WVPOP=1 Q
|
---|
52 | S WVB=Y
|
---|
53 | Q
|
---|
54 | ;
|
---|
55 | CMGR ;EP
|
---|
56 | ;---> SELECT CASES FOR ONE CASE MANAGER OR ALL.
|
---|
57 | ;---> DO NOT PROMPT FOR CASE MANAGER IF SITE PARAMETERS SAY NOT TO,
|
---|
58 | ;---> OR IF LOOKING AT PROCEDURES FOR ONLY ONE PATIENT.
|
---|
59 | I '$D(^WV(790.02,DUZ(2),0)) S WVE=1 Q
|
---|
60 | I '$P(^WV(790.02,DUZ(2),0),U,5)!('WVA) S WVE=1 Q
|
---|
61 | W !!?3,"Browse Notifications for ONE particular Case Manager,"
|
---|
62 | W !?3,"or browse Notifications for ALL Case Managers?"
|
---|
63 | S DIR("A")=" Select ONE or ALL: ",DIR("B")="ALL"
|
---|
64 | S DIR(0)="SAM^o:ONE;a:ALL" D HELP5
|
---|
65 | D ^DIR K DIR
|
---|
66 | I Y=-1!($D(DIRUT)) S WVPOP=1 Q
|
---|
67 | ;---> IF ALL CASE MANAGERS, S WVE=1 AND QUIT.
|
---|
68 | I Y="a" S WVE=1 Q
|
---|
69 | ;
|
---|
70 | W !!," Select the Case Manager whose patients you wish to browse."
|
---|
71 | ;
|
---|
72 | D DIC^WVFMAN(790.01,"QEMA",.Y," Select CASE MANAGER: ")
|
---|
73 | I Y<0 S WVPOP=1 Q
|
---|
74 | ;---> FOR ONE CASE MANAGER, SET WVE=0 AND WVCMGR=^VA(200 DFN, QUIT.
|
---|
75 | S WVCMGR=+Y,WVE=0
|
---|
76 | Q
|
---|
77 | ;
|
---|
78 | ;
|
---|
79 | ORDER ;EP
|
---|
80 | ;---> ASK ORDER BY DATE OR BY PATIENT OR BY PRIORITY.
|
---|
81 | ;---> IF LOOKING AT ONLY ONE PATIENT, ORDER BY DATE AND QUIT.
|
---|
82 | I 'WVA S WVC=1 Q
|
---|
83 | ;
|
---|
84 | ;---> SORT SEQUENCE IN WVC: 1=DATE, PATIENT, PRIORITY
|
---|
85 | ;---> 2=PATIENT, DATE, PRIORITY
|
---|
86 | ;---> 3=PRIORITY, DATE, PATIENT
|
---|
87 | ;
|
---|
88 | W !!?3,"Display Notifications in order of:"
|
---|
89 | W ?39,"1) DATE OF NOTIFICATION (earliest first)"
|
---|
90 | W !?39,"2) NAME OF PATIENT (alphabetically)"
|
---|
91 | W !?39,"3) PRIORITY (beginning with URGENT)"
|
---|
92 | S DIR("A")=" Select 1, 2, or 3: ",DIR("B")=1
|
---|
93 | S DIR(0)="SAM^1:DATE;2:NAME;3:PRIORITY" D HELP3
|
---|
94 | D ^DIR K DIR
|
---|
95 | I Y=-1!($D(DIRUT)) S WVPOP=1 Q
|
---|
96 | S WVC=Y
|
---|
97 | Q
|
---|
98 | ;
|
---|
99 | DEVICE ;EP
|
---|
100 | ;---> GET DEVICE AND POSSIBLY QUEUE TO TASKMAN.
|
---|
101 | S ZTRTN="DEQUEUE^WVBRNOT"
|
---|
102 | F WVSV="A","B","C","D","E","CMGR","DFN","BEGDT","ENDDT" D
|
---|
103 | .I $D(@("WV"_WVSV)) S ZTSAVE("WV"_WVSV)=""
|
---|
104 | D ZIS^WVUTL2(.WVPOP,1,"HOME")
|
---|
105 | Q
|
---|
106 | ;
|
---|
107 | HELP2 ;EP
|
---|
108 | ;;Answer "ONE" to browse Notifications for ONE particular patient.
|
---|
109 | ;;Answer "ALL" to browse Notifications for ALL patients.
|
---|
110 | S WVTAB=5,WVLINL="HELP2" D HELPTX
|
---|
111 | Q
|
---|
112 | ;
|
---|
113 | HELP3 ;EP
|
---|
114 | ;;Enter "DATE" to list Notifications in chronological order beginning
|
---|
115 | ;; with the oldest first.
|
---|
116 | ;;Enter "NAME" to list Notifications by Patient Name in alphabetical
|
---|
117 | ;; order.
|
---|
118 | ;;Enter "PRIORITY" to list Notifications by degree of urgency,
|
---|
119 | ;; beginning with the most urgent first.
|
---|
120 | S WVTAB=5,WVLINL="HELP3" D HELPTX
|
---|
121 | Q
|
---|
122 | ;
|
---|
123 | HELP4 ;EP
|
---|
124 | ;;"OPEN Notifications" are ones that have not yet been closed,
|
---|
125 | ;; in other words, the patient has not yet been reached or has not
|
---|
126 | ;; yet responded.
|
---|
127 | ;;
|
---|
128 | ;;"DELINQUENT Notifications" are OPEN Notifications that have remained
|
---|
129 | ;; open past the date they were due to be closed (as determined by
|
---|
130 | ;; the "DATE DELINQUENT BY" field in the Edit Notification screen).
|
---|
131 | ;;
|
---|
132 | ;;"QUEUED Notifications" are only LETTERS waiting to be printed.
|
---|
133 | ;; They do not include letters that have already been printed.
|
---|
134 | ;;
|
---|
135 | ;;"ALL Notifications" includes DELINQUENT, OPEN and CLOSED.
|
---|
136 | ;; CLOSED notifications are ones that have been brought to closure,
|
---|
137 | ;; in other words, either the patient has been contacted or the
|
---|
138 | ;; case is no longer active.
|
---|
139 | S WVTAB=5,WVLINL="HELP4" D HELPTX
|
---|
140 | Q
|
---|
141 | ;
|
---|
142 | HELP5 ;EP
|
---|
143 | ;;Answer "ONE" to browse Notifications for ONE particular Case Manager.
|
---|
144 | ;;Answer "ALL" to browse Notifications for ALL Case Managers.
|
---|
145 | S WVTAB=5,WVLINL="HELP5" D HELPTX
|
---|
146 | Q
|
---|
147 | ;
|
---|
148 | HELPTX ;EP
|
---|
149 | ;---> CREATES DIR ARRAY FOR DIR. REQUIRED VARIABLES: WVTAB,WVLINL.
|
---|
150 | N I,T,X S T=$$REPEAT^XLFSTR(" ",WVTAB)
|
---|
151 | F I=1:1 S X=$T(@WVLINL+I) Q:X'[";;" S DIR("?",I)=T_$P(X,";;",2)
|
---|
152 | S DIR("?")=DIR("?",I-1) K DIR("?",I-1)
|
---|
153 | Q
|
---|