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

VAQBUL07.m

Go to the documentation of this file.
VAQBUL07 ;ALB/JRP - BULLETINS;26-JUL-93
 ;;1.5;PATIENT DATA EXCHANGE;;NOV 17, 1993
PURGE(ERRARR) ;SEND PURGING ERROR BULLETIN
 ;INPUT  : ERRARR - Array of errors subscripted by entry number in
 ;                  transaction file (full global ref)
 ;OUTPUT : 0 - Bulletin sent
 ;        -1^ErrorText - Bulletin not sent
 ;NOTES  : ERRARR should be in the format
 ;           ERRARR(Transaction's IFN)=Error text
 ;
 ;CHECK INPUT
 Q:($G(ERRARR)="") "-1^Did not pass reference to error array"
 Q:('$D(@ERRARR)) 0
 ;DECLARE VARIABLES
 N SUBJ,SENTBY,FWRDBY,XMY,TMPARR,TRANPTR,X,STOPPED,LINE
 S TMPARR="^TMP(""VAQ-BUL"","_$J_")"
 K @TMPARR
 S LINE=1
 ;DETERMINE IF PURGER WAS STOPPED
 S STOPPED=$D(@ERRARR@("STOPPED"))
 I (STOPPED) D
 .S @TMPARR@(LINE,0)="** Purger was stopped before completion **"
 .S LINE=LINE+1
 .S @TMPARR@(LINE,0)=""
 .S LINE=LINE+1
 .S @TMPARR@(LINE,0)=""
 .S LINE=LINE+1
 ;BUILD MESSAGE
 S @TMPARR@(LINE,0)="The following PDX Transaction(s) could not be purged ..."
 S LINE=LINE+1
 S @TMPARR@(LINE,0)=""
 S LINE=LINE+1
 S TRANPTR=""
 F  S TRANPTR=$O(@ERRARR@(TRANPTR)) Q:(TRANPTR="")  D
 .Q:(TRANPTR="STOPPED")
 .S @TMPARR@(LINE,0)=""
 .S LINE=LINE+1
 .S X=$G(@ERRARR@(TRANPTR))
 .S @TMPARR@(LINE,0)="Entry #: "_TRANPTR
 .S LINE=LINE+1
 .S @TMPARR@(LINE,0)=" Global: ^VAT(394.61,"_TRANPTR_")"
 .S LINE=LINE+1
 .S @TMPARR@(LINE,0)=" Reason: "_X
 .S LINE=LINE+1
 S @TMPARR@(LINE,0)=""
 S LINE=LINE+1
 S @TMPARR@(LINE,0)=""
 S LINE=LINE+1
 S @TMPARR@(LINE,0)="**  Please remember that PDX Transactions may also   **"
 S LINE=LINE+1
 S @TMPARR@(LINE,0)="** have associated data stored in file number 394.62 **"
 S LINE=LINE+1
 S @TMPARR@(LINE,0)=""
 S LINE=LINE+1
 ;SET UP CALL TO SEND BULLETIN
 S SUBJ="PDX TRANSACTIONS COULD NOT BE PURGED"
 S SENTBY="PDX"
 S FWRDBY="Patient Data eXchange"
 S XMY("G.VAQ PDX ERRORS")=""
 ;SEND BULLETIN
 S X=$$SENDBULL^VAQBUL(SUBJ,SENTBY,FWRDBY,TMPARR)
 S:(X>0) X=0
 ;CLEAN UP
 K @TMPARR
 Q X