1 | XMUT41 ;(ISC-SF/GMB- XMUT4 (Cont.) ;04/17/2002 11:52
|
---|
2 | ;;8.0;MailMan;;Jun 28, 2002
|
---|
3 | WARNING(XMABORT) ;
|
---|
4 | N DIR,X,Y,XMTEXT
|
---|
5 | W !
|
---|
6 | D BLD^DIALOG(36084,"","","XMTEXT","F")
|
---|
7 | D MSG^DIALOG("WM","","","","XMTEXT")
|
---|
8 | W !
|
---|
9 | ;The MailMan file checker may take some time to process.
|
---|
10 | ;If you have not tried it before, PLEASE try it when the
|
---|
11 | ;system will be quiescent for a LONG period of time.
|
---|
12 | ;Errors listed are generally not fatal. Most errors are
|
---|
13 | ;corrected. Please enter a NOIS if there are many errors.
|
---|
14 | ;Keep the error printout for future reference. If you see
|
---|
15 | ;errors in MailMan, the printout may help to resolve them.
|
---|
16 | S DIR(0)="Y",DIR("A")=$$EZBLD^DIALOG(36085) ; Do you wish to proceed
|
---|
17 | S DIR("B")=$$EZBLD^DIALOG(39053) ; "NO"
|
---|
18 | D ^DIR
|
---|
19 | I $D(DIRUT)!'Y S XMABORT=1
|
---|
20 | Q
|
---|
21 | MXREF(XMABORT) ;
|
---|
22 | ; XMECNT # msgs in mailbox
|
---|
23 | N XMZ,XMUSER,XMECNT,XMK
|
---|
24 | W:'$D(ZTQUEUED) !!,$$EZBLD^DIALOG(36086),! ; Checking M xref
|
---|
25 | S (XMZ,XMECNT)=0
|
---|
26 | F S XMZ=$O(^XMB(3.7,"M",XMZ)) Q:'XMZ D Q:XMABORT
|
---|
27 | . S XMECNT=XMECNT+1 I XMECNT#5000=0 D Q:XMABORT
|
---|
28 | . . I '$D(ZTQUEUED) W:$X>40 ! W XMECNT,"." Q
|
---|
29 | . . I $$S^%ZTLOAD S (XMABORT,ZTSTOP)=1 ; User asked the task to stop
|
---|
30 | . S XMUSER=""
|
---|
31 | . F S XMUSER=$O(^XMB(3.7,"M",XMZ,XMUSER)) Q:'XMUSER D
|
---|
32 | . . S XMK=""
|
---|
33 | . . F S XMK=$O(^XMB(3.7,"M",XMZ,XMUSER,XMK)) Q:'XMK D
|
---|
34 | . . . Q:$D(^XMB(3.7,XMUSER,2,XMK,1,XMZ,0))
|
---|
35 | . . . K ^XMB(3.7,"M",XMZ,XMUSER,XMK)
|
---|
36 | . . . D ERR^XMUT4(121,XMUSER,XMK,XMZ) ; M xref, but msg not in bskt: xref killed
|
---|
37 | Q:XMABORT!$D(ZTQUEUED)
|
---|
38 | W !
|
---|
39 | D BLD^DIALOG(36092,XMECNT,"","XMTEXT","F")
|
---|
40 | D MSG^DIALOG("WM","",IOM,"","XMTEXT")
|
---|
41 | ;|1| unique messages referenced in MAILBOX file 3.7
|
---|
42 | Q
|
---|
43 | POSTBSKT ; Check the Postmaster's bskts to see if any remote bskts
|
---|
44 | ; are numbered below 1000. If so, move them.
|
---|
45 | N XMK,XMKN,XMKINST,XMZ,XMINST,XMPUT
|
---|
46 | S XMK=1
|
---|
47 | F S XMK=$O(^XMB(3.7,.5,2,XMK)) Q:XMK>999!'XMK S XMKN=$P(^(XMK,0),U,1) D
|
---|
48 | . S XMINST=$$FIND1^DIC(4.2,"","XQ",XMKN)
|
---|
49 | . Q:'XMINST
|
---|
50 | . D ERR^XMUT4(160,.5,XMK) ; Xmit basket<1000 has domain name: investigate msgs.
|
---|
51 | . ; This bskt has a remote site name. Does it have msgs to xmit?
|
---|
52 | . S XMKINST=XMINST+1000
|
---|
53 | . I '$D(^XMB(3.7,.5,2,XMKINST)) D MAKEBSKT^XMXBSKT(.5,XMKINST,XMKN)
|
---|
54 | . S (XMZ,XMPUT)=0
|
---|
55 | . F S XMZ=$O(^XMB(3.7,.5,2,XMK,1,XMZ)) Q:'XMZ D
|
---|
56 | . . I '$D(^XMB(3.9,XMZ,1,"AQUEUE",XMINST)) D Q
|
---|
57 | . . . ; This msg does not need to be transmitted. Does it belong here?
|
---|
58 | . . . Q:$D(^XMB(3.9,XMZ,1,"C",.5))!$$BCAST^XMXSEC(XMZ)
|
---|
59 | . . . D ERR^XMUT4(161,.5,XMK,XMZ) ; Msg in xmit basket<1000 not addressed to Postmaster: deleted.
|
---|
60 | . . . D ZAPIT^XMXMSGS2(.5,XMK,XMZ)
|
---|
61 | . . ; This msg needs to be transmitted. Is it in the real xmit bskt?
|
---|
62 | . . Q:$D(^XMB(3.7,.5,2,XMKINST,1,XMZ)) ; already there
|
---|
63 | . . S XMPUT=XMPUT+1
|
---|
64 | . . I $D(^XMB(3.9,XMZ,1,"C",.5))!$$BCAST^XMXSEC(XMZ) D Q
|
---|
65 | . . . D ERR^XMUT4(162,.5,XMK,XMZ) ; Msg in xmit basket<1000: copied to proper bskt.
|
---|
66 | . . . D PUTMSG^XMXMSGS2(.5,XMKINST,XMKN,XMZ)
|
---|
67 | . . D ERR^XMUT4(163,.5,XMK,XMZ) ; Msg in xmit basket<1000: moved to proper bskt.
|
---|
68 | . . D COPYIT^XMXMSGS2(.5,XMK,XMZ,XMKINST)
|
---|
69 | . . D ZAPIT^XMXMSGS2(.5,XMK,XMZ)
|
---|
70 | . Q:$$BMSGCT^XMXUTIL(.5,XMK)
|
---|
71 | . N XMFDA
|
---|
72 | . S XMFDA(3.701,XMK_",.5,",.01)="@"
|
---|
73 | . D FILE^DIE("","XMFDA")
|
---|
74 | . D ERR^XMUT4(164,.5,XMK) ; Xmit basket<1000 with no msgs: deleted.
|
---|
75 | Q
|
---|
76 | SUMMARY(XMABORT) ;
|
---|
77 | I $G(ZTSTOP) W !!,$$EZBLD^DIALOG(36422) ; *** Stopping prematurely per user request ***
|
---|
78 | W !!,$$EZBLD^DIALOG(36087) ; Summary of Integrity Check:
|
---|
79 | D SUM(36089,36000.1,99,199) ; Results for MAILBOX file 3.7:
|
---|
80 | D SUM(36091,36300.1,199,299) ; Results for MESSAGE file 3.9:
|
---|
81 | K XMERROR
|
---|
82 | Q
|
---|
83 | SUM(XMTITLE,XMBASE,XMSTART,XMLIMIT) ;
|
---|
84 | N XMERRNUM,XMPARM,XMTEXT
|
---|
85 | W !!,$$EZBLD^DIALOG(XMTITLE) ; Results for xxx file xxx:
|
---|
86 | S XMERRNUM=XMSTART
|
---|
87 | F S XMERRNUM=$O(XMERROR(XMERRNUM)) Q:'XMERRNUM!(XMERRNUM>XMLIMIT) D
|
---|
88 | . S XMPARM(1)=$J(XMERRNUM,3),XMPARM(2)=XMERROR(XMERRNUM)
|
---|
89 | . W !!,$$EZBLD^DIALOG(36090,.XMPARM) ; Type |1| errors=|2|
|
---|
90 | . D BLD^DIALOG(XMBASE+XMERRNUM,"","","XMTEXT","F")
|
---|
91 | . D MSG^DIALOG("WE","",IOM,"","XMTEXT")
|
---|
92 | I '$D(XMPARM) W !,$$EZBLD^DIALOG(36088) ; No errors to report.
|
---|
93 | Q
|
---|