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

AMQQCMPP.m

Go to the documentation of this file.
  1. AMQQCMPP ;IHS/CMI/THL - MANAGES PRINTED REPORTS ;
  1. ;;2.0;IHS PCC SUITE;**2**;MAY 14, 2009
  1. ; CALLS TASKMAN
  1. ;-----
  1. RUN N AMQQRV,AMQQNV,AMQQXV
  1. S (AMQQRV,AMQQNV)="AMQQXV"
  1. S AMQQXV=""
  1. I '$D(AMQQFFF) D SUP I $D(AMQQQUIT) Q
  1. I $D(^XUSEC("AMQQZRPT",DUZ)) S DIR("A")="Enter name of person requesting report",DIR(0)="P^200:AQEM",DIR("B")=$P(@AMQQ200(3)@(DUZ,0),U) D ^DIR S:Y>0 AMQQUSR=+Y K Y,DIRUT,DUOUT,DTOUT,DIR I '$D(AMQQUSR) S AMQQQUIT=1 Q
  1. D DEV
  1. I $D(AMQQQUIT) Q
  1. I '$D(IO("Q")) U IO D TASK D ^%ZISC G EXIT
  1. S ZTRTN="TASK^AMQQCMPP"
  1. S ZTIO=ION
  1. S ZTDTH="NOW"
  1. S ZTDESC="QUERY UTILITY REPORT"
  1. QUEUE ;F I=1:1 S %=$P("AMQV(;AMQQ200(;AMQQRV;AMQQSUPF;AMQQNV;AMQQFFF;AMQQXV;AMQQUSR;^UTILITY(""AMQQ"",$J,;^UTILITY(""AMQQ RAND"",$J,;^UTILITY(""AMQQ TAX"",$J,",";",I) Q:%="" S ZTSAVE(%)=""
  1. F I=1:1 S %=$P("AMQV(;AMQQ200(;AMQQ*;AMQQRV;AMQQSUPF;AMQQNV;AMQQFFF;AMQQXV;AMQQUSR;^UTILITY(""AMQQ"",$J,;^UTILITY(""AMQQ RAND"",$J,;^UTILITY(""AMQQ TAX"",$J,",";",I) Q:%="" S ZTSAVE(%)="" ;PATCH XXX
  1. D ^%ZTLOAD
  1. D ^%ZISC
  1. W !!,$S($D(ZTSK):"Request queued!",1:"Request cancelled!"),!!!
  1. H 3
  1. EXIT K X,Y,%,AMQQSUPF,I,AMQQUSR
  1. W @IOF
  1. Q
  1. ;
  1. DEV W !
  1. S %ZIS="QM"
  1. S %ZIS("B")=""
  1. D ^%ZIS
  1. S AMQQIOP=IO
  1. I POP S AMQQQUIT="" Q
  1. D PRINT^AMQQSEC E W " <= Not a secure device!!",*7 G DEV
  1. I $D(IO("Q")),IO=IO(0) W !!,"You can not queue a job to a slave printer..Try again",!!,*7 G DEV
  1. Q
  1. ;
  1. TASK I '$D(AMQQFFF) D COVER I $D(AMQQQUIT) Q
  1. X AMQV(0)
  1. I '$D(AMQQFFF) W !,"Total: ",+$G(AMQQTOT)
  1. I $E(IOST,1,2)="C-" S DIR(0)="E" D ^DIR K DIR,DUOUT,DTOUT,DIRUT
  1. W @IOF
  1. I $D(ZTQUEUED) D EXIT2^AMQQKILL S ZTREQ="@"
  1. Q
  1. ;
  1. COVER ; - EP -
  1. S %=""
  1. S $P(%,"*",79)=""
  1. W !!!!,%,! K AMQQQUIT
  1. W "** WARNING...The following report may contain CONFIDENTIAL PATIENT DATA. **"
  1. W !,"** You are accountable for keeping the report in a SECURE AREA at all times.**"
  1. W !,"** SHRED the report as soon as it is no longer needed. **"
  1. W !,"** PRIVACY ACT violators are subject to a $5000 fine! **"
  1. W !,%
  1. CV1 S %=$P(@AMQQ200(3)@(DUZ,0),U)
  1. S %=$P(%,",",2,9)_" "_$P(%,",") D
  1. .W !!,"This report ",$S('$D(AMQQUSR)!($G(AMQQUSR)=DUZ):"requested",1:"printed")," by ",%
  1. .I $D(AMQQUSR),AMQQUSR'=DUZ D
  1. ..S %=$P(@AMQQ200(3)@(AMQQUSR,0),U)
  1. ..S %=$P(%,",",2,9)_" "_$P(%,",")
  1. ..W " and requested by ",%
  1. W !,"Date of report: "
  1. S Y=DT
  1. X ^DD("DD")
  1. W Y
  1. W !!
  1. F %=0:0 S %=$O(^UTILITY("AMQQ",$J,"LIST",%)) Q:'% W ! X ^(%)
  1. I $E(IOST,1,2)="C-" W !! S DIR(0)="E" D ^DIR K DIR I $D(DUOUT)+$D(DTOUT) K DUOUT,DTOUT,DIRUT S AMQQQUIT=""
  1. Q
  1. ;
  1. COUNT ; ENTRY POINT FROM AMQQCMPL
  1. N AMQQRV,AMQQNV,AMQQXV
  1. S (AMQQRV,AMQQNV)="AMQQXV"
  1. S AMQQXV=""
  1. D DEV
  1. I $D(AMQQQUIT) Q
  1. I '$D(IO("Q")) U IO D TASKC D ^%ZISC Q
  1. S ZTRTN="TASKC^AMQQCMPP"
  1. S ZTIO=ION
  1. S ZTDTH="NOW"
  1. S ZTDESC="Q-MAN COUNT"
  1. D QUEUE
  1. Q
  1. ;
  1. TASKC S AMQQH1=$H
  1. I $E(IOST,1,2)'="P-" W !!!!,"COUNTING....",!
  1. E W !!!! D CV1 W !!!
  1. X AMQV(0)
  1. I $E(IOST,1,2)="C-" W $C(13),?9,$C(13)
  1. W "Total: ",+$G(AMQQTOT)
  1. S X1=AMQQH1
  1. S X2=$H
  1. D ELT^AMQQCMP0
  1. W !,"Search time: ",X
  1. I $E(IOST,1,2)="C-" W !!! S DIR(0)="E" D ^DIR K DIR,DIRUT,DUOUT,DTOUT
  1. K AMQQH1,X1,X2
  1. W @IOF
  1. I $D(ZTQUEUED) D EXIT2^AMQQKILL S ZTREQ="@"
  1. Q
  1. ;
  1. SUP W !!,"Want to suppress patient names and only print the chart no."
  1. S %=2
  1. D YN^DICN
  1. I %Y=U S AMQQQUIT="" K %Y Q
  1. I $D(DUOUT)+$D(DTOUT) K DTOUT,DUOUT S AMQQQUIT="" Q
  1. I "Nn"[$E(%Y) K %Y Q
  1. S AMQQSUPF=""
  1. K %Y
  1. Q
  1. ;