AFSHCK1 ; IHS/OIRM/DSD/JDM -PART 2 OF GENERIC VARIABLE CHECK PROGRAM ; [ 10/27/2004 4:20 PM ]
;;3.0T1;AO FINANCIAL DATA MGMT SYSTEM;**13**;FEB 02, 1999
;ACR*2.1*9
Q ;NOT AN ENTRY POINT
OHFSDOC ;;VARIABLES REQUIRED FOR OPENHFS CALL
;;
;; %DEV -- INITIALLY SET TO 51
;; %FN -- UNIX FILE NAME (FULL PATH IF NEC)
;; AFSERMSG -- CONTAINS ERROR MESSAGE
;; Y -- CONTAINS %ZISH COMPLETION CODE (0-4)
;; %IN -- OPEN PARAMETER (1=READ ONLY) DEFAULT VALUE
;; %FO -- FILE OFFSET (DEFAULT = 0)
OPENHFS(ZISH1,ZISH2,%DEV) ;PEP - OPEN A SPECIFIC UNIX FILE
;Returns %DEV or error message in AFSERMSG
NEW N,ZISH3,Y ; ACR*2.1*13.01 IM13574
I '$D(%IN) S %IN=1
I '$D(%FO) S %FO=0
;S N=$L(%FN,"/") ;DETERMINE %FN # OF DELIMITED PIECES ; ACR*2.1*13.01 IM13574
;S ZISH1=$P(%FN,"/",1,N-1)_"/" ; ACR*2.1*13.01 IM13574
;S ZISH2=$P(%FN,"/",N) ; ACR*2.1*13.01 IM13574
;S ZISH3=$S(%IN=1:"R",%IN=0:"M",1:"R") ; ACR*2.1*13.01 IM13574
;S Y=$$OPEN^%ZISH(ZISH1,ZISH2,ZISH3) ; ACR*2.1*13.01 IM13574
;I Y'=0 S AFSERMSG="M10" ; ACR*2.1*13.01 IM13574
;E S %DEV=IO ; ACR*2.1*13.01 IM13574
;K N,ZISH1,ZISH2,ZISH3 ; ACR*2.1*13.01 IM13574
S ZISH3=$S(%IN=0:"W",1:"R") ; ACR*2.1*13.01 IM13574
S Y=$$OPEN^%ZISH(ZISH1,ZISH2,ZISH3) ; ACR*2.1*13.01 IM13574
I Y'=0 S AFSERMSG="M10" Q ; ACR*2.1*13.01 IM13574
S %DEV=IO ; ACR*2.1*13.01 IM13574
Q
ERROR ;EP
G ERROREX:'$D(AFSERMSG)
S X=$P($T(@AFSERMSG),";;",2)
U IO(0) W !!,*7,?(80-$L(X)/2),X,!
K DIR S DIR(0)="E",DIR("A")="Enter <RETURN> to Continue" D ^DIR
ERROREX S AFSJFLG=1 K AFSERMSG Q
BTRMDEF ;EP
W !!!,"PROPER TERMINAL ATTRIBUTES MISSING - NOTIFY SITE MANAGER",!! H 3 Q
M1 ;;COMPUTER CENTER FOR TELECOMMUNICATIONS NOT CORRECTLY DEFINED
M2 ;;IHS COMM PARAMETERS NOT SET FOR THIS LOCATION
M3 ;;3780 TELECOMMUNICATIONS PORT NOT DEFINED
M4 ;;REMOTE NUMBER NOT DEFINED FOR THIS COMPUTER CENTER"
M5 ;;USER ID OR USER PASSWORD NOT DEFINED
M6 ;;DEFAULT 3780 COMMUNICATION PORT IN USE
M7 ;;ALL 3780 COMMUNICATION PORTS ARE BUSY
M8 ;;ALL UNIX HFS DEVICES ARE BUSY
M9 ;;PROGRAM AND/OR FUNCTION CANCELLED BY OPERATOR
M10 ;;OPEN FAILURE ON UNIX HFS FILE
M11 ;;DEFAULT PRINTER PORT NOT CORRECTLY DEFINED
M12 ;;PRINTER SET-UP ERROR -- NOTIFY SUPERVISOR
M13 ;;EXPORT AND/OR APPLICATION PARAMETERS NOT SET CORRECTLY
M14 ;;PACKAGE PREFIX NOT FOUND
CCTRID ;EP
S AFSUXFNM=$S(AFSCCTR="DPS":"ddps",AFSCCTR="NIH":"nih",AFSCCTR="BCS":"bcbs",AFSCCTR="PCC":"pcc",1:" ")
S AFSCCTRN=$S(AFSCCTR="DPS":"IHS Data Center (ALBQ)",AFSCCTR="NIH":"National Inst. of Hlth (Bethesda)",AFSCCTR="BCS":"Blue Cross / Shield (NM)",AFSCCTR="PCC":"Parklawn Computer Center (PCC)",1:"Z")
Q
CCTRIDR ;EP
I AFSCCTR'="PCC" S AFSRRTYP=$S(AFSCCTR="BCS":"B",AFSCCTR="NIH":"N",AFSCCTR="DPS":"I",1:"X"),Y=AFSRRTYP
;S AFSRRTYP=AFSRTYPE
Q
CRTSETUP ;EP; ;ACR*2.1*13.02 IM13574
I '$G(IOST(0)) D HOME^%ZIS ;OIRM/DSD/JDM
S XY=$P(^%ZIS(2,IOST(0),1),"^",5)
I '$D(^%ZIS(1,IOS,"SUBTYPE")) G BTRMDEF
I '$D(^%ZIS(1,IOS,"TYPE")) G BTRMDEF
I ^%ZIS(1,IOS,"TYPE")'="TRM"&(^%ZIS(1,IOS,"TYPE")'="VTRM") G BTRMDEF
I '$D(^%ZIS(2,IOST(0),5)) G BTRMDEF
S AFSLE=$P(^%ZIS(2,IOST(0),5),"^",6)
S AFSLE="W "_AFSLE
S AFSRVON=$P(^%ZIS(2,IOST(0),5),"^",4)
S AFSRVOF=$P(^%ZIS(2,IOST(0),5),"^",5)
S X=0 X ^%ZOSF("RM")
Q
;
CLOSE ;EP;TO CLOSE %ZISH OPENED DEVICE ;ACR*2.1*13.01 IM13574
D CLOSE^%ZISH()
K IOP,IOPAR,%ZIS,ZTSK,ZTQUEUED,ZTREQ
Q
AFSHCK1 ; IHS/OIRM/DSD/JDM -PART 2 OF GENERIC VARIABLE CHECK PROGRAM ; [ 10/27/2004 4:20 PM ]
+1 ;;3.0T1;AO FINANCIAL DATA MGMT SYSTEM;**13**;FEB 02, 1999
+2 ;ACR*2.1*9
+3 ;NOT AN ENTRY POINT
QUIT
OHFSDOC ;;VARIABLES REQUIRED FOR OPENHFS CALL
+1 ;;
+2 ;; %DEV -- INITIALLY SET TO 51
+3 ;; %FN -- UNIX FILE NAME (FULL PATH IF NEC)
+4 ;; AFSERMSG -- CONTAINS ERROR MESSAGE
+5 ;; Y -- CONTAINS %ZISH COMPLETION CODE (0-4)
+6 ;; %IN -- OPEN PARAMETER (1=READ ONLY) DEFAULT VALUE
+7 ;; %FO -- FILE OFFSET (DEFAULT = 0)
OPENHFS(ZISH1,ZISH2,%DEV) ;PEP - OPEN A SPECIFIC UNIX FILE
+1 ;Returns %DEV or error message in AFSERMSG
+2 ; ACR*2.1*13.01 IM13574
NEW N,ZISH3,Y
+3 IF '$DATA(%IN)
SET %IN=1
+4 IF '$DATA(%FO)
SET %FO=0
+5 ;S N=$L(%FN,"/") ;DETERMINE %FN # OF DELIMITED PIECES ; ACR*2.1*13.01 IM13574
+6 ;S ZISH1=$P(%FN,"/",1,N-1)_"/" ; ACR*2.1*13.01 IM13574
+7 ;S ZISH2=$P(%FN,"/",N) ; ACR*2.1*13.01 IM13574
+8 ;S ZISH3=$S(%IN=1:"R",%IN=0:"M",1:"R") ; ACR*2.1*13.01 IM13574
+9 ;S Y=$$OPEN^%ZISH(ZISH1,ZISH2,ZISH3) ; ACR*2.1*13.01 IM13574
+10 ;I Y'=0 S AFSERMSG="M10" ; ACR*2.1*13.01 IM13574
+11 ;E S %DEV=IO ; ACR*2.1*13.01 IM13574
+12 ;K N,ZISH1,ZISH2,ZISH3 ; ACR*2.1*13.01 IM13574
+13 ; ACR*2.1*13.01 IM13574
SET ZISH3=$SELECT(%IN=0:"W",1:"R")
+14 ; ACR*2.1*13.01 IM13574
SET Y=$$OPEN^%ZISH(ZISH1,ZISH2,ZISH3)
+15 ; ACR*2.1*13.01 IM13574
IF Y'=0
SET AFSERMSG="M10"
QUIT
+16 ; ACR*2.1*13.01 IM13574
SET %DEV=IO
+17 QUIT
ERROR ;EP
+1 IF '$DATA(AFSERMSG)
GOTO ERROREX
+2 SET X=$PIECE($TEXT(@AFSERMSG),";;",2)
+3 USE IO(0)
WRITE !!,*7,?(80-$LENGTH(X)/2),X,!
+4 KILL DIR
SET DIR(0)="E"
SET DIR("A")="Enter <RETURN> to Continue"
DO ^DIR
ERROREX SET AFSJFLG=1
KILL AFSERMSG
QUIT
BTRMDEF ;EP
+1 WRITE !!!,"PROPER TERMINAL ATTRIBUTES MISSING - NOTIFY SITE MANAGER",!!
HANG 3
QUIT
M1 ;;COMPUTER CENTER FOR TELECOMMUNICATIONS NOT CORRECTLY DEFINED
M2 ;;IHS COMM PARAMETERS NOT SET FOR THIS LOCATION
M3 ;;3780 TELECOMMUNICATIONS PORT NOT DEFINED
M4 ;;REMOTE NUMBER NOT DEFINED FOR THIS COMPUTER CENTER"
M5 ;;USER ID OR USER PASSWORD NOT DEFINED
M6 ;;DEFAULT 3780 COMMUNICATION PORT IN USE
M7 ;;ALL 3780 COMMUNICATION PORTS ARE BUSY
M8 ;;ALL UNIX HFS DEVICES ARE BUSY
M9 ;;PROGRAM AND/OR FUNCTION CANCELLED BY OPERATOR
M10 ;;OPEN FAILURE ON UNIX HFS FILE
M11 ;;DEFAULT PRINTER PORT NOT CORRECTLY DEFINED
M12 ;;PRINTER SET-UP ERROR -- NOTIFY SUPERVISOR
M13 ;;EXPORT AND/OR APPLICATION PARAMETERS NOT SET CORRECTLY
M14 ;;PACKAGE PREFIX NOT FOUND
CCTRID ;EP
+1 SET AFSUXFNM=$SELECT(AFSCCTR="DPS":"ddps",AFSCCTR="NIH":"nih",AFSCCTR="BCS":"bcbs",AFSCCTR="PCC":"pcc",1:" ")
+2 SET AFSCCTRN=$SELECT(AFSCCTR="DPS":"IHS Data Center (ALBQ)",AFSCCTR="NIH":"National Inst. of Hlth (Bethesda)",AFSCCTR="BCS":"Blue Cross / Shield (NM)",AFSCCTR="PCC":"Parklawn Computer Center (PCC)",1:"Z")
+3 QUIT
CCTRIDR ;EP
+1 IF AFSCCTR'="PCC"
SET AFSRRTYP=$SELECT(AFSCCTR="BCS":"B",AFSCCTR="NIH":"N",AFSCCTR="DPS":"I",1:"X")
SET Y=AFSRRTYP
+2 ;S AFSRRTYP=AFSRTYPE
+3 QUIT
CRTSETUP ;EP; ;ACR*2.1*13.02 IM13574
+1 ;OIRM/DSD/JDM
IF '$GET(IOST(0))
DO HOME^%ZIS
+2 SET XY=$PIECE(^%ZIS(2,IOST(0),1),"^",5)
+3 IF '$DATA(^%ZIS(1,IOS,"SUBTYPE"))
GOTO BTRMDEF
+4 IF '$DATA(^%ZIS(1,IOS,"TYPE"))
GOTO BTRMDEF
+5 IF ^%ZIS(1,IOS,"TYPE")'="TRM"&(^%ZIS(1,IOS,"TYPE")'="VTRM")
GOTO BTRMDEF
+6 IF '$DATA(^%ZIS(2,IOST(0),5))
GOTO BTRMDEF
+7 SET AFSLE=$PIECE(^%ZIS(2,IOST(0),5),"^",6)
+8 SET AFSLE="W "_AFSLE
+9 SET AFSRVON=$PIECE(^%ZIS(2,IOST(0),5),"^",4)
+10 SET AFSRVOF=$PIECE(^%ZIS(2,IOST(0),5),"^",5)
+11 SET X=0
XECUTE ^%ZOSF("RM")
+12 QUIT
+13 ;
CLOSE ;EP;TO CLOSE %ZISH OPENED DEVICE ;ACR*2.1*13.01 IM13574
+1 DO CLOSE^%ZISH()
+2 KILL IOP,IOPAR,%ZIS,ZTSK,ZTQUEUED,ZTREQ
+3 QUIT