1 | XMJML ;ISC-SF/GMB-List messages in basket (can't read) ;04/17/2002 10:03
|
---|
2 | ;;8.0;MailMan;;Jun 28, 2002
|
---|
3 | ; Replaces 1^XMAL0 (ISC-WASH/THM/CAP)
|
---|
4 | LIST(XMDUZ,XMK,XMKN,XMKZ,XMDETAIL) ; List messages in one basket
|
---|
5 | ; (This routine does NOT let the user read the messages.)
|
---|
6 | ; XMDETAIL 0=Summary; 1=Detailed
|
---|
7 | N XMLEN,XMORDER,XMHDLINE,XMABORT
|
---|
8 | I XMDUZ=.5,XMK>999 S XMORDER=XMV("ORDER"),XMV("ORDER")=1
|
---|
9 | S XMABORT=0
|
---|
10 | D INIT(XMDUZ,XMK,XMKN,XMDETAIL,.XMLEN,1)
|
---|
11 | S XMHDLINE=$$HEADLINE(XMDUZ,XMK,XMKN)
|
---|
12 | D HEADER(XMDETAIL,.XMLEN,XMHDLINE)
|
---|
13 | S:XMKZ'="" XMKZ=XMKZ-XMV("ORDER")
|
---|
14 | F S XMKZ=$O(^XMB(3.7,XMDUZ,2,XMK,1,"C",XMKZ),XMV("ORDER")) Q:XMKZ="" D Q:XMABORT
|
---|
15 | . S XMZ=$O(^XMB(3.7,XMDUZ,2,XMK,1,"C",XMKZ,""))
|
---|
16 | . I '$D(^XMB(3.7,XMDUZ,2,XMK,1,XMZ,0)) D ADDITC^XMUT4A(XMDUZ,XMK,XMZ,XMKZ)
|
---|
17 | . I '$D(^XMB(3.9,XMZ,0)) D ZAPIT^XMXMSGS2(XMDUZ,XMK,XMZ) Q
|
---|
18 | . I $Y+4>IOSL D PAGE^XMXUTIL(.XMABORT) Q:XMABORT D
|
---|
19 | . . D HEADER(XMDETAIL,.XMLEN,XMHDLINE)
|
---|
20 | . D LISTMSG(XMK,XMKN,XMKZ,XMZ,XMDETAIL,.XMLEN)
|
---|
21 | I $D(XMORDER) S XMV("ORDER")=XMORDER
|
---|
22 | Q
|
---|
23 | LISTNEW(XMDUZ,XMK,XMKN) ; List new messages in one basket
|
---|
24 | ; (This routine does NOT let the user read the messages.)
|
---|
25 | ; XMDETAIL 0=Summary; 1=Detailed
|
---|
26 | I '$O(^XMB(3.7,XMDUZ,"N0",XMK,0)) D Q
|
---|
27 | . I $P(^XMB(3.7,XMDUZ,2,XMK,0),U,2) S $P(^(0),U,2)=0
|
---|
28 | . W !!,$C(7),$$EZBLD^DIALOG(34013),! ;No NEW messages
|
---|
29 | N XMKZ,XMZ,XMLEN,XMDETAIL,XMTYPE,XMHDLINE,XMABORT
|
---|
30 | S XMDETAIL=1,XMTYPE="N0",XMABORT=0
|
---|
31 | D INIT(XMDUZ,XMK,XMKN,XMDETAIL,.XMLEN,1)
|
---|
32 | S XMHDLINE=$$HEADLINE^XMJMLN(XMDUZ,0,XMK,XMKN,XMTYPE)
|
---|
33 | D HEADER(XMDETAIL,.XMLEN,XMHDLINE)
|
---|
34 | S XMZ=""
|
---|
35 | F S XMZ=$O(^XMB(3.7,XMDUZ,XMTYPE,XMK,XMZ),XMV("ORDER")) Q:XMZ="" D Q:XMABORT
|
---|
36 | . S XMKZ=$P($G(^XMB(3.7,XMDUZ,2,XMK,1,XMZ,0)),U,2)
|
---|
37 | . I 'XMKZ D
|
---|
38 | . . D ADDITN^XMUT4A(XMDUZ,XMTYPE,XMK,XMZ)
|
---|
39 | . . S XMKZ=$P($G(^XMB(3.7,XMDUZ,2,XMK,1,XMZ,0)),U,2)
|
---|
40 | . I '$D(^XMB(3.9,XMZ,0)) D ZAPIT^XMXMSGS2(XMDUZ,XMK,XMZ) Q
|
---|
41 | . I $Y+4>IOSL D PAGE^XMXUTIL(.XMABORT) Q:XMABORT D
|
---|
42 | . . D HEADER(XMDETAIL,.XMLEN,XMHDLINE)
|
---|
43 | . D LISTMSG(XMK,XMKN,XMKZ,XMZ,XMDETAIL,.XMLEN)
|
---|
44 | Q
|
---|
45 | LISTPRI(XMDUZ) ; List priority messages in all baskets (Replaces PRIO^XMAL0)
|
---|
46 | ; (This routine does NOT let the user read the messages.)
|
---|
47 | ; XMDETAIL 0=Summary; 1=Detailed
|
---|
48 | N XMK,XMKN,XMKZ,XMZ,XMLEN,XMDETAIL,XMTYPE,XMHDLINE,XMABORT
|
---|
49 | S XMDETAIL=1,XMTYPE="N",XMABORT=0
|
---|
50 | D INIT^XMJMLN(XMDUZ,XMTYPE,XMDETAIL,1,.XMLEN)
|
---|
51 | S XMHDLINE=$$HEADLINE^XMJMLN(XMDUZ,1,"","",XMTYPE)
|
---|
52 | D HEADER(XMDETAIL,.XMLEN,XMHDLINE)
|
---|
53 | S XMK=""
|
---|
54 | F S XMK=$O(^XMB(3.7,XMDUZ,XMTYPE,XMK)) Q:XMK="" D Q:XMABORT
|
---|
55 | . S XMZ="",XMKN=$P(^XMB(3.7,XMDUZ,2,XMK,0),U,1)
|
---|
56 | . F S XMZ=$O(^XMB(3.7,XMDUZ,XMTYPE,XMK,XMZ),XMV("ORDER")) Q:XMZ="" D Q:XMABORT
|
---|
57 | . . S XMKZ=$P($G(^XMB(3.7,XMDUZ,2,XMK,1,XMZ,0)),U,2)
|
---|
58 | . . I 'XMKZ D
|
---|
59 | . . . D ADDITN^XMUT4A(XMDUZ,XMTYPE,XMK,XMZ)
|
---|
60 | . . . S XMKZ=$P($G(^XMB(3.7,XMDUZ,2,XMK,1,XMZ,0)),U,2)
|
---|
61 | . . I '$D(^XMB(3.9,XMZ,0)) D ZAPIT^XMXMSGS2(XMDUZ,XMK,XMZ) Q
|
---|
62 | . . I $Y+4>IOSL D PAGE^XMXUTIL(.XMABORT) Q:XMABORT D
|
---|
63 | . . . D HEADER(XMDETAIL,.XMLEN,XMHDLINE)
|
---|
64 | . . D LISTMSG(XMK,XMKN,XMKZ,XMZ,XMDETAIL,.XMLEN)
|
---|
65 | Q
|
---|
66 | INIT(XMDUZ,XMK,XMKN,XMDETAIL,XMLEN,XMONE) ;
|
---|
67 | N XMLEFT
|
---|
68 | S XMLEFT=79
|
---|
69 | I XMDETAIL D
|
---|
70 | . S XMLEN("XMZ")=$L($O(^XMB(3.9,":"),-1))+2
|
---|
71 | . ;S XMLEN("XMZ")=$L($O(^XMB(3.7,XMDUZ,2,XMK,1,":"),-1))+2
|
---|
72 | . S XMLEN("LINE")=5
|
---|
73 | . I '$G(XMONE),'$D(XMLEN("BSKT")) S XMLEN("BSKT")=$$MIN^XLFMTH($L(XMKN),10)
|
---|
74 | . S XMLEN("RESP")=9
|
---|
75 | . S XMLEN("DATE")=$L($$MMDT^XMXUTIL1(DT))
|
---|
76 | . S XMLEFT=XMLEFT-XMLEN("XMZ")-XMLEN("LINE")-$G(XMLEN("BSKT"))-XMLEN("RESP")-XMLEN("DATE")-3+$S($G(XMLEN("BSKT")):0,1:1)
|
---|
77 | S:'$D(XMLEN("XMKZ")) XMLEN("XMKZ")=$L($O(^XMB(3.7,XMDUZ,2,XMK,1,"C",""),-1))
|
---|
78 | S XMLEFT=XMLEFT-XMLEN("XMKZ")-5
|
---|
79 | S XMLEN("SUBJ")=XMLEFT*2\3
|
---|
80 | S XMLEN("FROM")=XMLEFT-XMLEN("SUBJ")
|
---|
81 | Q
|
---|
82 | LISTMSG(XMK,XMKN,XMKZ,XMZ,XMDETAIL,XMLEN) ;
|
---|
83 | N XMZREC
|
---|
84 | S XMZREC=$G(^XMB(3.9,XMZ,0))
|
---|
85 | I XMDUZ=.5,XMK>999 D
|
---|
86 | . N XMTPRI ; Transmit priority
|
---|
87 | . S XMTPRI=$P($G(^XMB(3.7,.5,2,XMK,1,XMZ,0)),U,6)
|
---|
88 | . W !,$S($D(^TMP("XM",$J,".",XMKZ)):">",1:" "),$S('XMTPRI:" ",XMTPRI=1:"^",1:"v"),$J(XMKZ,XMLEN("XMKZ")),". "
|
---|
89 | E W !,$S($D(^TMP("XM",$J,".",XMKZ)):">",1:" "),$S('$D(^XMB(3.7,XMDUZ,"N0",XMK,XMZ)):" ",$P(XMZREC,U,7)["P":"!",1:"*"),$J(XMKZ,XMLEN("XMKZ")),". "
|
---|
90 | I XMDETAIL D
|
---|
91 | . W:$D(XMLEN("BSKT")) $$LJ^XLFSTR($E(XMKN,1,XMLEN("BSKT")),XMLEN("BSKT"))," "
|
---|
92 | . W $J("["_XMZ_"]",XMLEN("XMZ"))," ",$$DATE^XMXUTIL2(XMZREC,0)
|
---|
93 | . W " ",$$MELD^XMXUTIL1($$SUBJ^XMXUTIL2(XMZREC),$$LINES(XMZ),XMLEN("SUBJ")+XMLEN("LINE"))
|
---|
94 | . W " ",$$MELD^XMXUTIL1($$NAME^XMXUTIL($P(XMZREC,U,2)),$$RESPONSE(XMDUZ,XMK,XMZ),XMLEN("FROM")+9)
|
---|
95 | E D
|
---|
96 | . W $$LJ^XLFSTR($E($$SUBJ^XMXUTIL2(XMZREC),1,XMLEN("SUBJ")),XMLEN("SUBJ"))," ",$E($$NAME^XMXUTIL($P(XMZREC,U,2)),1,XMLEN("FROM"))
|
---|
97 | Q
|
---|
98 | HEADLINE(XMDUZ,XMK,XMKN) ;
|
---|
99 | N XMNEWCNT,XMCNT
|
---|
100 | S XMNEWCNT=$P(^XMB(3.7,XMDUZ,2,XMK,0),U,2)
|
---|
101 | S XMCNT=$P(^XMB(3.7,XMDUZ,2,XMK,1,0),U,4)
|
---|
102 | ;Basket / messages / message / new
|
---|
103 | Q XMKN_" "_$$EZBLD^DIALOG(34011)_", "_XMCNT_$S(XMCNT>1:$$EZBLD^DIALOG(34007.1)_" ("_$O(^XMB(3.7,XMDUZ,2,XMK,1,"C",0))_"-"_$O(^(""),-1)_")",1:$$EZBLD^DIALOG(34007))_$S(XMNEWCNT:", "_XMNEWCNT_$$EZBLD^DIALOG(34008),1:"")
|
---|
104 | HEADER(XMDETAIL,XMLEN,XMHDLINE) ;
|
---|
105 | I $D(XMHDLINE) W @IOF,XMHDLINE,!
|
---|
106 | E W @IOF
|
---|
107 | I XMDETAIL D
|
---|
108 | . W $$LJ^XLFSTR($$EZBLD^DIALOG(34001),XMLEN("XMZ")+$G(XMLEN("BSKT"),-1)+XMLEN("XMKZ")+XMLEN("DATE")+7,".") ;*=New/!=Priority
|
---|
109 | . W $$COMBO($$EZBLD^DIALOG(34002),$$EZBLD^DIALOG(34003.1),XMLEN("SUBJ")+XMLEN("LINE")) ;Subject / Lines
|
---|
110 | . W "."
|
---|
111 | . W $$COMBO($$EZBLD^DIALOG(34006),$$EZBLD^DIALOG(34004),XMLEN("FROM")+XMLEN("RESP")) ;From / Read/Rcvd
|
---|
112 | E D
|
---|
113 | . W $$LJ^XLFSTR($$EZBLD^DIALOG(34005),79-XMLEN("FROM"),"."),$$LJ^XLFSTR($$EZBLD^DIALOG(34006),XMLEN("FROM"),".") ;*=New/!=Priority.......Subject / From
|
---|
114 | Q
|
---|
115 | COMBO(XMSTR1,XMSTR2,XMLEN) ;
|
---|
116 | Q $$LJ^XLFSTR($E(XMSTR1,1,XMLEN-$L(XMSTR2)-1),XMLEN-$L(XMSTR2),".")_XMSTR2
|
---|
117 | LINES(XMZ) ;
|
---|
118 | Q +$P($G(^XMB(3.9,XMZ,2,0)),U,4)
|
---|
119 | RESPONSE(XMDUZ,XMK,XMZ) ;
|
---|
120 | I XMDUZ=.5,XMK>999 Q ""
|
---|
121 | N XMPTR,XMRESP,XMRESPS
|
---|
122 | S XMRESPS=+$P($G(^XMB(3.9,XMZ,3,0)),U,4)
|
---|
123 | I XMRESPS=0 Q ""
|
---|
124 | ;S XMPTR=$O(^XMB(3.9,XMZ,1,"C",$S(XMDUZ=.6:DUZ,1:XMDUZ),0))
|
---|
125 | S XMPTR=+$O(^XMB(3.9,XMZ,1,"C",XMDUZ,0))
|
---|
126 | S XMRESP=+$P($G(^XMB(3.9,XMZ,1,XMPTR,0)),U,2)
|
---|
127 | Q XMRESP_"/"_XMRESPS
|
---|
128 | LISTTMP ; List messages in ^TMP global
|
---|
129 | ; (This routine does NOT let the user read the messages.)
|
---|
130 | ; The following variables are expected to exist:
|
---|
131 | ; XMDETAIL 0=Summary; 1=Detailed
|
---|
132 | ; XMLEN
|
---|
133 | N XMK,XMKN,XMKZ,XMZ,XMABORT,XMREC
|
---|
134 | S XMABORT=0
|
---|
135 | D HEADER(XMDETAIL,.XMLEN)
|
---|
136 | S XMKZ=0
|
---|
137 | F S XMKZ=$O(^TMP("XM",$J,"MSG",XMKZ)) Q:XMKZ="" D Q:XMABORT
|
---|
138 | . I $Y+4>IOSL D PAGE^XMXUTIL(.XMABORT) Q:XMABORT D
|
---|
139 | . . D HEADER(XMDETAIL,.XMLEN)
|
---|
140 | . S XMREC=^TMP("XM",$J,"MSG",XMKZ)
|
---|
141 | . S XMK=$P(XMREC,U,1),XMKN=$P(XMREC,U,2),XMZ=$P(XMREC,U,3)
|
---|
142 | . D LISTMSG(XMK,XMKN,XMKZ,XMZ,XMDETAIL,.XMLEN)
|
---|
143 | Q
|
---|