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

BDMFZIS.m

Go to the documentation of this file.
  1. BDMFZIS ; cmi/anch/maw - DEVICE CALLS AND QUEUING ;
  1. ;;2.0;DIABETES MANAGEMENT SYSTEM;;AUG 11, 2006
  1. ;;ROUTINE USED AS CENTRAL POINT FOR ALL DEVICE HANDLING AND QUEUING
  1. ZIS ;EP;TO CALL DEVICE
  1. I $G(BDMBROWS) D Q
  1. .K BDMPRINT ;cmi/maw kill off so not hanging around
  1. .S DIR(0)="SO^P:PRINT Output;B:BROWSE Output on Screen"
  1. .S DIR("A")="Do you want to "
  1. .S DIR("B")="PRINT"
  1. .W !
  1. .D DIR^BDMFDIC
  1. .Q:$D(BDMQUIT)!$D(BDMOUT)
  1. .I $E($G(X))="P" S BDMPRINT=1 D ZIS1 Q ;cmi/maw 1/17/2006 to look for print select or not
  1. .I $E($G(Y))="B" D BROWSE Q
  1. ZIS1 ;EP;
  1. K DN
  1. S %ZIS="AEMNPQ"
  1. S ZIBH=$TR($H,",","")_$R(1000)
  1. W !
  1. D ^%ZIS
  1. I POP>0 D CLOSE Q
  1. S:$G(IOPAR)]"" %ZIS("IOPAR")=IOPAR
  1. S ZTSAVE("%ZIS*")=""
  1. S ZTSAVE("ZIBH")=""
  1. S ZTRTN="OPEN^BDMFZIS"
  1. I $D(IO("Q")),IO=IO(0)!$D(IO("S")) D G ZIS
  1. .W *7,*7
  1. .W !!,"CANNOT QUEUE TO HOME OR SLAVE DEVICE."
  1. I '$D(IO("Q")) D D CLOSE Q
  1. .I $E(IOST,1,2)="P-" D
  1. ..W !!,"...One moment please, while I complete your print request..."
  1. ..W !
  1. .D:$D(BDMRTN) @ZTRTN
  1. E D ZTLOAD
  1. Q
  1. CLOSE ;EP;TO CLOSE DEVICE
  1. D ^%ZISC
  1. K IOP,IOPAR,%ZIS,ZTSK,ZTQUEUED,ZTREQ
  1. Q
  1. ZTLOAD ;EP;TO CALL %ZTLOAD
  1. K BDMDR
  1. S ZTIO=ION
  1. S ZTSAVE("BDM*")=""
  1. D ^%ZTLOAD
  1. W !!,$S($G(ZTSK)]"":"Request queued!",1:"Request cancelled.")
  1. D CLOSE
  1. H 2
  1. Q
  1. OPEN ;EP;TO OPEN DEVICE AND PRINT SELECTED REPORT
  1. I '$D(ZTQUEUED)!(ION["HOST") S IOP=ION D ^%ZIS I POP S BDMQUIT="" Q
  1. U IO
  1. D @BDMRTN
  1. S:$D(ZTQUEUED) ZTREQ="@"
  1. D:'$D(ZTQUEUED) CLOSE
  1. Q
  1. HOST ;EP;TO OPEN HOST FILE
  1. ;%FN - FILE NAME REQUIRED
  1. ;BDMOP - 'R' FOR READ, 'W' FOR WRITE REQUIRED, 'M' FOR READ/WRITE
  1. Q:'$D(%FN)!'$D(BDMOP)
  1. S POP=1
  1. F BDMI=51:1:54 Q:'POP D
  1. .S (IOP,ION)=BDMI
  1. .S %ZIS("IOPAR")="("""_%FN_""":"""_BDMOP_""")"
  1. .D ^%ZIS
  1. I POP D G HOST:$G(BDMX)<2 S BDMQUIT="" Q
  1. .W !!,"Waiting for HOST FILE SERVER."
  1. .S BDMX=$G(BDMX)+1
  1. K IOP,POP
  1. Q
  1. BROWSE ;EP;TO BROWSE
  1. Q:$G(BDMRTN)=""
  1. S BDMFLD("BROWSE")=1
  1. D VIEWR^XBLM(BDMRTN)
  1. I $D(BDMQUIT) D Q
  1. .K BDMQUIT
  1. .W !!,"BROWSE function temporarily unavailable."
  1. .D ZIS1
  1. D CLEAR^VALM1
  1. Q