CIAUIN18 ;MSC/IND/DKM - Inits for Cache (Windows);04-May-2006 08:19;DKM
;;1.2;CIA UTILITIES;;Mar 20, 2007
;;Copyright 2000-2006, Medsphere Systems Corporation
;=================================================================
; Open a host file
OPEN(X1,X2) ;EP
O X1:$S("Rr"[$G(X2):"RS","Ww"[X2:"WNS","Bb"[X2:"RF",1:""):0
E ZT "NOPEN"
U X1
S ^TMP("CIAUHFS",$J,X1)=""
Q
; Close a host file
CLOSE(X) ;EP
C X
K ^TMP("CIAUHFS",$J,X)
Q
; Close all host files
CLOSEALL ;EP
N Z
S Z=""
F S Z=$O(^TMP("CIAUHFS",$J,Z)) Q:Z="" C Z
K ^TMP("CIAUHFS",$J)
Q
EOF ZT:$ZA=-1 "ENDOFFILE"
Q
EOFERR() Q:$ZE["ENDOFFILE"
; Read line of data
READ(X,Y) ;EP
N $ET
S $ET="",$ZT="READX^CIAUOS"
U $G(Y,$I)
Q:$ZEOF 1
R X:5
Q:$T 0
READX Q 1
; Delete a host file
DELETE(X) ;EP
S X=$ZF(-1,"del """_X_"""")
Q
; Rename a host file
RENAME(X1,X2) ;EP
S X1=$ZF(-1,"ren """_X1_""" """_X2_"""")
Q
; Return directory of files
DIR(X1,X2,X3) ;EP
N Z,Z1,FDLM
S FDLM=$E($$DIRDLM,1)
S X3=$G(X3,$NA(^UTILITY("DIR",$J)))
K @X3
S:'$G(X2) X2=9999999999
F Z=1:1:X2 S Z1=$ZSEARCH(X1),X1="" Q:Z1="" D
.S Z1=$P(Z1,FDLM,$L(Z1,FDLM))
.S:$TR(Z1,".")'="" @X3@(Z1)=""
Q
; Return path delimiters
DIRDLM() ;EP
Q "\\\"
; Return default working directory
DEFDIR(X) ;EP
N FDLM
S FDLM=$E($$DIRDLM,1)
S X=$G(X,$P($G(^XTV(8989.3,1,"DEV")),U))
S:$E(X,$L(X))'=FDLM X=X_FDLM
Q X
; Parse current error
ERR(X1,X2,X3) ;EP
S X1=$E($P($ZE,">"),2,99),X2=$P($P($ZE,">",2),":"),X3=X1
S:X2["*" X2=""
S:$E(X1)="Z" X3=$E(X1,2,99),X1="ZTRAP"
Q
; Raise an exception
RAISE(X) ;EP
ZT $G(X)
; Set error trap
TRAP(X) ;EP
Q $S($D(X):"$ZT="""_X_"""",1:"$ZT")
; Return size of file
SIZE(X) ;EP
Q 0
; Return free disk space
FREE(X) ;EP
Q 0
; Return host ip address
HOSTIP() ;EP
Q $P($P($ZU(131,1),","),":",2)
; Return host name
HOSTNAME() ;EP
Q $P($P($ZU(131,1),","),":")
; Return client ip address
CLIENTIP() ;EP
N IP,$ET
S $ET="S $EC=""""",IP=$ZU(111,0)
Q $A(IP,1)_"."_$A(IP,2)_"."_$A(IP,3)_"."_$A(IP,4)