1 | HLEVREP0 ;O-OIFO/LJA - Event Monitor REPORTS ;02/04/2004 14:42
|
---|
2 | ;;1.6;HEALTH LEVEL SEVEN;**109**;Oct 13, 1995
|
---|
3 | ;
|
---|
4 | RECIP ; Called by [HLEV REPORT MONITOR RECIPIENTS]
|
---|
5 | N OPTYPE
|
---|
6 | S OPTYPE=""
|
---|
7 | RECIP1 KILL ^TMP($J,"HLMREP")
|
---|
8 | D HD("Monitor Recipients Reports")
|
---|
9 | D EXRECIP
|
---|
10 | S OPTYPE=$$RECIPO(OPTYPE) QUIT:OPTYPE']"" ;->
|
---|
11 | D RECIPLD
|
---|
12 | D @OPTYPE
|
---|
13 | G RECIP1 ;->
|
---|
14 | ;
|
---|
15 | RECIPMR ; List by monitor/recipient...
|
---|
16 | D RECIPR("M")
|
---|
17 | D BROWSE^DDBR($NA(^TMP($J,"HLMREP","REP")),"N"," Monitor Recipient ")
|
---|
18 | Q
|
---|
19 | ;
|
---|
20 | RECIPRM ; List by recipient/monitor...
|
---|
21 | D RECIPR("R")
|
---|
22 | D BROWSE^DDBR($NA(^TMP($J,"HLMREP","REP")),"N"," Recipient Monitor ")
|
---|
23 | Q
|
---|
24 | ;
|
---|
25 | RECIPR(SUB) ; Create displayable report...
|
---|
26 | N CT,CTIN,SUB1,SUB1L,SUB2,SUB2L,STAT,TXT
|
---|
27 | S SUB1="",CT=0,CTIN=0,SUB1L="",SUB2L=""
|
---|
28 | F S SUB1=$O(^TMP($J,"HLMREP",SUB,SUB1)) Q:SUB1']"" D
|
---|
29 | . S SUB2=""
|
---|
30 | . F S SUB2=$O(^TMP($J,"HLMREP",SUB,SUB1,SUB2)) Q:SUB2']"" D
|
---|
31 | . . S STAT=$G(^TMP($J,"HLMREP",SUB,SUB1,SUB2))
|
---|
32 | . . I STAT'="A" S CTIN=CTIN+1 ; Inactive status counter
|
---|
33 | . . S STAT=$S(STAT'="A":"* ",1:" ")
|
---|
34 | . . S TXT=$$PRT(SUB1,SUB1L,STAT)_$$PRT(SUB2,SUB2L)
|
---|
35 | . . D ADD(TXT)
|
---|
36 | . . S CT=CT+1
|
---|
37 | . . S SUB1L=SUB1,SUB2L=SUB2
|
---|
38 | Q
|
---|
39 | ;
|
---|
40 | PRT(P1,P1L,ST) ; Format part of display line...
|
---|
41 | ; CT -- req
|
---|
42 | N TXT
|
---|
43 | S TXT=$S($G(ST)]"":" ",1:"")_$E($S(P1'=P1L:P1,1:"")_$$REPEAT^XLFSTR("-",35),1,33)_" "
|
---|
44 | Q TXT
|
---|
45 | ;
|
---|
46 | ADD(TXT) ;
|
---|
47 | N NO
|
---|
48 | S NO=$O(^TMP($J,"HLMREP","REP",":"),-1)+1
|
---|
49 | S ^TMP($J,"HLMREP","REP",+NO)=TXT
|
---|
50 | Q
|
---|
51 | ;
|
---|
52 | RECIPLD ; Load monitor and recipient data...
|
---|
53 | N DATA,IEN7761,MONM,STAT
|
---|
54 | S IEN7761=0
|
---|
55 | F S IEN7761=$O(^HLEV(776.1,IEN7761)) Q:IEN7761'>0 D
|
---|
56 | . S DATA=$G(^HLEV(776.1,+IEN7761,0)) QUIT:DATA']"" ;->
|
---|
57 | . S MONM=$$UP^XLFSTR($P(DATA,U)) QUIT:DATA']"" ;->
|
---|
58 | . S STAT=$S($P(DATA,U,2)="A":"ACTIVE",1:"INACTIVE")
|
---|
59 | . D RECIPM(MONM,IEN7761,STAT,60) ; Load mail groups...
|
---|
60 | . D RECIPM(MONM,IEN7761,STAT,61) ; Load local recipients...
|
---|
61 | . D RECIPM(MONM,IEN7761,STAT,62) ; Load remotes...
|
---|
62 | Q
|
---|
63 | ;
|
---|
64 | RECIPM(MONM,IEN7761,STAT,SUBDD) ; Load two globals...
|
---|
65 | N MIEN,RECIP
|
---|
66 | S MIEN=0
|
---|
67 | F S MIEN=$O(^HLEV(776.1,+IEN7761,SUBDD,MIEN)) Q:MIEN'>0 D
|
---|
68 | . S RECIP=$$UP^XLFSTR($P($G(^HLEV(776.1,+IEN7761,+SUBDD,MIEN,0)),U))
|
---|
69 | . QUIT:RECIP']"" ;->
|
---|
70 | . I SUBDD=60 D QUIT:RECIP']"" ;->
|
---|
71 | . . S RECIP=$P($G(^XMB(3.8,+RECIP,0)),U) QUIT:RECIP']"" ;->
|
---|
72 | . . S RECIP="G."_RECIP
|
---|
73 | . I SUBDD=61 D QUIT:RECIP']"" ;->
|
---|
74 | . . S RECIP=$P($G(^VA(200,+RECIP,0)),U)
|
---|
75 | . S ^TMP($J,"HLMREP","M",MONM_"[#"_IEN7761_"]",RECIP)=STAT
|
---|
76 | . S ^TMP($J,"HLMREP","R",RECIP,MONM_"[#"_IEN7761_"]")=STAT
|
---|
77 | Q
|
---|
78 | ;
|
---|
79 | RECIPO(PMT) ; Mon/Recip or Recip/Mon
|
---|
80 | N DIR,DIRUT,DTOUT,DUOUT,X,Y
|
---|
81 | S DIR(0)="S^1:List monitors/recipients;2:List recipients/monitors;3:Exit"
|
---|
82 | S DIR("A")="Select REPORT FORMAT"
|
---|
83 | S DIR("B")=$S(PMT="RECIPMR":"List recipients/monitors",1:"List monitors/recipients")
|
---|
84 | D ^DIR
|
---|
85 | QUIT:+Y<1!(+Y>2) "" ;->
|
---|
86 | Q $P("RECIPMR^RECIPRM",U,+Y)
|
---|
87 | ;
|
---|
88 | EXRECIP N I,T F I=1:1 S T=$T(EXRECIP+I) QUIT:T'[";;" W !,$P(T,";;",2,99)
|
---|
89 | ;;This option lists the monitors and monitor recipients in two formats: sorted
|
---|
90 | ;;by monitor and within monitor by recipient. And, by recipient, and withing
|
---|
91 | ;;recipient by monitor.
|
---|
92 | QUIT
|
---|
93 | ;
|
---|
94 | CONDMON ; Called by [HLEV REPORT CONDENSED MONITOR]
|
---|
95 | N BY,DIC,FLDS,L
|
---|
96 | D HD("Short Monitor Report")
|
---|
97 | W !
|
---|
98 | D EXCMON
|
---|
99 | S L="",DIC="^HLEV(776.1,",FLDS="[HLEV REPORT MONITOR-ONE LINE]"
|
---|
100 | S BY="[HLEV REPORT MONITOR]"
|
---|
101 | D EN1^DIP
|
---|
102 | D TELL^HLEVMST0("")
|
---|
103 | Q
|
---|
104 | ;
|
---|
105 | EXCMON N I,T F I=1:1 S T=$T(EXCMON+I) QUIT:T'[";;" W !,$P(T,";;",2,99)
|
---|
106 | ;;This option displays monitor information in brief format. If you wish to see
|
---|
107 | ;;more of the information for this monitor, please use the 'Expanded monitor
|
---|
108 | ;;report' menu option.
|
---|
109 | QUIT
|
---|
110 | ;
|
---|
111 | EXPMON ; Called by [HLEV REPORT EXPANDED MONITOR]
|
---|
112 | N BY,DIC,FLDS,L
|
---|
113 | D HD("Expanded Monitor Report")
|
---|
114 | W !
|
---|
115 | D EXPCMON
|
---|
116 | S L="",DIC="^HLEV(776.1,",FLDS="[CAPTIONED]"
|
---|
117 | S BY="[HLEV REPORT MONITOR - FF]"
|
---|
118 | D EN1^DIP
|
---|
119 | D TELL^HLEVMST0("")
|
---|
120 | Q
|
---|
121 | ;
|
---|
122 | EXPCMON N I,T F I=1:1 S T=$T(EXCPMON+I) QUIT:T'[";;" W !,$P(T,";;",2,99)
|
---|
123 | ;;This option displays monitor information in expanded format. If you wish to
|
---|
124 | ;;see more of the information for this monitor, please use the 'Condensed
|
---|
125 | ;;monitor report' menu option.
|
---|
126 | QUIT
|
---|
127 | ;
|
---|
128 | ;
|
---|
129 | HD(TXT) W @IOF,$$CJ^XLFSTR(TXT,IOM)
|
---|
130 | W !,$$REPEAT^XLFSTR("=",IOM)
|
---|
131 | QUIT
|
---|
132 | ;
|
---|
133 | DETAILS ; Show details of an event monitor occurence...
|
---|
134 | ;
|
---|
135 | W !!,"Not implemented yet..."
|
---|
136 | W !
|
---|
137 | S X=$$BTE^HLCSMON("Press RETURN to continue... ")
|
---|
138 | ;
|
---|
139 | Q
|
---|
140 | ;
|
---|
141 | EOR ;HLEVREP0 - Event Monitor REPORTS ;5/16/03 14:42
|
---|