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

VAQBUL04.m

Go to the documentation of this file.
  1. VAQBUL04 ;ALB/JRP - BULLETINS;25-MAY-93
  1. ;;1.5;PATIENT DATA EXCHANGE;**9**;NOV 17, 1993
  1. RESULTS ;CONTINUATION OF VAQBUL03
  1. ; DECLARATIONS DONE IN $$RESULTS^VAQBUL03
  1. ;PUT IN COMMENT/REASON
  1. I (STATUS="VAQ-NTFND") D
  1. .S TMP=SPACE_"Reason: Patient not found"
  1. .S @TMPARR@("DISPLAY",LINE,0)=TMP
  1. .S LINE=LINE+1
  1. I (STATUS="VAQ-AMBIG") D
  1. .S TMP=SPACE_"Reason: Requested patient could not be uniquely identified"
  1. .S @TMPARR@("DISPLAY",LINE,0)=TMP
  1. I ((STATUS="VAQ-RSLT")!(STATUS="VAQ-REJ")) D
  1. .;DETERMINE IF COMMENT EXIST
  1. .S COMMENT=0
  1. .S COMMENT=$D(^VAT(394.61,TRANPTR,"CMNT"))
  1. .S:(COMMENT) COMMENT=+$O(^VAT(394.61,TRANPTR,"CMNT",0))
  1. .;NO COMMENT/REASON
  1. .I ('COMMENT) D
  1. ..S TMP=SPACE_$S((STATUS="VAQ-RSLT"):"Comments: ",1:"Reason: ")_"None listed"
  1. ..S @TMPARR@("DISPLAY",LINE,0)=TMP
  1. ..S LINE=LINE+1
  1. .;COMMENT/REASON
  1. .I (COMMENT) D
  1. ..S TMP=SPACE_$S((STATUS="VAQ-RSLT"):"Comments:",1:"Reason:")
  1. ..S @TMPARR@("DISPLAY",LINE,0)=TMP
  1. ..S LINE=LINE+1
  1. ..;FORMAT TEXT
  1. ..K ^UTILITY($J,"W")
  1. ..S OFFSET=0
  1. ..F S OFFSET=+$O(^VAT(394.61,TRANPTR,"CMNT",OFFSET)) Q:('OFFSET) D
  1. ...S X=$G(^VAT(394.61,TRANPTR,"CMNT",OFFSET,0))
  1. ...S DIWL=0
  1. ...S DIWR=0
  1. ...S DIWF="I"_$L(SPACE)_"C75"
  1. ...D ^DIWP
  1. ..;PUT COMMENT/REASON INTO MESSAGE
  1. ..S OFFSET=""
  1. ..F S OFFSET=$O(^UTILITY($J,"W",0,OFFSET)) Q:(OFFSET="") D
  1. ...S TMP=$G(^UTILITY($J,"W",0,OFFSET,0))
  1. ...S @TMPARR@("DISPLAY",LINE,0)=TMP
  1. ...S LINE=LINE+1
  1. ..K ^UTILITY($J,"W")
  1. ;PUT IN DATA
  1. I ('SENSITVE) I (STATUS="VAQ-RSLT") I (+$G(^VAT(394.61,TRANPTR,"NTFY1"))) D
  1. .F X=1:1:3 S @TMPARR@("DISPLAY",LINE,0)="",LINE=LINE+1
  1. .S TMP=SPACE_"Requested information:"
  1. .S @TMPARR@("DISPLAY",LINE,0)=TMP
  1. .S LINE=LINE+1
  1. .F X=1:1:3 S @TMPARR@("DISPLAY",LINE,0)="",LINE=LINE+1
  1. .S X=$$TRNDSP^VAQUPD2(TRANPTR,TMPARR,LINE)
  1. .;SUCCESS
  1. .I (X>0) S LINE=LINE+X Q
  1. .;NO DATA
  1. .S LINE=LINE-4
  1. .S TMP=SPACE_"Requested data could not be included in notification"
  1. .S @TMPARR@("DISPLAY",LINE,0)=TMP
  1. .S LINE=LINE+1
  1. .I ('X) D Q
  1. ..S TMP=SPACE_"Transaction did not contain any information"
  1. ..S @TMPARR@("DISPLAY",LINE,0)=TMP
  1. ..S LINE=LINE+1
  1. .;ERROR
  1. .I (X<0) D Q
  1. ..S @TMPARR@("DISPLAY",LINE,0)=SPACE_"Error occurred while getting information from PDX files"
  1. ..S LINE=LINE+1
  1. ..S @TMPARR@("DISPLAY",LINE,0)=SPACE_$P(X,"^",2)
  1. ..S LINE=LINE+1
  1. .F X=1:1:2 S @TMPARR@("DISPLAY",LINE,0)="",LINE=LINE+1
  1. ;PLACE "DISPLAY" INTO ROOT
  1. S TMP=$P(TMPARR,"(",1)
  1. S X=$P(TMPARR,"(",2)
  1. S Y=$P(X,")",1)
  1. S:(Y="") TMPROOT=TMP_"("_$C(34)_"DISPLAY"_$C(34)_")"
  1. S:(Y'="") TMPROOT=TMP_"("_Y_","_$C(34)_"DISPLAY"_$C(34)_")"
  1. S:(TMPARR="") TMPROOT=""
  1. ;BUILD DISTRIBUTION LIST
  1. S X=""
  1. F S X=+$O(^VAT(394.61,TRANPTR,"NTFY2","B",X)) Q:('X) S XMY(X)=""
  1. ;INCLUDE SECURITY OFFICER IF PATIENT IS SENSITIVE AT REMOTE FACILITY
  1. S:(SENSITVE) X=$$LOADXMY^DGSEC()
  1. ;SEND BULLETIN
  1. S TMP="PDX Rejection for "_NAME
  1. S:(STATUS="VAQ-RSLT") TMP="PDX Results for "_NAME
  1. S X="PDX"
  1. S Y="Patient Data eXchange"
  1. S ERROR=$$SENDBULL^VAQBUL(TMP,X,Y,TMPROOT)
  1. Q:(ERROR<0)
  1. S ERROR=0
  1. Q