• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Печать в почтовой базе все сообщения за текущую дату

  • Автор темы nila
  • Дата начала
Статус
Закрыто для дальнейших ответов.
N

nila

Такая задача.
в Почтовой базе клиента нужно сделать такую опцию.
Печатать все сообщения за сегодняшнюю дату.

я наполняю коллекцию.
как эту коллекцию распечатать чтоб ui не видно было?

есть возомжность печати через uiview.Print но там нельзя дату прописать сегодняшную

И можно заходить на uidoc.Print но это тоже не катит
 
M

morpheus

nila
UnprocessedSearch + F1

в хєлпе есть относительно агентов
All unread documents in view Are unread and in the view
Meet the search criteria specified in Agent Properties box
Meet the @function search criteria specified in this method
 
N

nila

Код:
Sub Initialize
Dim ws As New NotesUIWorkspace
Dim session As New NotesSession
Dim db As NotesDatabase
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument
Dim uidoc As NotesUIDocument
Dim query As String

Dim i As Integer

On Error Goto onerr
Set db=session.CurrentDatabase
query = {(Form = "Memo") & @Date(DeliveredDate)=@Date(@Today)}
Set collection = db.Search( query, Nothing, 0 )
If collection.Count=0 Then Exit Sub	
Set doc=collection.GetFirstDocument

While Not(doc Is Nothing) 
Set uidoc=ws.EditDocument(False,Doc)
uidoc.Print(1)
'	Call doc.Save(True,True)
uidoc.Close(True)

Set doc=collection.GetNextDocument(doc)
Wend
Exit Sub
onerr:
Print "Agent" & Error(Err) & "(" & Erl & ")"
Resume rez
rez:
End Sub

Вот такой Агент... но на ui он не работает по расписанию

Мне надо печатать все за сегоднешний день.(
 
N

nila

Получается печатать можно только на ui.

Call uiview.Print()
Call uidoc.Print

Значит, агент по расписанию нельзя сделать что б наппример один раз в день, агент запускался и печатал письма???

Я сделала это при нажатии на кнопку печать.

Но тоже не красиво. так как в этом случае открывается документ на ui

Код:
While Not(doc Is Nothing) 
Set uidoc=ws.EditDocument(False,Doc)
uidoc.Print(1)
uidoc.Close(True)

Set doc=collection.GetNextDocument(doc)
Wend

Подскажите пожалуйста есть ли лучше решение?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 940
609
BIT
210
мне кажется, что задачу нужно решать, а не пытаться бороться с технологией...

вот мне не понятно -зачем печатать доки "за дату", а ежели там спам, неформатированые месюги, вложения и т.п.
вы представьте себе этот мусор...

возможно обрабатывать доки и затем выводить на печать, но надо понять в каком формате
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!