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

AMHEXDI2.m

Go to the documentation of this file.
  1. AMHEXDI2 ; IHS/CMI/LAB - OHPRD-TUCSON/EDE AMHDR SPECIFIC INITIALIZATION AUGUST 14, 1992 ;
  1. ;;4.0;IHS BEHAVIORAL HEALTH;;MAY 14, 2010
  1. ;
  1. START ;
  1. D INFORM^AMHEXDI3 ; Let operator know what is going on.
  1. D GETLOG ; Get last log entry and display data.
  1. Q:AMH("QFLG")
  1. D CHKOLD
  1. Q:AMH("QFLG")
  1. D CURRUN^AMHEXDI3 ; Compute run dates for current run.
  1. Q:AMH("QFLG")
  1. D CHKMHSS ; Check MHSS RECORD xref for date range
  1. Q:AMH("QFLG")
  1. D CONFIRM ; Get ok from operator.
  1. Q:AMH("QFLG")
  1. D GENLOG ; Generate new log entry.
  1. Q
  1. ;
  1. CHKOLD ;EP - CHECK FOR DATA LEFT BY OLD RUN
  1. I $D(^AMHSDATA) W:'$D(ZTQUEUED) !!,"*** WARNING *** ^AMHSDATA global exists from a previous GEN or REDO!!" S AMH("QFLG")=32
  1. I $D(^XTMP("AMHDR")) W:'$D(ZTQUEUED) !!,"*** WARNING *** ^XTMP nodes exist from previous GEN!!," S AMH("QFLG")=10
  1. I $D(^XTMP("AMHREDO")) W:'$D(ZTQUEUED) !!,"*** WARNING *** ^XTMP nodes exist from previous REDO!!" S AMH("QFLG")=11
  1. Q
  1. ;
  1. ;
  1. ;
  1. ;
  1. GETLOG ;EP GET LAST LOG ENTRY
  1. S (X,AMH("LAST LOG"))=$P(^AMHXLOG(0),U,3) F S X=$O(^AMHXLOG(X)) Q:X'=+X S AMH("LAST LOG")=X
  1. S X=$S(AMH("LAST LOG")&($D(^AMHXLOG(AMH("LAST LOG")))):AMH("LAST LOG"),1:0) F S X=$O(^AMHXLOG(X)) Q:X'=+X S AMH("LAST LOG")=X
  1. Q:'AMH("LAST LOG")
  1. D DISPLOG
  1. Q:$P(^AMHXLOG(AMH("LAST LOG"),0),U,15)="C"
  1. D ERROR
  1. Q
  1. ERROR ;
  1. S AMH("QFLG")=12
  1. S AMH("PREV STATUS")=$P(^AMHXLOG(AMH("LAST LOG"),0),U,15)
  1. I AMH("PREV STATUS")="" D EERR Q
  1. D @(AMH("PREV STATUS")_"ERR") Q
  1. Q
  1. EERR ;
  1. S AMH("QFLG")=13
  1. ;
  1. W $C(7),$C(7),!!,"*****ERROR ENCOUNTERED*****",!,"The last PCC Data Export never successfully completed to end of job!!!",!,"This must be resolved before any other exports can be done.",!
  1. Q
  1. PERR ;
  1. S AMH("QFLG")=14
  1. ;
  1. W !!,$C(7),$C(7),"*****ERROR ENCOUNTERED*****",!,"Whoa! The Transaction global from the previous run was NEVER successfully",!,"written to an output device (unix uucppublic file, cartridge, diskette).",!
  1. W !,"You must execute the menu option called 'OUTP (OUTPUT)' before any further",!,"processing."
  1. W !,"You may also need to determine whether or not the transaction global for ",!,"LOG ENTRY ",AMH("LAST LOG")," was ever received by your Area Office.",!
  1. Q
  1. RERR ;
  1. S AMH("QFLG")=15
  1. ;
  1. W $C(7),$C(7),!!,"PCC Data Transmission is currently running!!"
  1. Q
  1. QERR ;
  1. S AMH("QFLG")=16
  1. ;
  1. W !!,$C(7),$C(7),"PCC Data Transmission is already queued to run!!"
  1. Q
  1. FERR ;
  1. S AMH("QFLG")=17
  1. ;
  1. W !!,$C(7),$C(7),"The last PCC Export failed and has never been reset.",!,"See your site manager for assistence",!
  1. Q
  1. ;
  1. DISPLOG ; DISPLAY LAST LOG DATA
  1. S Y=$P(^AMHXLOG(AMH("LAST LOG"),0),U) X ^DD("DD") S AMH("LAST BEGIN")=Y S Y=$P(^AMHXLOG(AMH("LAST LOG"),0),U,2) X ^DD("DD") S AMH("LAST END")=Y
  1. Q:$D(ZTQUEUED)
  1. W !!,"Last run was for ",AMH("LAST BEGIN")," through ",AMH("LAST END"),"."
  1. Q
  1. ;
  1. ;
  1. CHKMHSS ; CHECK MHSS RECORD "AEX" XREF
  1. S AMHV("R DATE")=0
  1. S AMHV("R DATE")=$O(^AMHREC("AEX",AMHV("R DATE")))
  1. S AMHV("R DATE")=$O(^AMHREC("AEX",0))
  1. I AMHV("R DATE"),AMHV("R DATE")<AMH("RUN BEGIN") W:'$D(ZTQUEUED) !!,"*** Cross-references exist prior to beginning of date range! ***" S AMH("QFLG")=21 Q
  1. ;
  1. S AMHV("R DATE")=AMH("RUN BEGIN")-1
  1. S AMHV("R DATE")=$O(^AMHREC("AEX",AMHV("R DATE")))
  1. I AMHV("R DATE")=""!(AMHV("R DATE")>AMH("RUN END")) W:'$D(ZTQUEUED) !!,"*** No MHSS RECORDs within range! ***" S AMH("QFLG")=22 Q
  1. Q
  1. ;
  1. CONFIRM ; SEE IF THEY REALLY WANT TO DO THIS
  1. Q:$D(ZTQUEUED)
  1. W !,"The location for this run is ",$P(^DIC(4,DUZ(2),0),U),"."
  1. CFLP ;
  1. S DIR(0)="Y",DIR("A")="Do you want to continue",DIR("B")="N" K DA D ^DIR K DIR
  1. I $D(DIRUT)!('Y) S AMH("QFLG")=99 Q
  1. Q
  1. ;
  1. GENLOG ; GENERATE NEW LOG ENTRY
  1. W:'$D(ZTQUEUED) !,"Generating New Log entry.."
  1. K DIC,DA,DR,DLAYGO,DINUM,DD,X
  1. S Y=AMH("RUN BEGIN") X ^DD("DD") S X=""""_Y_"""",DIC="^AMHXLOG(",DIC(0)="L",DLAYGO=9002014,DIC("DR")=".02////"_AMH("RUN END")_";.09///`"_DUZ(2)
  1. D ^DIC K DIC,DLAYGO,DR
  1. I Y<0 S AMH("QFLG")=23 Q
  1. S AMH("RUN LOG")=+Y
  1. K ^AMHSDATA ;TO DATA CENTER, THESE ARE OFFICIAL SCRATCH GLOBALS
  1. Q