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

BDMLLTZ.m

Go to the documentation of this file.
  1. BDMLLTZ ; IHS/CMI/LAB - DEVICE CALLS AND QUEUING ;
  1. ;;2.0;DIABETES MANAGEMENT SYSTEM;**3**;JUN 14, 2007
  1. ;;ROUTINE USED AS CENTRAL POINT FOR ALL DEVICE HANDLING AND QUEUING
  1. ZIS ;call to XBDBQUE
  1. W ! S DIR(0)="S^P:PRINT Output;B:BROWSE Output on Screen",DIR("A")="Do you wish to",DIR("B")="P" K DA D ^DIR K DIR
  1. I $D(DIRUT) D XIT Q
  1. S BDMOPT=Y
  1. I Y="B" D BROWSE,XIT Q
  1. S XBRP="CPRINT^BDMLLT",XBRC="",XBRX="EXIT^BDMLLT",XBNS="BDM"
  1. D ^XBDBQUE
  1. D XIT
  1. Q
  1. BROWSE ;
  1. S XBRP="VIEWR^XBLM(""CPRINT^BDMLLT"")"
  1. S XBRC="",XBRX="EXIT^BDMLLT",XBIOP=0 D ^XBDBQUE
  1. Q
  1. ZISX ;EP;TO CALL DEVICE
  1. D Q
  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^BDMLLTD
  1. .Q:$D(BDMLLTQT)!$D(BDMLLTOT)
  1. .I $E($G(X))="P" D ZIS1 Q
  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^BDMLLTZ"
  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(BDMLRTN) @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 BDMLLTDR
  1. S ZTIO=ION
  1. S ZTSAVE("ACM*")=""
  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 BDMLLTQT="" Q
  1. U IO
  1. D @BDMLRTN
  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. ;BDMLLTOP - 'R' FOR READ, 'W' FOR WRITE REQUIRED, 'M' FOR READ/WRITE
  1. Q:'$D(%FN)!'$D(BDMLLTOP)
  1. S POP=1
  1. F BDMLI=51:1:54 Q:'POP D
  1. .S (IOP,ION)=BDMLI
  1. .S %ZIS("IOPAR")="("""_%FN_""":"""_BDMLLTOP_""")"
  1. .D ^%ZIS
  1. I POP D G HOST:$G(BDMLLTX)<2 S BDMLLTQT="" Q
  1. .W !!,"Waiting for HOST FILE SERVER."
  1. .S BDMLLTX=$G(BDMLLTX)+1
  1. K IOP,POP
  1. Q
  1. BROWSE1 ;EP;TO BROWSE
  1. Q:$G(BDMLRTN)=""
  1. S BDMLFLD("BROWSE")=1
  1. D VIEWR^XBLM(BDMLRTN)
  1. I $D(BDMLLTQT) D Q
  1. .K BDMLLTQT
  1. .W !!,"BROWSE function temporarily unavailable."
  1. .D ZIS1
  1. D CLEAR^VALM1
  1. Q
  1. XIT ;
  1. D EN^XBVK("BDML")
  1. Q