Агент по приходу почты

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

Lench

#1
Доброе время суток!
Есть проблема с агентом
собственно создан сам агент, тип "on event", before new mail arrives
в нем написан код Лотус скрипт
Код:
Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Set db = session.CurrentDatabase
Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument

Set Doc = New NotesDocument (db)
doc.Form = "Memo" 

doc.SendTo = "ххх@ххх.com.ua" 
doc.Subject = "qqq" 
Call doc.Send( False)
End Sub
Если в тестовом запуске все работает (письмо приходит), то по событию не срабатывает
На клиенте включено "enable sheduled local agents"
в свойствах базы не запрещен запуск агентов
Подскажите пож, что еще надо сделать?
В хелпе прочитали что нельзя пользовать интерфейсные функции, в том числе @MailSend, а вот есть ли какие-то ограничения на Лотус скрипт - не знаю
ПОМОГИТЕ ПОЖ!!!
:)
 

morpheus

скриптописец
07.08.2006
3 915
1
#3
Для: Lench
Как правильно выразился Constantin A Chervonenko какого ...
<!--QuoteBegin-Lench+27:03:2007, 18:38 -->
<span class="vbquote">(Lench @ 27:03:2007, 18:38 )</span><!--QuoteEBegin-->Dim workspace As New NotesUIWorkspace
[snapback]60360" rel="nofollow" target="_blank[/snapback]​
[/quote] ????
В этом коде его можно безболезненно удалить

Читать тут
 
L

Lench

#4
Для Constantin A Chervonenko и Morpheus:
Большое спасибо, что ответили.
Без UI агент сработал. Я наконец то разобралась, что UI это user interface и что это означает.

Подскажите пожалуйста еще один момент.
Мне нужно, чтобы этот агент срабатывал только на определенный входящий документ -
на форму (напр. "TaskNotice").
Какая функция может сделать такую переборку?
Спасибо.
 
L

Lench

#5
Получилось с помощью свойства UnprocessedDocuments (класс Database)
Код:
	'документ, который отправляем
Dim doc As NotesDocument
' входящий документ
Dim doc2 As NotesDocument
Dim collection As NotesDocumentCollection

Set db = session.CurrentDatabase
Set doc = New NotesDocument (db)

Set collection = db.UnprocessedDocuments
Set doc2 = collection.GetFirstDocument ()

While Not (doc2 Is Nothing)
If (doc2.GetItemValue("Form")(0) = "TaskNotice" ) Then 
doc.SendTo = "ххх@ххххх.com.ua" 
doc.Subject = "iii"
Call doc.Send( False)
End If

Set doc2 = collection.GetNextDocument (doc2)
Call session.UpdateProcessedDoc(doc2)
Wend
Может кому и пригодится.
 
Статус
Закрыто для дальнейших ответов.