| 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 |  ;
 | 
|---|