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

RMPFDT7.m

Go to the documentation of this file.
  1. RMPFDT7 ;DDC/KAW-DISPLAY ADJUSTMENTS [ 03/12/98 7:46 AM ]
  1. ;;2.0;REMOTE ORDER/ENTRY SYSTEM;**10**;JUN 16, 1995
  1. ;; input: RMPFX,DFN
  1. ;;output:
  1. Q:'$D(DFN) D PAT^RMPFUTL,HEAD S (F1,RMPFTOT)=0
  1. S S0=^RMPF(791810,RMPFX,0),RMPFTYP=$P(^(0),U,2),RMPFHAT=""
  1. I RMPFTYP,$D(^RMPF(791810.1,RMPFTYP,0)) S RMPFHAT=$P(^(0),U,2)
  1. A1 S F1=$O(^RMPF(791810,RMPFX,101,"AD",F1)) G EXIT:'F1 S (F2,MT)=0
  1. A2 S F2=$O(^RMPF(791810,RMPFX,101,"AD",F1,F2)) I 'F2 D WRITE G END:$D(RMPFOUT),A1
  1. G A2:'$D(^RMPF(791810,RMPFX,101,F2,0)) S S0=^(0),(TT,CN)=0
  1. S (RD,RE,US)="",S9=$G(^RMPF(791810,RMPFX,101,F2,90))
  1. I "OC"[$P(S0,U,15) S RD=$P(^RMPF(791810,RMPFX,0),U,9),US=$P(^(0),U,8) G A3
  1. G NO:S9="" S US=$P(S9,U,1),RD=$P(S9,U,2)
  1. A3 I US,$D(^VA(200,US,0)) S US=$E($P(^(0),U,1),1,14)
  1. I RD S RD=$E(RD,4,5)_"-"_$E(RD,6,7)_"-"_($E(RD,1,3)+1700)
  1. S RE=$P(S9,U,3)
  1. NO S RMPFIT=$P(S0,U,1),RMPFITP=""
  1. I RMPFIT,$D(^RMPF(791811,RMPFIT,0)) S RMPFITP=$P(^(0),U,1)
  1. S RMPFTOE=$P(S0,U,15),RMPFTOE=$S(RMPFTOE="D":"DELETED",RMPFTOE="DC":"CHNG-DL",RMPFTOE="OC":"CHNG-OR",1:"ORDER")
  1. S RMPFCS=$P(S0,U,14),RMPFLR=$P(S0,U,4) S:RMPFHAT="X" RMPFCS=0
  1. I $P(S0,U,15)="C" S RMPFCS=0,CN=1
  1. S:$P(S0,U,15)["D" RMPFCS=-RMPFCS
  1. S RMPFTOT=RMPFTOT+RMPFCS,MT=MT+RMPFCS,TT=TT+RMPFCS
  1. D SUB S (X,CT)=0 F I=1:1 S X=$O(CM(X)) Q:'X S CT=CT+1
  1. I $Y+CT>$S(IOST?1"C-".E:20,1:58) D CONT:IOST?1"C-".E Q:$D(RMPFOUT) D HEAD W !,"(cont.)"
  1. W !,RD,?12,RMPFTOE
  1. W:RMPFHAT'="X" ?21,$E(RMPFITP,1,11)
  1. W ?33,CM,?52,$J(TT,7,2),?62,RMPFLR,?66,$E(US,1,14)
  1. G A2:'$D(CM)
  1. S X=0 F I=1:1 S X=$O(CM(X)) Q:'X S T=$S(CN=0:$P(CM(X),U,4),1:0) W !,$P(CM(X),U,1),?12,$P(CM(X),U,2),?33,$E($P(CM(X),U,3),1,18),?52,$J(T,7,2),?66,$E($P(CM(X),U,5),1,14)
  1. I CN=1 D
  1. .S S3=$G(^RMPF(791810,RMPFX,101,F2,90))
  1. .S X=$P(S3,U,13) I X,$D(^VA(200,X,0)) S X=$P(^(0),U,1)
  1. .S Y=$P(S0,U,17) D DD^%DT S R=$P(S3,U,5)
  1. .W !,"*** CANCELED *** by: ",X,?$X+3,"on ",Y
  1. .W !?13,"Reason: ",R
  1. G A2
  1. SUB S F3=0 K CM S CM=""
  1. B1 S F3=$O(^RMPF(791810,RMPFX,101,F2,102,F3)) G BE:'F3
  1. G B1:'$D(^RMPF(791810,RMPFX,101,F2,102,F3,0)) S S2=^(0)
  1. S C=$P(S2,U,1),T=$P(S2,U,2),P=$P(S2,U,3),L=$P(S2,U,4)
  1. I CN=1 S T=0
  1. I C,$D(^RMPF(791811.2,C,0)) S C=$P(^(0),U,3)
  1. S P=$S(P="A":"ADDED",P="D":"DELETED",1:"ORDER") S:P="DELETED" T=-T
  1. S RMPFTOT=RMPFTOT+T,MT=MT+T
  1. I P["ORDER"!(RMPFTOE="DELETED")!((RMPFTOE="CHNG-DL")&(P="DELETED")) S CM=$S(CM="":C,1:CM_","_C),TT=TT+T G B1
  1. S S=$P(S2,U,5),R=$P(S2,U,6)
  1. I S,$D(^VA(200,S,0)) S S=$P(^(0),U,1)
  1. I R S R=$E(R,4,5)_"-"_$E(R,6,7)_"-"_($E(R,1,3)+1700)
  1. S CM(F3)=R_U_P_U_C_U_T_U_S
  1. G B1
  1. BE K R,P,C,T,S,L Q
  1. EXIT I $Y>$S(IOST?1"C-".E:20,1:58) D CONT:IOST?1"C-".E G END:$D(RMPFOUT) D HEAD W !,"(cont.)"
  1. W ?53,"======",!,"Total Price:",?52,"$",$J(RMPFTOT,6,2)
  1. D CONT1:IOST?1"C-".E W:IOST?1"P-".E @IOF
  1. D:$D(IO("S")) ^%ZISC
  1. END K F2,F2,F3,RMPFTOT,MT,S0,S2,S9,RD,RE,US,RMPFIT,RMPFITP,RMPFTOE,RMPFCS
  1. K RMPFLR,RMPFNAM,RMPFQUT,RMPFSSN,RMPFDOB,RMPFDOD,RMPFOUT,RMPFQUT,T
  1. K S3,%XX,%YY,CT,F1,I,TT,CM,CN,X,Y,R Q
  1. WRITE I $Y>$S(IOST?1"C-".E:20,1:58) D CONT:IOST?1"C-".E Q:$D(RMPFOUT) D HEAD W !,"cont.)"
  1. W !?53,"------",!?52,"$",$J(MT,6,2),! Q
  1. W !,"Station: ",RMPFSTAP,?68,RMPFDAT
  1. W !,"Patient: ",$E(RMPFNAM,1,25),?40,"SSN: ",RMPFSSN,?62,"DOB: ",RMPFDOB
  1. W ! F I=1:1:80 W "-"
  1. W !,?3,"Order",?12,"Type of",?70,"Order"
  1. W !?3,"Date",?13,"Entry",?24,"Model",?36,"Component(s)",?53,"Price",?61,"Ear",?68,"Entered By"
  1. W !,"----------",?12,"-------",?21,"-----------",?33,"------------------",?53,"------",?61,"---",?66,"--------------"
  1. Q
  1. READ K RMPFOUT,RMPFQUT
  1. R Y:DTIME I '$T W *7 R Y:5 G READ:Y="." S:'$T Y=U
  1. I Y?1"^".E S (RMPFOUT,Y)="" Q
  1. S:Y?1"?".E (RMPFQUT,Y)=""
  1. Q
  1. CONT D SPACE
  1. W !,"Type <RETURN> to continue or <^> to exit: " D READ
  1. G CONT:$D(RMPFQUT)
  1. Q
  1. CONT1 D SPACE W !
  1. W !,"Type <RETURN> to continue or <P>rint: " D READ
  1. Q:$D(RMPFOUT) G CONT1:$D(RMPFQUT) Q:Y="" S Y=$E(Y,1)
  1. D QUE:"Pp"[Y Q
  1. SPACE F Q:$Y>21 W !
  1. Q
  1. QUE W ! S %ZIS="QNP" D ^%ZIS G END:POP
  1. I IO=IO(0),'$D(IO("S")) D ^RMPFDT7 G QUEE
  1. I $D(IO("S")) S %ZIS="",IOP=ION D ^%ZIS G ^RMPFDT7
  1. S ZTRTN="^RMPFDT7",ZTSAVE("RMPF*")="",ZTSAVE("DFN")=""
  1. S ZTIO=ION D ^%ZTLOAD
  1. D HOME^%ZIS S RMPFOUT=""
  1. W:$D(ZTSK) !!,"*** Request Queued ***" H 2
  1. QUEE K %T,%ZIS,POP,ZTRTN,ZTSAVE,ZTIO,ZTSK Q