| [796] | 1 | ;"Custom version -- formatted for easier reading...
|
|---|
| 2 |
|
|---|
| 3 | PSSDEE ;BIR/WRT-MASTER DRUG ENTER/EDIT ROUTINE ;01/21/00
|
|---|
| 4 | ;;1.0;PHARMACY DATA MANAGEMENT;**3,5,15,16,20,22,28,32,34,33,38,57,47,68,61**;9/30/97
|
|---|
| 5 | ;
|
|---|
| 6 | ;Reference to REACT1^PSNOUT supported by DBIA #2080
|
|---|
| 7 | ;Reference to $$UP^XLFSTR(X) supported by DBIA #10104
|
|---|
| 8 | ;Reference to $$PSJDF^PSNAPIS(P1,P3) supported by DBIA #2531
|
|---|
| 9 | ;
|
|---|
| 10 |
|
|---|
| 11 | BEGIN S PSSFLAG=0
|
|---|
| 12 | D ^PSSDEE2
|
|---|
| 13 | S PSSZ=1
|
|---|
| 14 | F PSSXX=1:1 do Q:PSSFLAG
|
|---|
| 15 | . K DA
|
|---|
| 16 | . D ASK
|
|---|
| 17 | DONE D ^PSSDEE2
|
|---|
| 18 | K PSSFLAG
|
|---|
| 19 | Q
|
|---|
| 20 |
|
|---|
| 21 | ASK
|
|---|
| 22 | W !
|
|---|
| 23 | S DIC="^PSDRUG(",DIC(0)="QEALMNTV",DLAYGO=50,DIC("T")=""
|
|---|
| 24 | D ^DIC
|
|---|
| 25 | K DIC
|
|---|
| 26 | I Y<0 S PSSFLAG=1 Q
|
|---|
| 27 | S (FLG1,FLG2,FLG3,FLG4,FLG5,FLG6,FLG7,FLAG,FLGKY,FLGOI)=0
|
|---|
| 28 | K ^TMP($J,"ADD"),^TMP($J,"SOL")
|
|---|
| 29 | S DA=+Y
|
|---|
| 30 | S DISPDRG=DA
|
|---|
| 31 | L +^PSDRUG(DISPDRG):0
|
|---|
| 32 | I '$T W !,$C(7),"Another person is editing this one." Q
|
|---|
| 33 | S PSSHUIDG=1
|
|---|
| 34 | S PSSNEW=$P(Y,"^",3)
|
|---|
| 35 | D USE
|
|---|
| 36 | D NOPE
|
|---|
| 37 | D COMMON
|
|---|
| 38 | D DEA
|
|---|
| 39 | D MF
|
|---|
| 40 | K PSSHUIDG
|
|---|
| 41 | D DRG^PSSHUIDG(DISPDRG,PSSNEW)
|
|---|
| 42 | L -^PSDRUG(DISPDRG)
|
|---|
| 43 | K FLG3,PSSNEW
|
|---|
| 44 | Q
|
|---|
| 45 |
|
|---|
| 46 | COMMON
|
|---|
| 47 | S DIE="^PSDRUG(",DR="[PSSCOMMON]"
|
|---|
| 48 | D ^DIE
|
|---|
| 49 | Q:$D(Y)!($D(DTOUT))
|
|---|
| 50 | W:'$D(Y) !,"PRICE PER DISPENSE UNIT: "
|
|---|
| 51 | S:'$D(^PSDRUG(DA,660)) $P(^PSDRUG(DA,660),"^",6)=""
|
|---|
| 52 | W:'$D(Y) $P(^PSDRUG(DA,660),"^",6)
|
|---|
| 53 | D DEA
|
|---|
| 54 | D CK
|
|---|
| 55 | D ASKND
|
|---|
| 56 | D OIKILL^PSSDEE1
|
|---|
| 57 | D COMMON1
|
|---|
| 58 | Q
|
|---|
| 59 |
|
|---|
| 60 | COMMON1
|
|---|
| 61 | W !,"Just a reminder...you are editing ",$P(^PSDRUG(DISPDRG,0),"^"),"."
|
|---|
| 62 | S (PSSVVDA,DA)=DISPDRG
|
|---|
| 63 | D DOSN^PSSDOS
|
|---|
| 64 | S DA=PSSVVDA
|
|---|
| 65 | K PSSVVDA
|
|---|
| 66 | D USE
|
|---|
| 67 | D APP
|
|---|
| 68 | D ORDITM^PSSDEE1
|
|---|
| 69 | Q
|
|---|
| 70 |
|
|---|
| 71 | CK
|
|---|
| 72 | D DSPY^PSSDEE1
|
|---|
| 73 | S FLGNDF=0
|
|---|
| 74 | Q
|
|---|
| 75 |
|
|---|
| 76 | ASKND
|
|---|
| 77 | ;"Purpose: allow user to match to National Drug File
|
|---|
| 78 | S %=-1
|
|---|
| 79 | I $D(^XUSEC("PSNMGR",DUZ)) do
|
|---|
| 80 | . D MESSAGE^PSSDEE1
|
|---|
| 81 | . W !!,"Do you wish to match/rematch to NATIONAL DRUG file"
|
|---|
| 82 | . S %=1
|
|---|
| 83 | . S:FLGMTH=1 %=2
|
|---|
| 84 | . D YN^DICN
|
|---|
| 85 | I %=0 W !,"If you answer ""yes"", you will attempt to match to NDF." G ASKND
|
|---|
| 86 | I %=2 K X,Y Q
|
|---|
| 87 | I %<0 K X,Y Q
|
|---|
| 88 | I %=1 do
|
|---|
| 89 | . D EN1^PSSUTIL(DISPDRG,1)
|
|---|
| 90 | . D RSET^PSSDEE1
|
|---|
| 91 | . S X="PSNOUT"
|
|---|
| 92 | . X ^%ZOSF("TEST") I D REACT1^PSNOUT
|
|---|
| 93 | . S DA=DISPDRG
|
|---|
| 94 | . I $D(^PSDRUG(DA,"ND")),$P(^PSDRUG(DA,"ND"),"^",2)]"" D ONE
|
|---|
| 95 | Q
|
|---|
| 96 |
|
|---|
| 97 |
|
|---|
| 98 | ONE
|
|---|
| 99 | S PSNP=$G(^PSDRUG(DA,"I"))
|
|---|
| 100 | I PSNP,PSNP<DT Q
|
|---|
| 101 | W !,"You have just VERIFIED this match and MERGED the entry."
|
|---|
| 102 | D CKDF
|
|---|
| 103 | D EN2^PSSUTIL(DISPDRG,1)
|
|---|
| 104 | S:'$D(OLDDF) OLDDF=""
|
|---|
| 105 | I OLDDF'=NEWDF S FLGNDF=1 D WR
|
|---|
| 106 | Q
|
|---|
| 107 |
|
|---|
| 108 | CKDF
|
|---|
| 109 | S NWND=^PSDRUG(DA,"ND")
|
|---|
| 110 | S NWPC1=$P(NWND,"^",1)
|
|---|
| 111 | S NWPC3=$P(NWND,"^",3)
|
|---|
| 112 | S DA=NWPC1
|
|---|
| 113 | S K=NWPC3
|
|---|
| 114 | S X=$$PSJDF^PSNAPIS(DA,K)
|
|---|
| 115 | S NEWDF=$P(X,"^",2)
|
|---|
| 116 | S DA=DISPDRG
|
|---|
| 117 | N PSSK
|
|---|
| 118 | D PKIND^PSSDDUT2
|
|---|
| 119 | Q
|
|---|
| 120 |
|
|---|
| 121 | NOPE
|
|---|
| 122 | S ZAPFLG=0
|
|---|
| 123 | I '$D(^PSDRUG(DA,"ND")),$D(^PSDRUG(DA,2)),$P(^PSDRUG(DA,2),"^",1)']"" D DFNULL
|
|---|
| 124 | I '$D(^PSDRUG(DA,"ND")),'$D(^PSDRUG(DA,2)) D DFNULL
|
|---|
| 125 | I $D(^PSDRUG(DA,"ND")),$P(^PSDRUG(DA,"ND"),"^",2)']"",$D(^PSDRUG(DA,2)),$P(^PSDRUG(DA,2),"^",1)']"" D DFNULL
|
|---|
| 126 | Q
|
|---|
| 127 |
|
|---|
| 128 | DFNULL
|
|---|
| 129 | S OLDDF=""
|
|---|
| 130 | S ZAPFLG=1
|
|---|
| 131 | Q
|
|---|
| 132 |
|
|---|
| 133 | ZAPIT
|
|---|
| 134 | I $D(ZAPFLG),ZAPFLG=1,FLGNDF=1,OLDDF'=NEWDF D CKIV^PSSDEE1
|
|---|
| 135 | Q
|
|---|
| 136 |
|
|---|
| 137 | APP
|
|---|
| 138 | W !!,"MARK THIS DRUG AND EDIT IT FOR: "
|
|---|
| 139 | D CHOOSE
|
|---|
| 140 | Q
|
|---|
| 141 |
|
|---|
| 142 | CHOOSE
|
|---|
| 143 | I $D(^XUSEC("PSORPH",DUZ))!($D(^XUSEC("PSXCMOPMGR",DUZ))) W !,"O - Outpatient" S FLG1=1
|
|---|
| 144 | I $D(^XUSEC("PSJU MGR",DUZ)) W !,"U - Unit Dose" S FLG2=1
|
|---|
| 145 | I $D(^XUSEC("PSJI MGR",DUZ)) W !,"I - IV" S FLG3=1
|
|---|
| 146 | I $D(^XUSEC("PSGWMGR",DUZ)) W !,"W - Ward Stock" S FLG4=1
|
|---|
| 147 | I $D(^XUSEC("PSAMGR",DUZ))!($D(^XUSEC("PSA ORDERS",DUZ))) W !,"D - Drug Accountability" S FLG5=1
|
|---|
| 148 | I $D(^XUSEC("PSDMGR",DUZ)) W !,"C - Controlled Substances" S FLG6=1
|
|---|
| 149 | I $D(^XUSEC("PSORPH",DUZ)) W !,"X - Non-VA Med" S FLG7=1
|
|---|
| 150 | I FLG1,FLG2,FLG3,FLG4,FLG5,FLG6 S FLAG=1
|
|---|
| 151 | I FLAG W !,"A - ALL"
|
|---|
| 152 | W !
|
|---|
| 153 | I 'FLG1,'FLG2,'FLG3,'FLG4,'FLG5,'FLG6,'FLG7 do Q
|
|---|
| 154 | . W !,"You do not have the proper keys to continue. Sorry, this concludes your editing session.",!
|
|---|
| 155 | . S FLGKY=1
|
|---|
| 156 | . K DIRUT,X
|
|---|
| 157 | I FLGKY'=1 D
|
|---|
| 158 | . K DIR
|
|---|
| 159 | . S DIR(0)="FO^1:30"
|
|---|
| 160 | . S DIR("A")="Enter your choice(s) separated by commas "
|
|---|
| 161 | . F D ^DIR Q:$$CHECK($$UP^XLFSTR(X))
|
|---|
| 162 | . S PSSANS=X
|
|---|
| 163 | . S PSSANS=$$UP^XLFSTR(PSSANS)
|
|---|
| 164 | . D BRANCH
|
|---|
| 165 | . D BRANCH1
|
|---|
| 166 | Q
|
|---|
| 167 |
|
|---|
| 168 | CHECK(X) ;" Validates Application Use response
|
|---|
| 169 | N CHECK,I,C
|
|---|
| 170 | S CHECK=1
|
|---|
| 171 | I X=""!(Y["^")!($D(DIRUT)) Q CHECK
|
|---|
| 172 | F I=1:1:$L(X,",") D
|
|---|
| 173 | . S C=$P(X,",",I)
|
|---|
| 174 | . W !?43,C," - "
|
|---|
| 175 | . I C="O",FLG1 W "Outpatient" Q
|
|---|
| 176 | . I C="U",FLG2 W "Unit Dose" Q
|
|---|
| 177 | . I C="I",FLG3 W "IV" Q
|
|---|
| 178 | . I C="W",FLG4 W "Ward Stock" Q
|
|---|
| 179 | . I C="D",FLG5 W "Drug Accountability" Q
|
|---|
| 180 | . I C="C",FLG6 W "Controlled Substances" Q
|
|---|
| 181 | . I C="X",FLG7 W "Non-VA Med" Q
|
|---|
| 182 | . W "Invalid Entry",$C(7)
|
|---|
| 183 | . S CHECK=0
|
|---|
| 184 | Q CHECK
|
|---|
| 185 |
|
|---|
| 186 | BRANCH
|
|---|
| 187 | D:PSSANS["O" OP
|
|---|
| 188 | D:PSSANS["U" UD
|
|---|
| 189 | D:PSSANS["I" IV
|
|---|
| 190 | D:PSSANS["W" WS
|
|---|
| 191 | D:PSSANS["D" DACCT
|
|---|
| 192 | D:PSSANS["C" CS
|
|---|
| 193 | D:PSSANS["X" NVM
|
|---|
| 194 | Q
|
|---|
| 195 |
|
|---|
| 196 | BRANCH1
|
|---|
| 197 | I FLAG,PSSANS["A" do
|
|---|
| 198 | . D OP
|
|---|
| 199 | . D UD
|
|---|
| 200 | . D IV
|
|---|
| 201 | . D WS
|
|---|
| 202 | . D DACCT
|
|---|
| 203 | . D CS
|
|---|
| 204 | . D NVM
|
|---|
| 205 | Q
|
|---|
| 206 |
|
|---|
| 207 | OP I FLG1 D
|
|---|
| 208 | . W !,"** You are NOW editing OUTPATIENT fields. **"
|
|---|
| 209 | . S PSIUDA=DA,PSIUX="O^Outpatient Pharmacy"
|
|---|
| 210 | . D ^PSSGIU
|
|---|
| 211 | . I %=1 D
|
|---|
| 212 | . . S DIE="^PSDRUG(",DR="[PSSOP]"
|
|---|
| 213 | . . D ^DIE K DIR
|
|---|
| 214 | . . D OPEI,ASKCMOP
|
|---|
| 215 | . . D OPEI
|
|---|
| 216 | . . D ASKCMOP
|
|---|
| 217 | . . S X="PSOCLO1"
|
|---|
| 218 | . . X ^%ZOSF("TEST") I D ASKCLOZ S FLGOI=1
|
|---|
| 219 | I FLG1 D CKCMOP
|
|---|
| 220 | Q
|
|---|
| 221 |
|
|---|
| 222 | CKCMOP
|
|---|
| 223 | I $P($G(^PSDRUG(DISPDRG,2)),"^",3)'["O" do
|
|---|
| 224 | . S:$D(^PSDRUG(DISPDRG,3)) $P(^PSDRUG(DISPDRG,3),"^",1)=0
|
|---|
| 225 | . K:$D(^PSDRUG("AQ",DISPDRG)) ^PSDRUG("AQ",DISPDRG)
|
|---|
| 226 | . S DA=DISPDRG
|
|---|
| 227 | . D ^PSSREF
|
|---|
| 228 | Q
|
|---|
| 229 |
|
|---|
| 230 | UD
|
|---|
| 231 | I FLG2 do
|
|---|
| 232 | . W !,"** You are NOW editing UNIT DOSE fields. **"
|
|---|
| 233 | . S PSIUDA=DA,PSIUX="U^Unit Dose"
|
|---|
| 234 | . D ^PSSGIU
|
|---|
| 235 | . I %=1 do
|
|---|
| 236 | . . S DIE="^PSDRUG(",DR="62.05;212.2"
|
|---|
| 237 | . . D ^DIE
|
|---|
| 238 | . . S DIE="^PSDRUG(",DR="212",DR(2,50.0212)=".01;1"
|
|---|
| 239 | . . D ^DIE
|
|---|
| 240 | . . S FLGOI=1
|
|---|
| 241 | Q
|
|---|
| 242 |
|
|---|
| 243 | IV
|
|---|
| 244 | I FLG3 do
|
|---|
| 245 | . W !,"** You are NOW editing IV fields. **"
|
|---|
| 246 | . S (PSIUDA,PSSDA)=DA,PSIUX="I^IV"
|
|---|
| 247 | . D ^PSSGIU
|
|---|
| 248 | . I %=1 do
|
|---|
| 249 | . . D IV1
|
|---|
| 250 | . . S FLGOI=1
|
|---|
| 251 | Q
|
|---|
| 252 |
|
|---|
| 253 | IV1
|
|---|
| 254 | K PSSIVOUT ;"This variable controls the selection process loop.
|
|---|
| 255 | W !,"Edit Additives or Solutions: "
|
|---|
| 256 | K DIR
|
|---|
| 257 | S DIR(0)="SO^A:ADDITIVES;S:SOLUTIONS;"
|
|---|
| 258 | D ^DIR Q:$D(DIRUT)
|
|---|
| 259 | S PSSASK=Y(0)
|
|---|
| 260 | D:PSSASK="ADDITIVES" ENA^PSSVIDRG
|
|---|
| 261 | D:PSSASK="SOLUTIONS" ENS^PSSVIDRG
|
|---|
| 262 | I '$D(PSSIVOUT) G IV1
|
|---|
| 263 | K PSSIVOUT
|
|---|
| 264 | Q
|
|---|
| 265 |
|
|---|
| 266 | WS
|
|---|
| 267 | I FLG4 do
|
|---|
| 268 | . W !,"** You are NOW editing WARD STOCK fields. **"
|
|---|
| 269 | . S DIE="^PSDRUG(",DR="300;301;302"
|
|---|
| 270 | . D ^DIE
|
|---|
| 271 | Q
|
|---|
| 272 |
|
|---|
| 273 | DACCT
|
|---|
| 274 | I FLG5 do
|
|---|
| 275 | . W !,"** You are NOW editing DRUG ACCOUNTABILITY fields. **"
|
|---|
| 276 | . S DIE="^PSDRUG(",DR="441"
|
|---|
| 277 | . D ^DIE
|
|---|
| 278 | . S DIE="^PSDRUG(",DR="9",DR(2,50.1)="1;2;400;401;402;403;404;405"
|
|---|
| 279 | . D ^DIE
|
|---|
| 280 | Q
|
|---|
| 281 |
|
|---|
| 282 | CS
|
|---|
| 283 | I FLG6 do
|
|---|
| 284 | . W !,"** You are NOW Marking/Unmarking for CONTROLLED SUBS. **"
|
|---|
| 285 | . S PSIUDA=DA,PSIUX="N^Controlled Substances"
|
|---|
| 286 | . D ^PSSGIU
|
|---|
| 287 | Q
|
|---|
| 288 |
|
|---|
| 289 | NVM
|
|---|
| 290 | I FLG7 do
|
|---|
| 291 | . W !,"** You are NOW Marking/Unmarking for NON-VA MEDS. **"
|
|---|
| 292 | . S PSIUDA=DA,PSIUX="X^Non-VA Med"
|
|---|
| 293 | . D ^PSSGIU
|
|---|
| 294 | Q
|
|---|
| 295 |
|
|---|
| 296 | ASKCMOP
|
|---|
| 297 | I $D(^XUSEC("PSXCMOPMGR",DUZ)) do
|
|---|
| 298 | . W !!,"Do you wish to mark to transmit to CMOP? "
|
|---|
| 299 | . K DIR
|
|---|
| 300 | . S DIR(0)="Y"
|
|---|
| 301 | . S DIR("?")="If you answer ""yes"", you will attempt to mark this drug to transmit to CMOP."
|
|---|
| 302 | D ^DIR
|
|---|
| 303 | I "Nn"[X K X,Y,DIRUT Q
|
|---|
| 304 | I "Yy"[X do
|
|---|
| 305 | . S PSXFL=0
|
|---|
| 306 | . D TEXT^PSSMARK
|
|---|
| 307 | . H 7
|
|---|
| 308 | . N PSXUDA
|
|---|
| 309 | . S (PSXUM,PSXUDA)=DA
|
|---|
| 310 | . S PSXLOC=$P(^PSDRUG(DA,0),"^")
|
|---|
| 311 | . S PSXGOOD=0,PSXF=0,PSXBT=0
|
|---|
| 312 | . D BLD^PSSMARK
|
|---|
| 313 | . D PICK2^PSSMARK
|
|---|
| 314 | . S DA=PSXUDA
|
|---|
| 315 | Q
|
|---|
| 316 |
|
|---|
| 317 | ASKCLOZ
|
|---|
| 318 | W !!,"Do you wish to mark/unmark as a LAB MONITOR or CLOZAPINE DRUG? "
|
|---|
| 319 | K DIR
|
|---|
| 320 | S DIR(0)="Y"
|
|---|
| 321 | S DIR("?")="If you answer ""yes"", you will have the opportunity to edit LAB MONITOR or CLOZAPINE fields."
|
|---|
| 322 | D ^DIR
|
|---|
| 323 | I "Nn"[X K X,Y,DIRUT Q
|
|---|
| 324 | I "Yy"[X do
|
|---|
| 325 | . S NFLAG=0
|
|---|
| 326 | . D MONCLOZ
|
|---|
| 327 | Q
|
|---|
| 328 |
|
|---|
| 329 | MONCLOZ
|
|---|
| 330 | K PSSAST
|
|---|
| 331 | D FLASH
|
|---|
| 332 | W !,"Mark/Unmark for Lab Monitor or Clozapine: "
|
|---|
| 333 | K DIR
|
|---|
| 334 | S DIR(0)="S^L:LAB MONITOR;C:CLOZAPINE;"
|
|---|
| 335 | D ^DIR
|
|---|
| 336 | Q:$D(DIRUT)
|
|---|
| 337 | S PSSAST=Y(0)
|
|---|
| 338 | D:PSSAST="LAB MONITOR" ^PSSLAB
|
|---|
| 339 | D:PSSAST="CLOZAPINE" CLOZ
|
|---|
| 340 | Q
|
|---|
| 341 |
|
|---|
| 342 | FLASH K LMFLAG,CLFALG,WHICH S WHICH=$P($G(^PSDRUG(DISPDRG,"CLOZ1")),"^"),LMFLAG=0,CLFLAG=0
|
|---|
| 343 | I WHICH="PSOCLO1" S CLFLAG=1
|
|---|
| 344 | I WHICH'="PSOCLO1" S:WHICH'="" LMFLAG=1
|
|---|
| 345 | Q
|
|---|
| 346 |
|
|---|
| 347 | CLOZ
|
|---|
| 348 | Q:NFLAG
|
|---|
| 349 | Q:$D(DTOUT)
|
|---|
| 350 | Q:$D(DIRUT)
|
|---|
| 351 | Q:$D(DUOUT)
|
|---|
| 352 | W !,"** You are NOW editing CLOZAPINE fields. **"
|
|---|
| 353 | D ^PSSCLDRG
|
|---|
| 354 | Q
|
|---|
| 355 |
|
|---|
| 356 | USE
|
|---|
| 357 | K PACK
|
|---|
| 358 | S PACK=""
|
|---|
| 359 | S:$P($G(^PSDRUG(DISPDRG,"PSG")),"^",2)]"" PACK="W"
|
|---|
| 360 | I $D(^PSDRUG(DISPDRG,2)) S PACK=PACK_$P(^PSDRUG(DISPDRG,2),"^",3)
|
|---|
| 361 | I PACK'="" D
|
|---|
| 362 | .W $C(7)
|
|---|
| 363 | .N XX
|
|---|
| 364 | .W !!
|
|---|
| 365 | .F XX=1:1:79 W "*"
|
|---|
| 366 | .W !,"This entry is marked for the following PHARMACY packages: "
|
|---|
| 367 | .D USE1
|
|---|
| 368 | Q
|
|---|
| 369 |
|
|---|
| 370 | USE1
|
|---|
| 371 | W:PACK["O" !," Outpatient"
|
|---|
| 372 | W:PACK["U" !," Unit Dose"
|
|---|
| 373 | W:PACK["I" !," IV"
|
|---|
| 374 | W:PACK["W" !," Ward Stock"
|
|---|
| 375 | W:PACK["D" !," Drug Accountability"
|
|---|
| 376 | W:PACK["N" !," Controlled Substances"
|
|---|
| 377 | W:PACK["X" !," Non-VA Med"
|
|---|
| 378 | W:'$D(PACK) !," NONE"
|
|---|
| 379 | I PACK'["O",PACK'["U",PACK'["I",PACK'["W",PACK'["D",PACK'["N",PACK'["X" W !," NONE"
|
|---|
| 380 | Q
|
|---|
| 381 |
|
|---|
| 382 | WR
|
|---|
| 383 | I ^XMB("NETNAME")'["CMOP-" do
|
|---|
| 384 | . if OLDDF="" quit
|
|---|
| 385 | . W !,"The dosage form has changed from "_OLDDF_" to "_NEWDF_" due to",!
|
|---|
| 386 | . W "You will need to rematch to Orderable Item.",!
|
|---|
| 387 | Q
|
|---|
| 388 |
|
|---|
| 389 | PRIMDRG
|
|---|
| 390 | I $D(^PS(59.7,1,20)),$P(^PS(59.7,1,20),"^",1)=4!($P(^PS(59.7,1,20),"^",1)=4.5) do
|
|---|
| 391 | . I $D(^PSDRUG(DISPDRG,2)) do
|
|---|
| 392 | . . S VAR=$P(^PSDRUG(DISPDRG,2),"^",3)
|
|---|
| 393 | . . I VAR["U"!(VAR["I") D PRIM1
|
|---|
| 394 | Q
|
|---|
| 395 |
|
|---|
| 396 | PRIM1
|
|---|
| 397 | W !!,"You need to match this drug to ""PRIMARY DRUG"" file as well.",!
|
|---|
| 398 | S DIE="^PSDRUG(",DR="64",DA=DISPDRG
|
|---|
| 399 | D ^DIE
|
|---|
| 400 | K VAR
|
|---|
| 401 | Q
|
|---|
| 402 |
|
|---|
| 403 | MF
|
|---|
| 404 | I $P($G(^PS(59.7,1,80)),"^",2)>1 do
|
|---|
| 405 | . I $D(^PSDRUG(DISPDRG,2)) do
|
|---|
| 406 | . . S PSSOR=$P(^PSDRUG(DISPDRG,2),"^",1)
|
|---|
| 407 | . . I PSSOR]"" DO
|
|---|
| 408 | . . . DO EN^PSSPOIDT(PSSOR)
|
|---|
| 409 | . . . DO EN2^PSSHL1(PSSOR,"MUP")
|
|---|
| 410 | Q
|
|---|
| 411 |
|
|---|
| 412 | MFA
|
|---|
| 413 | I $P($G(^PS(59.7,1,80)),"^",2)>1 do
|
|---|
| 414 | . S PSSOR=$P(^PS(52.6,ENTRY,0),"^",11)
|
|---|
| 415 | . S PSSDD=$P(^PS(52.6,ENTRY,0),"^",2)
|
|---|
| 416 | . I PSSOR]"" do
|
|---|
| 417 | . . D EN^PSSPOIDT(PSSOR)
|
|---|
| 418 | . . D EN2^PSSHL1(PSSOR,"MUP")
|
|---|
| 419 | . . D MFDD
|
|---|
| 420 | Q
|
|---|
| 421 |
|
|---|
| 422 | MFS
|
|---|
| 423 | I $P($G(^PS(59.7,1,80)),"^",2)>1 do
|
|---|
| 424 | . S PSSOR=$P(^PS(52.7,ENTRY,0),"^",11)
|
|---|
| 425 | . S PSSDD=$P(^PS(52.7,ENTRY,0),"^",2)
|
|---|
| 426 | . I PSSOR]"" do
|
|---|
| 427 | . . D EN^PSSPOIDT(PSSOR)
|
|---|
| 428 | . . D EN2^PSSHL1(PSSOR,"MUP")
|
|---|
| 429 | . . D MFDD
|
|---|
| 430 | Q
|
|---|
| 431 |
|
|---|
| 432 | MFDD
|
|---|
| 433 | I $D(^PSDRUG(PSSDD,2)) do
|
|---|
| 434 | . S PSSOR=$P(^PSDRUG(PSSDD,2),"^",1)
|
|---|
| 435 | . I PSSOR]"" do
|
|---|
| 436 | . . D EN^PSSPOIDT(PSSOR)
|
|---|
| 437 | . . do EN2^PSSHL1(PSSOR,"MUP")
|
|---|
| 438 | Q
|
|---|
| 439 |
|
|---|
| 440 | OPEI
|
|---|
| 441 | I $D(^PSDRUG(DISPDRG,"ND")),$P(^PSDRUG(DISPDRG,"ND"),"^",10)]"" do
|
|---|
| 442 | . S DIE="^PSDRUG(",DR="28",DA=DISPDRG
|
|---|
| 443 | . D ^DIE
|
|---|
| 444 | Q
|
|---|
| 445 |
|
|---|
| 446 | DEA ;
|
|---|
| 447 | I $P($G(^PSDRUG(DISPDRG,3)),"^")=1,($P(^PSDRUG(DISPDRG,0),"^",3)[1!($P(^(0),"^",3)[2)) do
|
|---|
| 448 | . D DSH
|
|---|
| 449 | Q
|
|---|
| 450 |
|
|---|
| 451 | DSH
|
|---|
| 452 | W !!,"****************************************************************************"
|
|---|
| 453 | W !,"This entry contains a ""1"" or a ""2"" in the ""DEA, SPECIAL HDLG""",!
|
|---|
| 454 | W "field, therefore this item has been UNMARKED for CMOP transmission."
|
|---|
| 455 | W !,"****************************************************************************",!
|
|---|
| 456 | S $P(^PSDRUG(DISPDRG,3),"^")=0
|
|---|
| 457 | K ^PSDRUG("AQ",DISPDRG)
|
|---|
| 458 | S DA=DISPDRG
|
|---|
| 459 | N %
|
|---|
| 460 | D ^PSSREF
|
|---|
| 461 | Q
|
|---|