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

APCPTAPE.m

Go to the documentation of this file.
  1. APCPTAPE ; IHS/TUCSON/LAB - OHPRD-TUCSON/EDE GENERATE TAPE OF TRANSACTIONS XBGUST 14, 1992 ; [ 02/11/03 10:32 AM ]
  1. ;;2.0;IHS PCC DATA EXTRACTION SYSTEM;**6**;APR 03, 1998
  1. ;
  1. ;
  1. ; APCP("QFLG") values set by this routine:
  1. ; Value Meaning
  1. ; 0 All ok
  1. ; 1 Site file error (^APCPSCHK)
  1. ; 41 No transactions to send
  1. ; 30 Unable to lock transaction global
  1. ; 43 Device not ready or open error (^APCPOPEN)
  1. ; 44 Tape write error [DSM only]
  1. ; 45 Operator "^" or NULL out [DSM only] (^APCPOPEN)
  1. ; 46 Unable to determine Operating System
  1. ;
  1. START ;
  1. S APCP("QFLG")=0
  1. D GETLOG
  1. I APCP("RUN LOG")="" K APCP("RUN LOG") Q
  1. D EN
  1. K APCP("RUN LOG"),APCPS,APCP
  1. Q
  1. EN ;ENTRY POINT
  1. D BASICS ; Do basic initialization
  1. I APCP("QFLG") D EOJ Q
  1. S XBGL="BAPCDATA",XBMED=APCP("DEF DEVICE"),XBNAR="PCC FACILITY",XBTLE="PCC DATA TRANSMISSION TO APC,INPT,CHA,STATISTICAL DB"
  1. S XBFN=$P(^APCPLOG(APCP("RUN LOG"),0),U,24)
  1. D ^XBGSAVE
  1. I XBFLG=-1 S APCP("QUIT")="" W:'$D(ZTQUEUED) !,$C(7),$C(7),XBFLG(1) G EOJ
  1. ;update log file .15 with date
  1. K DR,DIE,DA S DIE="^APCPLOG(",DR=".15///C",DA=APCP("RUN LOG") D ^DIE K DIE,DR,DA
  1. D EOJ
  1. Q
  1. ;
  1. GETLOG ;
  1. S APCP("RUN LOG")=""
  1. S DIC("S")="I $P(^APCPLOG(Y,0),U,15)=""P""",DIC="^APCPLOG(",DIC(0)="AEMQ" D ^DIC K DIC,DA
  1. I Y<0 Q
  1. S APCP("RUN LOG")=+Y
  1. Q
  1. BASICS ; SET VARIABLES, LOCK GLOBAL, INSURE DATA
  1. K APCP("QUIT")
  1. S APCP("QFLG")=0,APCP("TAPE COUNT")=0
  1. D CHKSITE^APCPDRI ; Make sure Site file has correct fields
  1. Q:APCP("QFLG")
  1. I '$D(^BAPCDATA) W:'$D(ZTQUEUED) !!,"*** No APC, INPATIENT OR CHA transactions to send! ***" S APCP("QFLG")=28 Q
  1. I '$D(^BAPCDATA(0)) W:'$D(ZTQUEUED) !!,"*** The Transaction process NEVER complete properly!!" S APCP("QFLG")=29 Q
  1. I $P(^APCPLOG(APCP("RUN LOG"),0),U,15)'="P" W:'$D(ZTQUEUED) !!,$C(7),$C(7),"The Transaction Generation process never successfully completed!!",!! S APCP("QFLG")=31 Q
  1. L +^BAPCDATA:15 E W:'$D(ZTQUEUED) !!,"*** Unable to lock transaction global! ***" S APCP("QFLG")=30 Q
  1. K APCP("QUIT")
  1. S APCP("DEF DEVICE")=$P(^APCPSITE(1,0),U,2)
  1. I APCP("DEF DEVICE")="" W:'$D(ZTQUEUED) !,"No Default Device in SITE File",!," NOTIFY YOUR SUPERVISOR, I cannot continue until there is a default device ",!," in the Site File",$C(7),$C(7) S APCP("QFLG")=4 Q
  1. I ^%ZOSF("OS")["DSM","TC"'[APCP("DEF DEVICE") W:'$D(ZTQUEUED) !,"NOTIFY YOUR SUPERVISOR - The default device in the Site file is not",!,"compatible with a DSM system.",!,$C(7),$C(7) S APCP("QFLG")=4 Q
  1. W:'$D(ZTQUEUED) !,"The transactions will be written to ",$S(APCP("DEF DEVICE")="C":"a CARTRIDGE TAPE",APCP("DEF DEVICE")="F":"a HOST FILE",APCP("DEF DEVICE")="T":"a 9 TRACK TAPE",APCP("DEF DEVICE")="D":"a FLOPPY DISKETTE",1:"ERROR")
  1. CONT Q:$D(ZTQUEUED)
  1. Q:$P(^APCPSITE(1,0),U,11)="Y"
  1. S DIR(0)="Y",DIR("A")="Do you want to continue",DIR("B")="Y" K DA D ^DIR K DIR
  1. I $D(DIRUT)!('Y) W !,"Transactions are NOT being written to an output device",! S APCP("QUIT")="",APCP("QFLG")=99 Q
  1. Q
  1. ;
  1. EOJ ;
  1. I 'APCP("QFLG"),'$D(APCP("QUIT")) K ^BAPCDATA ;UNSUBSCRIPTED GLOBALS ARE CMB STANDARD SCRATCH GLOBALS FOR TRANSMITTING DATA TO DATA CENTER - MUST BE KILLED
  1. K APCPV("TX"),APCP("XX"),XBFLG
  1. L -^BAPCDATA:15
  1. Q