Форум продуктов IBM Lotus

Общие вопросы => Поддержка => Тема начата: ViV от 10 Ноябрь 2011, 23:52:01

Название: Как написать правило, чтобы автоматически сформированные...
Отправлено: ViV от 10 Ноябрь 2011, 23:52:01
09.11.2011 | Татьяна

Подскажите как написать правило, чтобы автоматически сформированные, отчеты о доставке приходили в отдельную папку.

-- Вопрос из он-лайн чата сайта lotusnotes.ru (http://lotusnotes.ru/) --
Название: Re: Как написать правило, чтобы автоматически сформированные...
Отправлено: K85 от 25 Ноябрь 2011, 20:06:02
в правиле указать:
Форма равняется <название Формы> (Delivery Report  и Return Receipt) и указать действие (переместить в папку <заранее создать папку и ее выбрать в данном пункте>)
Название: Re: Как написать правило, чтобы автоматически сформированные...
Отправлено: Ermilov Kirill от 30 Ноябрь 2011, 13:52:20
Чтобы не создавать новую тему, напишу тут. Клиент версии 7.0.4 , сервер тоже. Как после создания правила сделать, чтобы оно обработало всю почту в представлениие "Входящие" и распихало, например, по папкам? Вручную достаточно долго, т.к. писем в районе 50 тысяч... Что-то не отыскал информации
Название: Re: Как написать правило, чтобы автоматически сформированные...
Отправлено: K85 от 30 Ноябрь 2011, 16:03:41
Чтобы не создавать новую тему, напишу тут. Клиент версии 7.0.4 , сервер тоже. Как после создания правила сделать, чтобы оно обработало всю почту в представлениие "Входящие" и распихало, например, по папкам? Вручную достаточно долго, т.к. писем в районе 50 тысяч... Что-то не отыскал информации
Правило не работает на документы, которые уже пришли.
Можно написать агент и указать что-то вроде:
Dim s As  NotesSession
Dim doc As NotesDocument
Set s = New NotesSession
Dim db As NotesDatabase
Set db = s.CurrentDatabase
Dim view As NotesView
Dim viewEntries As NotesViewEntryCollection
Dim viewEntry As NotesViewEntry
Set view = db.GetView("($Inbox)")  ' указать из какой папки или вьюхи будем перемещать, можно указать ($ALL) тогда по всем документам отработает
If (view Is Nothing) Then Exit Sub
Set viewEntries = view.AllEntries()
Set viewEntry = viewEntries.GetFirstEntry()

While Not(viewEntry Is Nothing)
Set doc = viewEntry.Document
dan=doc.GetItemValue(<указать поле, по которому будет происходить отбор>)(0)
If dan="<написать чем должно равняться поле>" Then
Call doc.PutInFolder("<папка>")
doc.RemoveFromFolder("($Inbox)")
End If
Set viewEntry = viewEntries.GetNextEntry(viewEntry)
Wend