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

AUIBMSYS.m

Go to the documentation of this file.
  1. AUIBMSYS ;IBM SYSTEM INTERFACE [ 05/16/85 2:56 PM ]
  1. ;TOM FISHER
  1. S %RECORD=0,%HT=1,%ER=0,%PT=80
  1. S $ZE="ERROR^IBMSYS"
  1. S %ERRMSG="TRANSMISSION ERROR HAS OCCURED"
  1. U %PORT:(0::::5),0:(0::::5) B 0
  1. TMEPLX ; WAKEUP TIMEPLEX PORT
  1. S %RESP=""
  1. S FUNCT=">>>"
  1. D PROCIO
  1. TMPLXOK ; WAKEUP COMTEN
  1. S %RESP="COMTEN"
  1. S FUNCT="CONNECT COMPLETE"
  1. D PROCIO
  1. CMTENOK ; WAKEUP CICS
  1. H %HT
  1. U %PORT
  1. W *13
  1. S %RESP=""
  1. S FUNCT="invalid-sw-chars"
  1. D PROCIO
  1. ; INTERACT WITH CICS
  1. S %RESP="CICS"
  1. S FUNCT="INDIAN HEALTH SERVICE "
  1. D PROCIO
  1. IBMRDY ; MAKE SURE IBM CICS READY
  1. S %RESP=""
  1. S FUNCT="READY"
  1. D PROCIO
  1. TRNSRDY ; SIGNON TO MAINFRAME
  1. S %RESP="CSSN PS=TPSM,NAME=FISHER"
  1. S FUNCT="SIGN-ON IS COMPLETE"
  1. D PROCIO
  1. STRTTRN ; START TRANSACTION
  1. S %RESP="PCXT"
  1. S FUNCT="PCXT CONNECT"
  1. D PROCIO
  1. SEQPCXT ; SEQUENCE SYSTEM WITH REMOTE SYSTEM
  1. S %RESP="START"
  1. S FUNCT="PCXT READY"
  1. D PROCIO
  1. PCXTPRO S %X="" F I=0:0 S %X=$O(^RGTXDATA(%X)) G:%X="" GLOBEND S %DATA=^RGTXDATA(%X) S %CRC(0)=0 S %CRC=%DATA D CALCRC S %RECORD=%RECORD+1 S %RESP="^D^"_%CRC(0)_%DATA S FUNCT="CRC" D PROCIO U 0
  1. CALCRC ; CALCULATE CRC FOR DATA LINE
  1. F %CRC(1)=1:1:$L(%DATA) S %CRC(0)=%CRC(0)+$A(%CRC,%CRC(1))
  1. Q
  1. GLOBEND U 0 W !!,"TOTAL RECORDS SENT ",%RECORD
  1. K %RECORD
  1. ENDPCXT ; END TRANSACTION POCISSING
  1. S %RESP="^*END*^"
  1. S FUNCT="^STP^"
  1. D PROCIO
  1. G LOGOFF
  1. ; WRITE RECORD NUMBER OF ERROR
  1. EXIT W !!,"TRANSMISSION EROR HAS OCCURED",*7,*7,*7,*7
  1. W !!,"TRANMISSION MUST BE RESTARTED"
  1. W !!,"RECORD COUNT SENT BEFORE FAILURE ",%RECORD
  1. LOGOFF ; LOGOFF IBM SYSTEM
  1. S %RESP="CSSF LOGOFF"
  1. S FUNCT="SIGN-OFF IS COMPLETE"
  1. S %ERRMSG="SIGNOFF TO IBM FAILED"
  1. S %ER=1
  1. D PROCIO
  1. G EXIT^AUTRANS
  1. ERROR U 0 W !!,*7,"DISCONNECT FROM SYSTEM"
  1. G EXIT^AUTRANS
  1. PROCIO ; GENERAL I/O TO PORT
  1. S %XS="" F L=1:1:700
  1. S %RT=0
  1. I %PT>79 W ! S %PT=0
  1. U 0 W "." S %PT=%PT+1
  1. U %PORT W:$L(%RESP) %RESP W *13
  1. PORTIO ;
  1. U %PORT R %Y:0 S %CR=$ZB
  1. S %XS=%XS_%Y
  1. G:%RT=3000 PORTERR S %RT=%RT+1
  1. G:%XS[FUNCT PORTOK
  1. G PORTIO:$L(%RESP),PORTIO:$L(%Y) G PORTIO
  1. PORTOK Q
  1. ; TIMEOUT ERROR ENTER THIS ROUTINE IF NO RESPONSE
  1. ; FROM COMMUNICATIONS PORT
  1. PORTERR U 0 W !,%ERRMSG,%XS G:%ER EXIT^AUTRANS G EXIT
  1. END ; END OF ROUTINE