| 1 | LREPISV1 ;DALOI/CKA LAB EPI EXTRACT SERVER ; 4/1/2003
 | 
|---|
| 2 |  ;;5.2;LAB SERVICE;**281**;Sep 27, 1994
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 |  ; Reference to $$SITE^VASITE supported by IA #10112
 | 
|---|
| 5 |  ; Reference to ^%ZOSF supported by IA #10096
 | 
|---|
| 6 | START ;
 | 
|---|
| 7 |  K ^TMP($J,"LREPDATA")
 | 
|---|
| 8 |  ;Send message to the mail group each time the server is triggered
 | 
|---|
| 9 |  ;containing the name of the person who triggered the server, their
 | 
|---|
| 10 |  ;location, and the action initiated.
 | 
|---|
| 11 |  S LREPST=$P($$SITE^VASITE,"^",2),LRRTYPE=1
 | 
|---|
| 12 |  ;Determine station number
 | 
|---|
| 13 |  S X=XQSUB X ^%ZOSF("UPPERCASE") S LREPSUB=Y
 | 
|---|
| 14 |  S ^TMP($J,"LREPDATA",1)=LREPSUB_" triggered at "_LREPST_" by "_XMFROM_" on "_XQDATE
 | 
|---|
| 15 |  ;The first line of the message tells who requested the action and when
 | 
|---|
| 16 |  S ^TMP($J,"LREPDATA",2)=$S(LREPSUB["RETRANSMIT":" RETRANSMISSION of EPI data",1:"????")_" at "_LREPST
 | 
|---|
| 17 |  ;The second line tells when the server is activated and no data can be gathered from the MailMan message.
 | 
|---|
| 18 |  S LREPLNT=1
 | 
|---|
| 19 |  I LREPSUB'["RETRANSMIT" S ^TMP($J,"LREPDATA",3)="SUBJECT OF MAIL MESSAGE MUST BE RETRANSMIT" G EXIT
 | 
|---|
| 20 | RETRANS ;RETRANSMIT
 | 
|---|
| 21 |  ;first read the text of the message
 | 
|---|
| 22 |  S LRERROR=0
 | 
|---|
| 23 | READ F XMA=1:1  X XMREC Q:XMER<0  S XMTEXT=XMRG D
 | 
|---|
| 24 |  .;
 | 
|---|
| 25 | PROCESS .;
 | 
|---|
| 26 |  .I XMA=1,XMTEXT'="******password******" S ^TMP($J,"LREPDATA",3)="INVALID PASSWORD" S LRERROR=1 Q
 | 
|---|
| 27 |  .;
 | 
|---|
| 28 |  .S LRPROT=1696
 | 
|---|
| 29 | DATE .;
 | 
|---|
| 30 |  .I XMA=3 D
 | 
|---|
| 31 |  ..S X=XMTEXT,%DT="X" D ^%DT
 | 
|---|
| 32 |  ..I Y=-1 S ^TMP($J,"LREPDATA",3)="INVALID STOP DATE" S LRERROR=1 Q
 | 
|---|
| 33 |  ..S LRRPE=Y  ;Stop date
 | 
|---|
| 34 |  .I XMA=2 D
 | 
|---|
| 35 |  ..S X=XMTEXT,%DT="X" D ^%DT
 | 
|---|
| 36 |  ..I Y=-1 S ^TMP($J,"LREPDATA",3)="INVALID START DATE" S LRERROR=1 Q
 | 
|---|
| 37 |  ..S LRRPS=Y  ;Start date
 | 
|---|
| 38 |  .;
 | 
|---|
| 39 | TEST .;pathogens
 | 
|---|
| 40 |  .F LRI=4:1 Q:LRI'=XMA  D:XMTEXT="ALL"  Q:XMTEXT="ALL"  S LREPI(LRI)=XMTEXT  Q:'$D(XMTEXT)  S LREPI(XMTEXT)=""
 | 
|---|
| 41 |  ..S LRI=0 F  S LRI=$O(^LAB(69.5,LRI)) Q:'LRI!(LRI>99)  S LREPI(LRI)=""
 | 
|---|
| 42 |  .;
 | 
|---|
| 43 |  .;
 | 
|---|
| 44 |  I LRERROR G MAIL
 | 
|---|
| 45 | TASK ;
 | 
|---|
| 46 |  D NOW^%DTC
 | 
|---|
| 47 |  S ZTDTH=%
 | 
|---|
| 48 |  Q:'$D(LREPI)
 | 
|---|
| 49 |  K ZTSAVE
 | 
|---|
| 50 |  S ZTSAVE("LR*")=""
 | 
|---|
| 51 |  S ZTIO="",ZTRTN="EN^LREPI",ZTDESC="Laboratory Search/Extract"
 | 
|---|
| 52 |  D ^%ZTLOAD
 | 
|---|
| 53 |  I $D(ZTSK)[0 W !!?5,"Report canceled!"
 | 
|---|
| 54 |  ;
 | 
|---|
| 55 |  ;
 | 
|---|
| 56 | MAIL ;
 | 
|---|
| 57 |  ;
 | 
|---|
| 58 |  ;If the subject contains "RETRANSMIT" DATA EXTRACTION 
 | 
|---|
| 59 | EXIT ;If all went well, report that too.
 | 
|---|
| 60 |  S %H=$H D YMD^%DTC S XMDUN="EPI SYSTEM",XMDUZ=".5",XMSUB=LREPST_" EPI ("_X_%_")",XMTEXT="^TMP($J,""LREPDATA"","
 | 
|---|
| 61 |  S XMY("G.EPI-SITE@CINCINNATI.VA.GOV")=""
 | 
|---|
| 62 |  ;S XMY("ANZALDUA,CAROL@VAHVSS.FO-ALBANY.MED.VA.GOV")="" ;,XMY("CAROL.ANZALDUA@MED.VA.GOV")=""
 | 
|---|
| 63 |  D ^XMD
 | 
|---|
| 64 |  ;Mail the errors and successes back to the EPI group at Cincinnati.
 | 
|---|
| 65 |  K ^TMP($J,"LREPDATA")
 | 
|---|
| 66 |  K %,%DT,%H,D,DIC,X,XMDUN,XMDUZ,XMER,XMFROM,XMREC,XMRG,XMSUB,XMTEXT,XMY,XMZ,XQDATE,XQSUB,Y,LREPA,LREPB,LREPDA,LREPDA1,LREPDATA,LREPDFN,LREPDM,LREPDOC
 | 
|---|
| 67 |  K LREPDOM,LREPDTA,LREPED,LREPER,LREPLNT,LREPNM,LREPPT,LREPSD1,LREPSDT,LREPSSN,LREPST,LREPSUB,LREPTC,YSPR,LREPWB,LREPX,ZTQUEUED,ZTSK
 | 
|---|
| 68 |  K XMA,LRA,LRCOND,LRDATA,LRFILL,LRI,LRPATH,LRTEST,LRERROR
 | 
|---|
| 69 |  Q
 | 
|---|
| 70 |  ;
 | 
|---|