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

BCHEXDI3.m

Go to the documentation of this file.
  1. BCHEXDI3 ; IHS/CMI/LAB - initialization part III ;
  1. ;;2.0;IHS RPMS CHR SYSTEM;;OCT 23, 2012;Build 27
  1. ;
  1. ;CHR export initialization for new export.
  1. ;
  1. INFORM ;EP - INFORM OPERATOR WHAT IS GOING TO HAPPEN
  1. Q:$D(ZTQUEUED)
  1. W !!,"This routine will generate CHR records to be sent to HQ.",!,"The data transmitted will include everything entered since the last time",!,"data was exported up until yesterday."
  1. W !,"You may ""^"" out at any prompt and will be",!,"ask to confirm your entries prior to generating transactions."
  1. Q
  1. ;
  1. CURRUN ;EP - COMPUTE DATES FOR CURRENT RUN
  1. S BCH("RUN BEGIN")=""
  1. I BCH("LAST LOG") S X1=$P(^BCHXLOG(BCH("LAST LOG"),0),U,2),X2=1 D C^%DTC S BCH("RUN BEGIN")=X,Y=X D DD^%DT
  1. I BCH("RUN BEGIN")="" D FIRSTRUN
  1. Q:BCH("QFLG")
  1. S X1=DT,X2=-1 D C^%DTC S Y=X
  1. I Y<BCH("RUN BEGIN") W:'$D(ZTQUEUED) !!," Ending date cannot be before beginning date!",$C(7) S BCH("QFLG")=18 Q
  1. S BCH("RUN END")=Y
  1. S Y=BCH("RUN BEGIN") X ^DD("DD") S BCH("X")=Y
  1. S Y=BCH("RUN END") X ^DD("DD") S BCH("Y")=Y
  1. W:'$D(ZTQUEUED) !!,"The inclusive dates for this run are ",BCH("X")," through ",BCH("Y"),"."
  1. K %,%H,%I,BCH("RDFN"),BCH("X"),BCH("Y"),BCH("LAST LOG"),BCH("LAST BEGIN"),BCH("Z"),BCH("DATE")
  1. Q
  1. ;
  1. FIRSTRUN ; FIRST RUN EVER (NO LOG ENTRY)
  1. I $D(ZTQUEUED),$D(BCHO("SCHEDULED")) S BCH("RUN BEGIN")=2950101,BCH("FIRST RUN")=1 Q
  1. W !!,"No log entry. First run ever assumed.",!
  1. FRLP ;
  1. K DIR W ! S DIR(0)="D^::EP",DIR("A")="Enter Beginning Date for this Run" K DA D ^DIR K DIR
  1. I $D(DIRUT) S BCH("QFLG")=99 Q
  1. I Y="" S BCH("QFLG")=99 Q
  1. S BCH("X")=Y
  1. D DATECHK Q:BCH("QFLG") G:Y="" FRLP
  1. S BCH("RUN BEGIN")=Y
  1. S BCH("FIRST RUN")=1
  1. Q
  1. ;
  1. DATECHK ;
  1. I BCH("X")="^" S BCH("QFLG")=99 Q
  1. S %DT="PX",X=BCH("X") D ^%DT I X="?" S Y="" Q
  1. I Y<0!(Y>DT)!(Y=DT) W !!,$S(Y>DT!(Y=DT):" Current or future date not allowed!",1:" Invalid date!"),$C(7) S Y=""
  1. Q
  1. ;
  1. ERRBULL ;ENTRY POINT - ERROR BULLETIN
  1. Q:BCH("QFLG")=22 ;if error is 22, no visits don't send bulletin
  1. S BCH("QFLG1")=$O(^BCHDTER("B",BCH("QFLG"),"")),BCH("QFLG DES")=$P(^BCHDTER(BCH("QFLG1"),0),U,2)
  1. S XMB(2)=BCH("QFLG"),XMB(3)=BCH("QFLG DES")
  1. S XMB(4)=$S($D(BCH("RUN LOG")):BCH("RUN LOG"),1:"< NONE >")
  1. I '$D(BCH("RUN BEGIN")) S XMB(5)="<UNKNOWN>" G ERRBULL1
  1. S Y=BCH("RUN BEGIN") D DD^%DT S XMB(5)=Y
  1. ERRBULL1 S Y=DT D DD^%DT S XMB(1)=Y,XMB="BCH CHR TRANSMISSION ERROR"
  1. S XMDUZ=.5 D ^XMB
  1. K XMB,XM1,XMA,XMDT,XMM,BCH("QFLG1"),BCH("QFLG DES"),XMDUZ
  1. Q