1 | ORXTABS5 ;SLC/PKS - Edit calls, tab parameters preferences. [11/22/00 11:16am]
|
---|
2 | ;;3.0;ORDER ENTRY/RESULTS REPORTING;**9,47,84**;Dec 17, 1997
|
---|
3 | ;
|
---|
4 | ; NOTES: The routines herein are called by those of the same tag
|
---|
5 | ; name in ORXTABS2. Most variables are NEW'd and assigned
|
---|
6 | ; by one or more routines in the preceding call chains.
|
---|
7 | ; Refer to comments and notes there for additional infor-
|
---|
8 | ; mation.
|
---|
9 | ;
|
---|
10 | ; Each tag in this routine must return one of the following:
|
---|
11 | ;
|
---|
12 | ; 1 - A new value entered or selected by the user,
|
---|
13 | ; 2 - A null string,
|
---|
14 | ; 3 - The string "*Invalid*" - to repeat due to invalid entry,
|
---|
15 | ; 4 - The "^" character, indicating user's cancel action.
|
---|
16 | ;
|
---|
17 | ; Some tags in this routine are functions or calls used by
|
---|
18 | ; other tags herein.
|
---|
19 | ;
|
---|
20 | Q
|
---|
21 | ;
|
---|
22 | TYPE ; Type, for labs.
|
---|
23 | ;
|
---|
24 | ; Assign DIR variables:
|
---|
25 | S DIR("T")=120 ; Two minute maximum timeout for response.
|
---|
26 | S DIR("A")=" Enter "_ORXPDIS_": "
|
---|
27 | S DIR("A",1)=" L List Format"
|
---|
28 | S DIR("A",2)=" C Cumulative Format"
|
---|
29 | S DIR(0)="SAO^L:List Format;C:Cumulative Format" ; Optional, Set of Codes.
|
---|
30 | ;
|
---|
31 | ; Translate one value to match past practice:
|
---|
32 | I ORXNOW="R" S ORXNOW="L"
|
---|
33 | ;
|
---|
34 | ; Call tag to get/assign input:
|
---|
35 | D INPUT^ORXTABS2
|
---|
36 | ;
|
---|
37 | ; Re-translate one value to match past practice:
|
---|
38 | I ORXNOW="L" S ORXNOW="R"
|
---|
39 | ;
|
---|
40 | ; Present applicability message to user:
|
---|
41 | W !!,"(NOTE: This setting applies only to the LM version of CPRS.)",!
|
---|
42 | ;
|
---|
43 | Q
|
---|
44 | ;
|
---|
45 | DISPGRP ; Display Group (service/section), for orders.
|
---|
46 | ;
|
---|
47 | ; Internal variables used:
|
---|
48 | ;
|
---|
49 | ; DIC,X,Y,DTOUT,DUOUT = Variables for FM calls.
|
---|
50 | ; ORXDONE = Flag for loop exit.
|
---|
51 | ; ORXTMP = Temporary variable for value holding.
|
---|
52 | ;
|
---|
53 | N DIR,X,Y,DTOUT,DUOUT,ORXDONE,ORXTMP
|
---|
54 | ;
|
---|
55 | ; Set/translate current setting into a display value:
|
---|
56 | I (('$D(ORXNOW))!(ORXNOW="")) S ORXNOW="ALL"
|
---|
57 | S ORXTMP=0
|
---|
58 | I ORXNOW'="" D
|
---|
59 | .S ORXTMP=$O(^ORD(100.98,"B",ORXNOW,ORXTMP))
|
---|
60 | .I ORXTMP>0 S ORXTMP=$P(^ORD(100.98,ORXTMP,0),U)
|
---|
61 | ;
|
---|
62 | ; Establish loop for input control:
|
---|
63 | S ORXDONE=0
|
---|
64 | F D Q:ORXDONE
|
---|
65 | .W !!," Enter "_ORXPDIS_" for display of orders."
|
---|
66 | .W !!," Select Service/Section: "_ORXTMP_"//"
|
---|
67 | .R X:DTIME S:'$T X="^" I X["^" S ORXDONE=1 Q
|
---|
68 | .I X="" S ORXDONE=1 Q ; No change.
|
---|
69 | .I X="@" S ORXDONE=1 Q ; Results in default.
|
---|
70 | .I X["?" W !!," Choose from:",! D DG^ORCHANG1(1,"DISP") Q
|
---|
71 | .S DIC=100.98,DIC(0)="NEQZ"
|
---|
72 | .D ^DIC
|
---|
73 | .S:Y>0 ORXNOW=$P(Y(0),U,3),ORXDONE=1
|
---|
74 | I X="@" S ORXNOW=X
|
---|
75 | I (ORXNOW="@") S ORXNOW="ALL" ; Bottom line default.
|
---|
76 | ;
|
---|
77 | Q
|
---|
78 | ;
|
---|
79 | OUTPT ; Outpatient (0) or Inpatient (1) meds display.
|
---|
80 | ;
|
---|
81 | ; Assign DIR variables:
|
---|
82 | S DIR("T")=120 ; Two minute maximum timeout for response.
|
---|
83 | S DIR("A")=" Enter "_ORXPDIS_": "
|
---|
84 | S DIR("A",1)=" 0 Outpatient"
|
---|
85 | S DIR("A",2)=" 1 Inpatient"
|
---|
86 | S DIR(0)="SAO^0:Outpatient;1:Inpatient" ; Optional, Set of Codes.
|
---|
87 | ;
|
---|
88 | ; Call tag to get/assign input:
|
---|
89 | D INPUT^ORXTABS2
|
---|
90 | ;
|
---|
91 | Q
|
---|
92 | ;
|
---|
93 | SUBJECT ; Subject, for notes.
|
---|
94 | ;
|
---|
95 | ; Assign DIR variables:
|
---|
96 | S DIR("T")=120 ; Two minute maximum timeout for response.
|
---|
97 | S DIR("A")=" Enter "_ORXPDIS_" setting: "
|
---|
98 | S DIR("A",1)=" 0 Off/Hide Subjects"
|
---|
99 | S DIR("A",2)=" 1 On/Show Subjects"
|
---|
100 | S DIR(0)="SAO^0:Off/Hide Subjects;1:On/Show Subjects"
|
---|
101 | ;
|
---|
102 | ; Call tag to get/assign input:
|
---|
103 | D INPUT^ORXTABS2
|
---|
104 | ;
|
---|
105 | Q
|
---|
106 | ;
|
---|
107 | FORMAT ; Format, for orders.
|
---|
108 | ;
|
---|
109 | ; Assign DIR variables:
|
---|
110 | S DIR("T")=120 ; Two minute maximum timeout for response.
|
---|
111 | S DIR("A")=" Enter "_ORXPDIS_" setting for Orders: "
|
---|
112 | S DIR("A",1)=" L Long"
|
---|
113 | S DIR("A",2)=" S Short"
|
---|
114 | S DIR(0)="SAO^L:Long;S:Short"
|
---|
115 | ;
|
---|
116 | ; Call tag to get/assign input:
|
---|
117 | D INPUT^ORXTABS2
|
---|
118 | ;
|
---|
119 | Q
|
---|
120 | ;
|
---|
121 | COMMENTS ; Comments, for problems.
|
---|
122 | ;
|
---|
123 | ; Assign DIR variables:
|
---|
124 | S DIR("T")=120 ; Two minute maximum timeout for response.
|
---|
125 | S DIR("A")=" Enter "_ORXPDIS_" setting for Problems: "
|
---|
126 | S DIR("A",1)=" 0 Off/Hide Comments"
|
---|
127 | S DIR("A",2)=" 1 On/Show Comments"
|
---|
128 | S DIR(0)="SAO^0:Off/Hide Comments;1:On/Show Comments"
|
---|
129 | ;
|
---|
130 | ; Call tag to get/assign input:
|
---|
131 | D INPUT^ORXTABS2
|
---|
132 | ;
|
---|
133 | Q
|
---|
134 | ;
|
---|
135 | SERVICE ; Service, for consults.
|
---|
136 | ;
|
---|
137 | ; Internal variables used:
|
---|
138 | ;
|
---|
139 | ; DIC,X,Y,DTOUT,DUOUT = Variables for call to DIC.
|
---|
140 | ;
|
---|
141 | N DIC,X,Y,DTOUT,DUOUT
|
---|
142 | ;
|
---|
143 | ; Assign DIC variables and call DIC:
|
---|
144 | S DIC=123.5
|
---|
145 | S DIC(0)="AEFMQ"
|
---|
146 | S DIC("A")=" Select service for Consults: "
|
---|
147 | S DIC("B")="ALL"
|
---|
148 | S:$L($G(ORXNOW)) DIC("B")=ORXNOW
|
---|
149 | S DTIME=120
|
---|
150 | W !! ; Screen formatting.
|
---|
151 | D ^DIC
|
---|
152 | ;
|
---|
153 | I $D(DUOUT) S ORXNOW="^"
|
---|
154 | I $D(DTOUT) S ORXNOW="^"
|
---|
155 | ;
|
---|
156 | ; Examine user entry, treat if needed, and assign it for return:
|
---|
157 | I ORXNOW'="^" S:+Y'>0 Y=""
|
---|
158 | I ORXNOW'="^" S ORXNOW=+Y
|
---|
159 | ;
|
---|
160 | K DIC,X,Y,DTOUT,DUOUT ; Clean up before exit.
|
---|
161 | ;
|
---|
162 | Q
|
---|
163 | ;
|
---|
164 | OCCLIM ; Occurrence Limit, for notes.
|
---|
165 | ;
|
---|
166 | ; Assign DIR variables:
|
---|
167 | S DIR("T")=120 ; Two minute maximum timeout for response.
|
---|
168 | S DIR("A")=" Enter "_ORXPDIS_" setting for Notes: "
|
---|
169 | S DIR("?")=" Entry must be between 1 and 9,999,999"
|
---|
170 | S DIR(0)="NA^1:9999999" ; Numerical, required.
|
---|
171 | ;
|
---|
172 | ; Call tag to get/assign input:
|
---|
173 | D INPUT^ORXTABS2
|
---|
174 | ;
|
---|
175 | I ORXNOW'="^" D
|
---|
176 | .W !!,"(NOTE: Setting may be overridden by your TIU Personal Preferences.)",!
|
---|
177 | .H 2
|
---|
178 | ;
|
---|
179 | Q
|
---|
180 | ;
|
---|