1 | XMJMF ;ISC-SF/GMB-Find messages based on criteria ;07/10/2002 09:58
|
---|
2 | ;;8.0;MailMan;;Jun 28, 2002
|
---|
3 | ; Replaces ^XMA03,^XMAL0,^XMAL0A (ISC-WASH/CAP/THM)
|
---|
4 | ; Entry points used by MailMan options (not covered by DBIA):
|
---|
5 | ; FIND XMSEARCH
|
---|
6 | ; SUPER XM SUPER SEARCH
|
---|
7 | FINDBSKT(XMDUZ,XMK,XMKN) ; Find messages in a particular basket
|
---|
8 | D FIND^XMJMF1(XMDUZ,XMK,0,XMKN)
|
---|
9 | Q
|
---|
10 | FIND ; Find messages in any basket or find any message
|
---|
11 | N XMDIR,XMOX,XMOPT,XMY,XMABORT
|
---|
12 | D CHECK^XMVVITAE
|
---|
13 | S XMABORT=0
|
---|
14 | S XMDIR("A")=$$EZBLD^DIALOG(34410) ; Select message search method:
|
---|
15 | D SET^XMXSEC1("S",34411,.XMOPT,.XMOX) ; S:Search all messages by subject only
|
---|
16 | D SET^XMXSEC1("A",34413,.XMOPT,.XMOX) ; A:Search all messages by multiple criteria
|
---|
17 | D SET^XMXSEC1("M",34412,.XMOPT,.XMOX) ; M:Search my Mailbox by multiple criteria
|
---|
18 | S XMDIR(0)="S" ; show the choices
|
---|
19 | S XMDIR("?")=34414
|
---|
20 | S XMDIR("??")="XM-U-Q-SEARCH"
|
---|
21 | D XMDIR^XMJDIR(.XMDIR,.XMOPT,.XMOX,.XMY,.XMABORT) Q:XMABORT
|
---|
22 | K XMOX,XMOPT,XMDIR
|
---|
23 | D @XMY
|
---|
24 | Q
|
---|
25 | S ; Search all existing messages by subject
|
---|
26 | N DIR,Y,DIRUT
|
---|
27 | S DIR(0)="FO^3:30"
|
---|
28 | S DIR("A")=$$EZBLD^DIALOG(34415) ; Enter the string that the subject starts with
|
---|
29 | D BLD^DIALOG(34416,"","","DIR(""?"")")
|
---|
30 | ;The string may be from 3 to 30 characters.
|
---|
31 | ;We will find all messages whose subject starts with the string you enter.
|
---|
32 | ;We will search all existing messages which you have ever had access to,
|
---|
33 | ;whether they are in your mailbox or not.
|
---|
34 | ;The search is case-sensitive.
|
---|
35 | S DIR("??")="XM-U-Q-SEARCH SYSTEM"
|
---|
36 | D ^DIR Q:$D(DIRUT)
|
---|
37 | W !,$$EZBLD^DIALOG(34417) ; Searching...
|
---|
38 | D FIND^XMJMFA(XMDUZ,Y)
|
---|
39 | Q
|
---|
40 | A ; Search all existing messages by multiple criteria
|
---|
41 | D ALL(XMDUZ)
|
---|
42 | Q
|
---|
43 | ALL(XMDUZ,XMFLAG) ;
|
---|
44 | N XMTEXT
|
---|
45 | W !
|
---|
46 | ; * * * * * WARNING * * * * *
|
---|
47 | I $G(XMFLAG)="U" D
|
---|
48 | . D BLD^DIALOG(34418.5,"","","XMTEXT","F")
|
---|
49 | . ;This is the Super Search which looks at all messages
|
---|
50 | . ;in the MESSAGE file which were sent by anyone and everyone during the
|
---|
51 | . ;entire time period you select, regardless of whether or not you are
|
---|
52 | . ;party to the messages. This is a very powerful search and should not
|
---|
53 | . ;be abused. You should have good reason and authorization to be here.
|
---|
54 | E D
|
---|
55 | . D BLD^DIALOG(34418,"","","XMTEXT","F")
|
---|
56 | . ;This search looks at all messages in the MESSAGE file which were sent
|
---|
57 | . ;to you or by you during the entire time period you select.
|
---|
58 | D BLD^DIALOG(34419,"","","XMTEXT","F")
|
---|
59 | ;This search can take a very long time, depending on how many messages
|
---|
60 | ;were sent at this site during the time period you select, and how many
|
---|
61 | ;search criteria you specify. The more messages to search, the more
|
---|
62 | ;search criteria you specify, the longer the search will take.
|
---|
63 | ; This search can be VERY SLOW. Be forewarned!
|
---|
64 | D MSG^DIALOG("WM","",IOM,"","XMTEXT")
|
---|
65 | W !
|
---|
66 | D WAIT^XMXUTIL
|
---|
67 | D FIND^XMJMF1(XMDUZ,"!",$G(XMFLAG))
|
---|
68 | Q
|
---|
69 | M ; Search my mailbox by multiple criteria
|
---|
70 | D FIND^XMJMF1(XMDUZ,"*",1)
|
---|
71 | Q
|
---|
72 | SUPER ; Super Search all messages in the Message file
|
---|
73 | N XMDUZ,XMV
|
---|
74 | D INITAPI^XMVVITAE
|
---|
75 | I $D(XMV("ERROR")) D ERROR^XM(.XMV,"ERROR") Q
|
---|
76 | D ALL(DUZ,"U")
|
---|
77 | Q
|
---|