Общие вопросы > Разработка приложений
Отображение изменений в задаче
ViV:
При записи условия поиска имя поля обрамляется в квадратных скобках:
{[Subject] = "111"}
Причем базы, по которым происходит полнотекстовый поиск должны быть проиндексированы.
А для чего вам нужен ProcessDb? Работайте с db.
lotusnotes.ru:
--- Цитата: K85 от 13 Январь 2010, 15:48:08 ---Помогите, пожалуйста. Какой-то ужас с этим агентом.
Не могу сообразить. Сейчас получается, что агент доходит до строки
If ProcesDb.IsOpen Then
и после этой строки, сразу переходит в строку
End If
End If
End If
Wend
Не могу понять, как по полю из рабочей базы искать задачи в почтовой базе пользователей.
--- Конец цитаты ---
так все-таки ProcesDb или ProcessDb?
K85:
If ProcessDb.IsOpen Then
Но уже переделываю....
Может поскажете, как найти документы в почтовой базе пользователя, которые имеют одиноковый Unid, с документами в другой базе (в которой и формируется задача)
При сохранении в базе (в которой и формируется задача) документа заполняется NotesId. Если найдена сама почта пользователя Evaluate({@NameLookup([Exhaustive];} + adr + {;"MailFile")}), известен NotesId (Set doc = db.GetDocumentByID(NoteId)), то как потом работать с его базой и как в ней найти домументы?
lotusnotes.ru:
Предлагаю следующий алгоритм:
1. Когда создаете документ в почтовой базе пользователя, получаете UNID создаваемого документа (maildoc.UniversalID).
set maildoc = maildb.CreateDocument
2. Этот UNID сохраняете в специальное поле в документ в рабочей базе (где формируется задача).
Например:
doc.MailDocID = maildoc.UniversalID
call doc.Save (true, true)
3. Если в рабочей базе меняется задача (документ doc) и нужно изменить соответствующую задачу в почтовой базе пользователя, то или создаем агента, запускающегося при изменении документов в рабочей базе, или обрабатываем событие сохранения документа (когда пользователь меняет поля). Агент находит соответствующий документ в почтовой базе по его сохраненному UNID:
set maildoc = maildb.GetDocumentByUNID(doc.MailDocID(0))
maildoc.Subject = doc.Subject(0) 'здесь обновляем задачу в почте
...
call maildoc.save(true,true)
K85:
В документе при нажатии кнопки указываю, что документ закрыт:
--- Код: ---If (note.Status(0)= "0") Then
memo.DueState = 9
memo.DueDateTime=note.DateClosed(0)
memo.Form = "Task"
End If
--- Конец кода ---
пробовал memo.DueState = "9"
что не так? на почту приходит письмо, но не указывается, что оно выполненное
Навигация
Перейти к полной версии