source: FOIAVistA/tag/r/AUTOMATED_LAB_INSTRUMENTS-LA/LA7UXQA.m@ 628

Last change on this file since 628 was 628, checked in by George Lilly, 14 years ago

initial load of FOIAVistA 6/30/08 version

File size: 3.1 KB
Line 
1LA7UXQA ;;DALOI/JMC - HL7 Utility - Send alert to users; Jan 12, 2004
2 ;;5.2;AUTOMATED LAB INSTRUMENTS;**27,67**;Sep 27, 1994
3 ;
4XQA(LA7CTYP,LA76248,LA762485,LA76249,LA7AMSG,LA7DATA,LA7PALRT) ; Send alert when requested.
5 ; Input
6 ; LA7CTYP - Condition for alert (1=New Results, 2=Error on message, 3=New Orders)
7 ; LA76248 - Pointer to file 62.48
8 ; LA762485 - Optional, pointer to file 62.485 if condition=2
9 ; LA76249 - Optional, pointer to file 62.49 if condition=2 or 3
10 ; LA7AMSG - Optional, alert message if missing will use default message
11 ; LA7DATA - Optional, pass values for specific conditions
12 ; LA7PALRT - Keep previous alerts (1-yes,0-no)
13 ;
14 ; Called by LA7LOG, LA7UIIN, LA7VORM, LRVRPOC, LA7VIN1
15 ;
16 N XQA,XQAID,XQADATA,XQAFLAG,XQAMSG,XQAOPT,XQAROU,X,Y
17 S XQAMSG=$G(LA7AMSG)
18 ;
19 I $G(LA7CTYP)=1 D
20 . S XQAID="LA7-CONFIG-"_$S($G(LA76248):LA76248,1:"UNKNOWN-"_$H)
21 . I XQAMSG="" S XQAMSG="Lab Messaging - New results received for "_$P($G(^LAHM(62.48,+$G(LA76248),0),"UNKNOWN"),"^")
22 ;
23 I $G(LA7CTYP)=2 D
24 . S XQAID="LA7-MESSAGE-"_$S($G(LA76249):LA76249,1:"UNKNOWN-"_$H)
25 . I XQAMSG="" S XQAMSG="Lab Messaging error #"_$G(LA762485,"UNKNOWN")_" on message #"_$G(LA76249,"UNKNOWN")
26 . I $G(LA76249) D ; Error processing message, setup action alert.
27 . . S XQAROU="DIS^LA7UXQA" ; Alert action.
28 . . S XQADATA=LA76249 ; Alert data (ien of message in 62.49, date of error and error number).
29 ;
30 I $G(LA7CTYP)=3 D
31 . S LA7DATA=$G(LA7DATA)
32 . S XQAID="LA7-ORDERS-"_$S($L(LA7DATA):$P(LA7DATA,"^"),$G(LA76249):LA76249,1:"UNKNOWN-"_$H)
33 . I XQAMSG="" S XQAMSG="Lab Messaging - Manifest# "_$P(LA7DATA,"^")_" received from "_$P($G(^LAHM(62.48,+$G(LA76248),0),"UNKNOWN"),"^")
34 ;
35 ; Determine mail group
36 S X=""
37 F S X=$O(^LAHM(62.48,+$G(LA76248),20,"B",LA7CTYP,X)) Q:'X D
38 . S Y=$G(^LAHM(62.48,LA76248,20,X,0))
39 . I $L($P(Y,"^",2)) S XQA("G."_$P(Y,"^",2))="" ; Send to mail group.
40 ;
41 ; Fail safe mail group when no mail group defined.
42 I '$D(XQA) S XQA("G.LAB MESSAGING")=""
43 ;
44 ; Delete previous alerts with same id
45 I '$G(LA7PALRT),$G(XQAID)'="" D DEL(XQAID)
46 ;
47 D SETUP^XQALERT
48 Q
49 ;
50 ;
51DEL(ID) ; Delete previous alerts if present
52 ; Call with ID = alert id
53 ; Clear previous alert with same pkg id.
54 N XQAID,XQAMSG,XQAROU,XQADATA,XQA
55 S XQAKLL=0
56 S XQAID=ID
57 D DELETEA^XQALERT
58 Q
59 ;
60 ;
61DIS ; Display alert.
62 N DIR,I,J,K,LA7LIST,X,Y
63 K ^TMP("DDB",$J),^TMP($J)
64 I 'XQADATA W !,$C(7),"Missing message number, unable to proceed.",! Q
65 I '$D(^LAHM(62.49,XQADATA)) W !,$C(7),"Message number# ",XQADATA," has been deleted, unable to proceed.",! Q
66 S DIR(0)="YO",DIR("A")="Display message associated with this alert",DIR("B")="YES"
67 D ^DIR K DIR
68 I Y S LA7LIST(+XQADATA)="" D DEV^LA7UTILA
69 Q
70 ;
71 ;
72DISIC ; Display Integrity Checker alert.
73 N DIR,I,J,K,LA7IC,X,Y
74 I XQADATA="" D Q
75 . W !,$C(7),"Missing error report to display, unable to proceed.",!
76 ;
77 I '$D(^XTMP(XQADATA)) D Q
78 . W !,$C(7),"Message number# ",XQADATA," has been deleted, unable to proceed.",!
79 ;
80 S DIR(0)="YO",DIR("A")="Display Integrity Check Report associated with this alert",DIR("B")="YES"
81 D ^DIR K DIR
82 I Y S LA7IC=XQADATA D DEV^LA7CHKFP
83 Q
Note: See TracBrowser for help on using the repository browser.