Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: PSBODO

PSBODO.m

Go to the documentation of this file.
  1. PSBODO ;BIRMINGHAM/EFC-BCMA UNIT DOSE VIRTUAL DUE LIST FUNCTIONS ;Mar 2004
  1. ;;3.0;BAR CODE MED ADMIN;**5,21,24,38**;Mar 2004;Build 8
  1. ;Per VHA Directive 2004-038, this routine should not be modified.
  1. ;
  1. ; Reference/IA
  1. ; EN^PSJBCMA2/2830
  1. EN ;
  1. ;
  1. ; Description:
  1. ; Returns a display for a selected order when double clicked on the VDL
  1. ;
  1. N PSBGBL,DFN
  1. S PSBGBL=$NAME(^TMP("PSBO",$J,"B"))
  1. F S PSBGBL=$Q(@PSBGBL) Q:PSBGBL="" Q:$QS(PSBGBL,2)'=$J Q:$QS(PSBGBL,1)'["PSBO" D
  1. .S DFN=$QS(PSBGBL,5)
  1. .D DISPORD
  1. Q
  1. ;
  1. DISPORD ;
  1. N PSBGBL,PSBOI,PSBHDR,PSJGLO
  1. S PSBOI=$$GET1^DIQ(53.69,PSBRPT_",",.09)
  1. D EN^PSJBCMA2(DFN,PSBOI)
  1. S PSJGLO="^TMP(""PSJ"""_","_$J
  1. D CLEAN^PSBVT
  1. D PSJ1^PSBVT(DFN,PSBOI)
  1. S PSBHDR(1)="BCMA - Display Order" D PT^PSBOHDR(DFN,.PSBHDR) W !
  1. I '$G(PSBONX) W !,"Invalid Order"
  1. D:$G(PSBONX)
  1. .W !,"Orderable Item: ",PSBOITX
  1. .I PSBONX["V" W !,"Infusion Rate: ",PSBIFR
  1. .I PSBONX'["V" W !,"Dosage Ordered: ",PSBDOSE
  1. .W ?40,"Start: ",PSBOSTX
  1. .W !?40,"Stop: ",PSBOSPX
  1. .W !,"Med Route: ",PSBMR
  1. .W !,"Schedule Type: ",PSBSCHTX
  1. .I PSBONX'["V" W ?40,"Self Med: ",PSBSMX
  1. .W:PSBSM !?40,"Hosp Sup: ",PSBSMX
  1. .W:PSBSCH'="" !,"Schedule: ",PSBSCH
  1. .I PSBONX'["V" W !,"Admin Times: ",PSBADST
  1. .I PSBONX["V",((PSBIVT="P")!(PSBISYR=1)) W !,"Admin Times: ",PSBADST
  1. .W !,"Provider: ",PSBMDX
  1. .I $E(PSBOTXT,1)="!" S $E(PSBOTXT,1)=""
  1. .W !,"Spec Inst: ",PSBOTXT
  1. .W !
  1. .I $D(PSBDDA(1)) D
  1. ..W !,"Dispense Drugs",!,"Drug Name",?40,"Units",?50,"Inactive Date"
  1. ..W !,$TR($J("",75)," ","-")
  1. ..F Y=0:0 S Y=$O(PSBDDA(Y)) Q:'Y D
  1. ...S X=$P(PSBDDA(Y),U,4)
  1. ...W !,$P(PSBDDA(Y),U,3),?40,$S(X]"":X,1:1)
  1. ...S X=$P(PSBDDA(Y),U,5) Q:'X
  1. ...W ?50,$E(X,4,5),"/",$E(X,6,7),"/",(1700+$E(X,1,3))
  1. .I $D(PSBADA(1)) D
  1. ..W !!,"Additives",!,"Name",?40,"Strength"
  1. ..W !,$TR($J("",75)," ","-")
  1. ..F Y=0:0 S Y=$O(PSBADA(Y)) Q:'Y D
  1. ...W !,$P(PSBADA(Y),U,3),?40,$P(PSBADA(Y),U,4)
  1. .I $D(PSBSOLA(1)) D
  1. ..W !!,"Solution",!,"Name",?40,"Volume"
  1. ..W !,$TR($J("",75)," ","-")
  1. ..F Y=0:0 S Y=$O(PSBSOLA(Y)) Q:'Y D
  1. ...W !,$P(PSBSOLA(Y),U,3),?40,$P(PSBSOLA(Y),U,4)
  1. .I $P(@(PSJGLO_","_0_")"),U,1)'=-1 D
  1. ..W !,$TR($J("",75)," ","-")
  1. ..W !,"Pharmacy Activity Log: "
  1. ..F I=1:1:$P(@(PSJGLO_","_0_")"),U,4) D
  1. ...W !?9,"Date: ",$$FMTE^XLFDT($P(@(PSJGLO_","_I_","_1_")"),U,1)),?35,"User: ",$P(@(PSJGLO_","_I_","_1_")"),U,2)
  1. ...W !?5,"Activity: ",$P(@(PSJGLO_","_I_","_1_")"),U,4)
  1. ...I $D(@(PSJGLO_","_I_","_2_")")) W !?8,"Field: ",$P(@(PSJGLO_","_I_","_1_")"),U,3),!?5,"Old Data: ",@(PSJGLO_","_I_","_2_")")
  1. ...I $D(@(PSJGLO_","_I_","_3_")")) W !?7,"Reason: ",@(PSJGLO_","_I_","_3_")")
  1. ...W !
  1. W !!
  1. D CLEAN^PSBVT K @(PSJGLO_")")
  1. Q