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

PSGOE41.m

Go to the documentation of this file.
  1. PSGOE41 ;BIR/CML3-REGULAR ORDER ENTRY (CONT.) ;09 JAN 97 / 9:13 AM
  1. ;;5.0; INPATIENT MEDICATIONS ;**50,63,64,69,58,111,136**;16 DEC 97
  1. ;
  1. ; Reference to %DT is supported by DBIA 10003.
  1. ; Reference to %DTC is supported by DBIA 10000.
  1. ; Reference to ^DICN is supported by DBIA 10009.
  1. ;
  1. 39 ; admin times
  1. G:$P(PSGNEDFD,"^",3)="P" 8
  1. I $$ODD^PSGS0(PSGS0XT) G 8
  1. W !,"ADMIN TIMES: "_$S(PSGS0Y:PSGS0Y_"// ",1:"") R X:DTIME I X="^"!'$T W:'$T $C(7) S PSGOROE1=1 G DONE
  1. I X="",($G(PSGS0XT)'="D") S PSGFOK(39)="" G 8
  1. I X="",$G(PSGS0XT)="D" I $L(PSGSCH,"@")=2,$P(PSGSCH,"@",2) S (PSGAT,PSGS0Y)=$P(PSGSCH,"@",2) G 8
  1. S PSGF2=39 I $E(X)="^" D FF G:Y>0 @Y G 39
  1. I (PSGS0XT="D")&('$G(X)!(X["@"&($P($G(X),"@",2)))) I ((",P,R,")'[(","_$G(PSGST)_",")) D G 39
  1. .W $C(7)," ??" S X="?" W !,"This is a 'DAY OF THE WEEK' schedule and MUST have admin times." D ENHLP^PSGOEM(53.1,39)
  1. ;I X="@",'PSGS0Y!(PSGS0XT="D")!(PSGSCH["@") W $C(7)," ??" S X="?" W:PSGS0XT="D"!(PSGSCH["@") !,"This is a 'DAY OF THE WEEK' schedule and MUST have admin times." D ENHLP^PSGOEM(53.1,39) G 39
  1. I X="@" D DEL G:%'=1 39 S (PSGFOK(39),PSGS0Y)="" G 8
  1. I X?1."?" D ENHLP^PSGOEM(53.1,39) G 39
  1. D ENCHK^PSGS0 I '$D(X) W $C(7)," ??" S X="?" D ENHLP^PSGOEM(53.1,39) G 39
  1. S (PSGAT,PSGS0Y)=X,PSGFOK(39)=""
  1. ;
  1. 8 ; special instructions
  1. W !,"SPECIAL INSTRUCTIONS: "_$S(PSGSI]"":$P(PSGSI,"^")_"// ",1:"") R X:DTIME I X="^"!'$T W:'$T $C(7) S PSGOROE1=1 G DONE
  1. I X="" S X=PSGSI I X="" S PSGFOK(8)="" G:'$G(PSGOE3) 10
  1. S PSGF2=8 I $E(X)="^" D FF G:Y>0 @Y G 8
  1. I X="@",PSGSI="" W $C(7)," ??" S X="?" D ENHLP^PSGOEM(53.1,8) G 8
  1. I X="@" D DEL G:%'=1 8 S (PSGFOK(8),PSGSI)="" G:'$G(PSGOE3) 10
  1. I X?1."?" D ENHLP^PSGOEM(53.1,8) G 8
  1. D ^PSGSICHK I '$D(X) W $C(7)," ??" S X="?" D ENHLP^PSGOEM(53.1,8) G 8
  1. S PSGSI=X I PSGSI]"" S PSGSI=$$ENBCMA^PSJUTL("U"),PSGFOK(8)=""
  1. Q:$G(PSGOE3)
  1. ;
  1. 10 ; start date/time
  1. D ^PSGNE3
  1. S:'$D(PSGNESDO) PSGNESDO=$$ENDD^PSGMI(PSGNESD) S PSGSD=PSGNESDO
  1. A10 W !,"START DATE/TIME: "_PSGSD_"// " R X:DTIME I X="^"!'$T W:'$T $C(7) S PSGOROE1=1 G DONE
  1. I X="",PSGNESD W " "_PSGSD G O25
  1. I X="P" D ENPREV^PSGDL W:'$D(X) $C(7) G:'$D(X) A10 S PSGNESD=+X,PSGSD=$$ENDD^PSGMI(+X) W " ",PSGSD G O25
  1. S PSGF2=10 I X="@"!(X?1."?") W:X="@" $C(7)," (Required)" S:X="@" X="?" D ENHLP^PSGOEM(53.1,10)
  1. I $E(X)="^" D FF G:Y>0 @Y G A10
  1. NEW TMPX S TMPX=X,X1=PSGDT,X2=-7 D C^%DTC K %DT S %DT="ERTX",%DT(0)=X,X=TMPX D ^%DT K %DT I Y'>0 D ENHLP^PSGOEM(53.1,10) G A10
  1. S PSGNESD=+Y,PSGSD=$$ENDD^PSGMI(+Y),(PSGNEFD,PSGFD)=""
  1. ;
  1. O25 ;
  1. S PSGFOK(10)="" I $P(PSGNEDFD,"^",3)="O" S PSGNEFD=$$ENOSD^PSJDCU(PSJSYSW0,PSGNESD,PSGP) I PSGNEFD]"" S PSGFD=$$ENDD^PSGMI(PSGNEFD)
  1. ;
  1. 25 ; stop date
  1. Q:$G(PSGOE3)
  1. I 'PSGNEFD D ENFD^PSGNE3(PSGDT) S PSGFD=PSGNEFDO
  1. A25 W !,"STOP DATE/TIME: "_$S(PSGFD]"":PSGFD_"// ",1:"") R X:DTIME I X="^"!'$T W:'$T $C(7) S PSGOROE1=1 G DONE
  1. I X="",PSGNEFD W " "_PSGFD S PSGFOK(25)="" G W25
  1. S PSGF2=25 I $E(X)="^" D FF G:Y>0 @Y G A25
  1. ;I X=+X,(X'>0) S X="?"
  1. I X="@"!(X?1."?") W:X="@" $C(7)," (Required)" S:X="@" X="?" D ENHLP^PSGOEM(53.1,25)
  1. I X=+X,(X>0),(X'>2000000) G A25:'$$ENDL^PSGDL(PSGSCH,X) K PSGDLS S PSGDL=X W " ...dose limit..." D EN1^PSGDL
  1. K %DT S %DT="ERTX",%DT(0)=PSGNESD D ^%DT K %DT G:Y'>0 A25 S PSGNEFD=+Y,PSGFD=$$ENDD^PSGMI(+Y),PSGFOK(25)=""
  1. W25 I PSGNEFD<PSGDT W $C(7),!!?13,"*** WARNING! THE STOP DATE ENTERED IS IN THE PAST! ***",!
  1. ;Display Expected First Dose;BHW;PSJ*5*136
  1. D EFDNEW^PSJUTL
  1. ;
  1. NEXT ;
  1. ;G:$S($D(PSJOERR):0,+PSJSYSU=3:1,1:'$P(PSJSYSU,";",2)) 1^PSGOE42 G:$P(PSJSYSW0,"^",24) 5^PSGOE42 G:PSGOEORF&'$P(PSJSYSU,";",2) 106^PSGOE42
  1. G 1^PSGOE42
  1. ;
  1. DONE ;
  1. I PSGOROE1 K Y W $C(7)," ...order not entered..."
  1. K F,F0,F1,PSGF2,F3,PSG,SDT Q
  1. ;
  1. FF ; up-arrow to another field
  1. D ENFF^PSGOEM I Y>0,Y'=39,Y'=8,Y'=10,Y'=25 S Y=Y_"^PSGOE4"_$S("^109^13^3^7^26^"[("^"_Y_"^"):"",1:2) S:$P(Y,U)=2 FB=PSGF2_"^PSGOE41"
  1. Q
  1. ;
  1. DEL ; delete entry
  1. W !?3,"SURE YOU WANT TO DELETE" S %=0 D YN^DICN I %'=1 W $C(7)," <NOTHING DELETED>"
  1. Q