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

SCDXUTL5.m

Go to the documentation of this file.
  1. SCDXUTL5 ;ALB/ABR - RETRANSMIT CORRECTED HL7 UTILITY ; 10/25/96
  1. ;;5.3;Scheduling;**70**;AUG 13, 1993
  1. ;
  1. EN ;
  1. N DA,DIE,DR,ENC,ENCNODE,II,SDDATE,SDDAY,SDEN,SDN,SDPATCH,X,X1,X2
  1. ; +SDPATCH = date/time of patch install
  1. ; SDDATE = last date run (starting point for today's run
  1. S SDPATCH=$G(^SD(404.91,1,"PATCH70")) Q:'SDPATCH
  1. S (SDDATE,X1)=$P(SDPATCH,U,2),X2=3
  1. Q:'SDDATE ;update complete
  1. ;
  1. D C^%DTC ; find date + 3
  1. S $P(SDDATE,".",2)=9,SDDAY=$P(X,".") I SDDAY>DT S SDDAY=DT ; cannot be greater than today
  1. S SDEND=SDDAY+.9,SDSTA=SDDATE ; end date, start from date
  1. ;
  1. D DELTX
  1. D NOXMIT
  1. D SETFL
  1. I SDDATE,SDDAY<DT S $P(^SD(404.91,1,"PATCH70"),U,2)=SDDAY G ENQ
  1. D CLNDONE
  1. ENQ Q
  1. ;
  1. DELTX ; deleted encounters
  1. N SDEL
  1. S SDEL=0
  1. F S SDEL=$O(^SD(409.73,"ADEL",SDEL)) Q:'SDEL D
  1. . I +$G(^SD(409.74,SDEL,0))<SDDATE Q ; quit if delete for already xmited enc.
  1. . S SDN=$O(^SD(409.73,"ADEL",SDEL,0))
  1. . ; clean out files, reset 0-nodes
  1. . D KILL("^SD(409.74,",SDEL)
  1. . D:SDN KILL("^SD(409.73,",SDN)
  1. Q
  1. KILL(DIK,DA) ; cleans out deleted encounters
  1. D ^DIK
  1. Q
  1. ;
  1. NOXMIT ; don't transmit encounters out of date range
  1. N SDX,SDX1
  1. S SDX=0
  1. F S SDX=$O(^SD(409.73,"AACXMIT",SDX)) Q:'SDX D
  1. . F SDX1=0:0 S SDX1=$O(^SD(409.73,"AACXMIT",SDX,SDX1)) Q:'SDX1 D
  1. ..; check if encounter beyond today's send range
  1. .. S SDEN=+$P($G(^SD(409.73,SDX1,0)),U,2) Q:'SDEN I $G(^SCE(SDEN,0))>SDEND!('$G(^SCE(SDEN,0))) D
  1. ...S DIE="^SD(409.73,",DA=SDX1,DR=".04////0" D ^DIE
  1. Q
  1. SETFL ; loop checks encounters transmitted up through date/time of patch installation
  1. F S SDDATE=$O(^SCE("B",SDDATE)) Q:'SDDATE!(SDDATE>SDEND) D
  1. . F SDEN=0:0 S SDEN=$O(^SCE("B",SDDATE,SDEN)) Q:'SDEN S SDN=$O(^SD(409.73,"AENC",SDEN,0)) I SDN D
  1. .. ; quit if xmit date after patch install or already set to YES
  1. .. Q:($G(^SD(409.73,SDN,1))>SDPATCH)!$P($G(^(0)),U,4)
  1. .. S DIE="^SD(409.73,",DR=".04////1",DA=SDN D ^DIE
  1. Q
  1. ;
  1. CLNDONE ; cleanup done
  1. ;update node and create bulletin
  1. S $P(^SD(404.91,1,"PATCH70"),U,2)=""
  1. ;
  1. MSG N MSGTXT,XMB,XMTEXT,XMY,XMDUZ,XMDT,XMZ,DIFROM
  1. S XMB="SCDX AMBCARE TO NPCDB SUMMARY"
  1. ; recipients are same as for SCDX AMBCARE TO NPCDB SUMMARY bulletin
  1. ; and group at Albany IRMFO
  1. S XMY("G.ACRP MAINTENANCE@ISC-ALBANY")=""
  1. S XMB(1)="** HL7 TRANSMISSIONS UP-TO-DATE **" ;subject
  1. ; message text
  1. S MSGTXT(1)="Patch SD*5.3*70 began retransmitting Ambulatory Care Reporting Project"
  1. S MSGTXT(2)="(ACRP) data beginning with encounters on 10/1. The retransmission of past"
  1. S MSGTXT(3)="workload is now complete. The nightly background job will now resume"
  1. S MSGTXT(4)="normal operations."
  1. S XMTEXT="MSGTXT("
  1. ;
  1. D ^XMB
  1. Q