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

ZISG2.m

Go to the documentation of this file.
  1. %ZISG2 ;SFISC/AC -- Device Handler Prototype
  1. ;;8.0T3
  1. LOAD ;LOAD TMP ARRAY
  1. S %=$G(^$E("WINDOW")) I $L(%) S %PARENT("PARENT")=%
  1. I '$D(XGWIN) D PREP^XG
  1. D GET^XGCLOAD("ZISG DEVICE W1","ZISGDEV","TMP")
  1. D GET^XGCLOAD("ZISG DEVICE TRM","ZISGTRM","TMP")
  1. D GET^XGCLOAD("ZISG DEVICE SPL","ZISGSPL","TMP")
  1. D GET^XGCLOAD("ZISG DEVICE SDP","ZISGSDP","TMP")
  1. D GET^XGCLOAD("ZISG DEVICE HFS","ZISGHFS","TMP")
  1. D GET^XGCLOAD("ZISG DEVICE MT","ZISGMT","TMP")
  1. S TMP("ZISGDEV","G","QDTIME","TITLE")=""
  1. Q
  1. B1 ;OLD B1 CODE FROM ZISG ROUTINE
  1. ;;I '^$W("ZISGDEV","G","PROMPT","VISIBLE") D
  1. ;;.S ^$W("ZISGDEV","G","PROMPT","VALUE")=^$W("ZISGDEV","G","DEV","VALUE")
  1. ;;.S ^$W("ZISGDEV","G","PROMPT","VISIBLE")=1
  1. ;;.;S ^$W("ZISGDEV","G","QFRAME","VISIBLE")=0
  1. ;;E D
  1. ;;.S ^$W("ZISGDEV","G","PROMPT","VISIBLE")=0
  1. ;;.;S ^$W("ZISGDEV","G","QFRAME","VISIBLE")=1
  1. ;;.S ITEM=$O(^$W("ZISGDEV","G","PROMPT","VALUE",""))
  1. ;;.I ITEM S ^$W("ZISGDEV","G","DEV","VALUE")=^$W("ZISGDEV","G","PROMPT","CHOICE",ITEM)
  1. Q
  1. B2 ;;I '^$W("ZISGTRM","G","SUBTYPE","VISIBLE") D
  1. ;;.S ^$W("ZISGTRM","G","SUBTYPE","VALUE")=^$W("ZISGTRM","G","SUB","VALUE")
  1. ;;.;S ^$W("ZISGTRM","G","MARGIN","ACTIVE")=0
  1. ;;.S ^$W("ZISGTRM","G","SUBTYPE","VISIBLE")=1
  1. ;;E D
  1. ;;.S ^$W("ZISGTRM","G","SUBTYPE","VISIBLE")=0
  1. ;;.;S ^$W("ZISGTRM","G","MARGIN","ACTIVE")=1
  1. ;;.S ITEM=$O(^$W("ZISGTRM","G","SUBTYPE","VALUE",""))
  1. ;;.I ITEM S ^$W("ZISGTRM","G","SUB","VALUE")=^$W("ZISGTRM","G","SUBTYPE","CHOICE",ITEM)
  1. Q
  1. OK ;Callbak for OK button.
  1. N REF
  1. S REF=XGWIN_"("""_@XGEVENT@("WINDOW")_""",""G"")"
  1. S IOP=$S($G(@REF@("QUEUE","VALUE")):"Q;",1:"")
  1. I $G(@REF@("QUEUE","VALUE")),$G(@REF@("QTIME","VALUE"))="NOW"!($G(@REF@("QDTIME","TITLE"))="") S ZTDTH=$H
  1. S XGION=$S($D(@REF@("DEV","VALUE")):@REF@("DEV","VALUE"),1:"")
  1. I XGION="" D ^XGLMSG("E","You have not selected a device.") Q
  1. ;ENTER RETRIEVE TYPE INFO HERE:
  1. S XGDA=""
  1. I '$D(XGION) D
  1. .S XGION=$S($D(^$W("ZISGDEV","G","DEV","VALUE")):^$W("ZISGDEV","G","DEV","VALUE"),1:"")
  1. S:$G(XGION)]"" XGDA=$O(^%ZIS(1,"B",XGION,0))
  1. S XGIOT=$G(^%ZIS(1,+XGDA,"TYPE"))
  1. W !,"XGION==>>"_XGION
  1. W !,"XGIOT==>>"_XGIOT
  1. ;G @XGIOT
  1. TRM ;W:$D(@REF@("PROMPT","VALUE")) !,@REF@("PROMPT","VALUE"),@REF@("PROMPT","CHOICE",+$O(@REF@("PROMPT","VALUE","")))
  1. S REF=XGWIN_"(""ZISGTRM"",""G"")"
  1. W !,"REF==>>"_REF
  1. ;
  1. S XGIOST=$S($D(@REF@("SUB","VALUE")):@REF@("SUB","VALUE"),1:"")
  1. W !,"SUB==>>"_XGIOST
  1. ;W:$D(^$W("ZISGTRM","G","SUBTYPE","VALUE")) !,^$W("ZISGTRM","G","SUBTYPE","CHOICE",+$O(^$W("ZISGTRM","G","SUBTYPE","VALUE","")))
  1. ;W:$D(@REF@("SUBTYPE","VALUE")) !,@REF@("SUBTYPE","VALUE"),@REF@("PROMPT","CHOICE",+$O(@REF@("SUBTYPE","VALUE","")))
  1. ;
  1. S XGIOM=$S($D(@REF@("MARGINVAL","VALUE")):@REF@("MARGINVAL","VALUE"),1:"")
  1. W !,XGIOM
  1. S XGIOSL=$S($D(@REF@("PAGELENGTHVAL","VALUE")):@REF@("PAGELENGTHVAL","VALUE"),1:"")
  1. W !,XGIOSL
  1. W !,"ZTDTH==>>"_$G(ZTDTH)
  1. S IOP=IOP_XGION
  1. I XGIOT="SPL" S %=0 D Q:%
  1. .I '$D(DUZ) D ^XGLMSG("E","Your DUZ is not defined!") S %=1 Q
  1. .I $S($D(^VA(200,DUZ,"SPL")):$E(^("SPL"),1),1:"N")'["y" D
  1. ..D ^XGLMSG("E","You aren't an authorized SPOOLER user.") S %=1 Q
  1. I XGIOT="SPL" S IOP=IOP_";"_XGDOC
  1. S:XGIOST]"" IOP=IOP_";"_XGIOST
  1. S:XGIOM]""!(XGIOSL]"") IOP=IOP_";"_XGIOM_";"_XGIOSL
  1. W !,"IOP==>>"_IOP
  1. S %ZIS="Q" D ^%ZIS
  1. G ERRMSG:POP
  1. ;ESTOP
  1. D ESTO^XG
  1. Q
  1. ERRMSG ;Pop-up error message.
  1. D ^XGLMSG("E","THIS DEVICE IS BUSY")
  1. Q
  1. QTIME ;
  1. S X=^$W("ZISGDEV","G","QTIME","VALUE")
  1. D ASK I Y=-1 D DTHLP Q
  1. W !,"ZTDTH==>>"_ZTDTH
  1. N %H
  1. S %H=ZTDTH D YX^%DTC
  1. S Y="("_Y_")"
  1. S ^$W("ZISGDEV","G","QDTIME","TITLE")=Y
  1. Q
  1. ;
  1. ASK ;GET--ask for start time
  1. I $D(ZTQUEUED) D:ZTDTH]"" Q
  1. . S %DT="FRS",X=ZTDTH D ^%DT S ZTDTH=$$%H^%ZTLOAD2(+Y)
  1. . Q
  1. S %DT="RSX"
  1. I $D(ZTNOGO) D NEXT^XQ92 I X="" D Q
  1. .N %
  1. .S %="Output is never allowed for this option!"
  1. .D ^XGLMSG("W",%) S ZTDTH="" Q
  1. I $D(ZTNOGO) S Y=X,%DT="S" D DD^%DT S %DT("B")=Y,%DT="RSX"
  1. I $D(ZTNOGO),'$D(XQNOGO) D
  1. .N %
  1. .S %="Output from this option is restricted during certain times"
  1. .D ^XGLMSG("W",%)
  1. D ^%DT I $D(ZTNOGO) D
  1. .S ZT=Y,X=Y
  1. .D ^XQ92 S Y=ZT Q:X]""
  1. .N % S %="That is a restricted time!"
  1. .D ^XGLMSG("W",%)
  1. K %DT,%T,X5
  1. S ZTDTH=$$%H^%ZTLOAD2(+Y) Q
  1. Q
  1. DTHLP ;Help for Date input
  1. N I
  1. F I=1:1 S Y=$T(Z+I) Q:Y="" S %(I)=$P(Y,";",3,999)
  1. K ^$EVENT("OK")
  1. D ^XGLMSG("I",.%)
  1. W !,^$DI($PD,"FOCUS")
  1. S ^$DI($PD,"FOCUS")="ZISGDEV,QTIME"
  1. Q
  1. Z ;
  1. ;;Examples of Valid Dates:
  1. ;; JAN 20 1957 or 20 JAN 57 or 1/20/57 or 012057
  1. ;; T (for TODAY), T+1 (for TOMORROW), T+2, T+7, etc.
  1. ;; T-1 (for YESTERDAY), T-3W (for 3 WEEKS AGO), etc.
  1. ;;If the year is omitted, the computer uses the CURRENT YEAR.
  1. ;;If the date is omitted, the current date is assumed.
  1. ;;Follow the date with a time, such as JAN 20@10, T@10AM, 10:30, etc.
  1. ;;You may enter a time, such as NOON, MIDNIGHT or NOW.
  1. ;;Seconds may be entered as 10:30:30 or 103030AM.
  1. ;;Time is REQUIRED in this response.