Общие вопросы > Разработка приложений
Перемещение писем в папки
K85:
если можете помогите :'(
уже раз 40 переделываю.......
создана база, в ней поля Name - название папки, Alias - доп.значение
потом в агенте
--- Код: ---If (Strcompare(FormName$, "Memo", 1) = 0) Then
Subject$ = Trim$(doc.Subject(0))
'Достаем КОДИФИКАТОР
S1$ = Strleft(Subject$, "-")
S1$ = Trim$(Right(S1$, Len(S1$)-1))
'Достаем КОДИФИКАТОР-2
S2$ = Strright(Subject$, "-")
S2$ = Trim$(Left(S2$, Len(S2$)))
--- Конец кода ---
проверяю название письма
далее необходимо найти это название в базе, но никак не могу понят как надо делать
--- Код: --- Dim DB As NotesDatabase
Dim Doc As NotesDocument
Set DB = session.GetDatabase ( db.Server, "BВ\\gf.nsf" )
Set DB_DbCodesLookup = DB.GetView("Papki")
Set Doc = DB_DbCodesLookup.GetDocumentByKey(Lcase(Doc.GetItemValue("Alias")(0)))
If Not Doc Is Nothing Then ........
--- Конец кода ---
если закончить If Not Doc Is Nothing Then S1$ = Doc.GetItemValue("Alias")(0)
то создается новая папка с подпапкой, а должно было найти нужную папку и в нее переместить
ViV:
Второй кусок кода странноватый...
--- Код: ---Set DB = session.GetDatabase ( db.Server, "BВ\\gf.nsf" )
--- Конец кода ---
один слеш лишний
Set DB = session.GetDatabase (db.Server, "BВ\gf.nsf")
--- Код: ---Set Doc = DB_DbCodesLookup.GetDocumentByKey(Lcase(Doc.GetItemValue("Alias")(0)))
--- Конец кода ---
откуда в Doc.GetItemValue("Alias")(0) может быть значение, если вы только ищете этот документ??
Set Doc = DB_DbCodesLookup.GetDocumentByKey(S2$)
If Not Doc Is Nothing Then
mainfstr = Doc.Alias(0)
End if
для папки
и
Set Doc = DB_DbCodesLookup.GetDocumentByKey(S1$)
If Not Doc Is Nothing Then
subfstr = Doc.Alias(0)
End if
для подпапки.
далее если заданы mainfstr и subfstr, то
Folder$ = mainfstr + "\" + subfstr
K85:
ViV
Огромное спасибо! Все работает.
Есть еще небольшое дополнение, вдруг кому-то будет надо, перед Folder$ = mainfstr + "\" + subfstr
необходимо опять вернуться в почтовую базу
--- Код: --- Set db = s.CurrentDatabase
Set doc=s.DocumentContext
--- Конец кода ---
так как иначе папки и подпапки создаются в базе BВ\gf.nsf
ViV:
Лучше использовать другую переменную для базы справочника, не db, тогда и возвращаться не прийдется;)
K85:
у меня появился еще один вопрос....
а можно ли как-то или после приема письма обновлять навигатор, чтобы папки сразу добавлялись или сделать кнопку, при нажатии которой будет происходить обновление папок(возможно это лучше, т.к. не будет постоянно запускаться)
Навигация
Перейти к полной версии