|
0 / 0 / 0
Регистрация: 16.07.2009
Сообщений: 110
|
|
применить почтовое правило к папке13.08.2009, 14:42. Показов 35758. Ответов 17
Метки нет (Все метки)
в оутлуке есть опция, которая позволяет применть созданное в данный момент почтовое правило ко всем, например, ранее пришедшим документам (письмам) в папке входящие (отсортировать по уведомлениям например).
В лотусе созданное в данный момент почтовое правило применяется только ко всем новым документам (новым письмам) Можно ли сделать так, чтобы почтовое правило в лотусе применилось ко всем документам в почте? ПРИМЕР - в почте уже 1000 писем - уведомлений, писем, и прочего - только что создано правило о сортировке - но действует только к новым письмам, которые будут приходить, как применить его к уже находящимся в почте пользолвателя? как сделать это в лотусе? подскажите есть ли програамное решение и какое?
0
|
|
| 13.08.2009, 14:42 | |
|
Ответы с готовыми решениями:
17
Почтовое правило в шаблоне базы Не могу применить правило Лопиталя Применить действие для большого количества файлов в папке |
|
0 / 0 / 0
Регистрация: 28.06.2009
Сообщений: 1,567
|
|
| 13.08.2009, 14:50 | |
|
написать агента... или проще найти - на open.ntf наеврняка есть.. вроде видел в тамошнем модифицированном почтовом шаблоне...
0
|
|
|
0 / 0 / 0
Регистрация: 16.07.2009
Сообщений: 110
|
||
| 13.08.2009, 14:58 | ||
0
|
||
|
0 / 0 / 0
Регистрация: 28.06.2009
Сообщений: 1,567
|
|
| 13.08.2009, 15:14 | |
|
openntf.org
0
|
|
|
0 / 0 / 0
Регистрация: 16.07.2009
Сообщений: 110
|
|
| 13.08.2009, 15:27 | |
|
заблудилась в дебрях сайта. подскажите что именно и в каком направлении искать, пожалуйста, пока нашла только обсуждения на форумах про эту задачку.
0
|
|
|
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
|
|
| 13.08.2009, 15:51 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 28.06.2009
Сообщений: 1,567
|
|
| 13.08.2009, 16:05 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 16.07.2009
Сообщений: 110
|
||
| 13.08.2009, 17:11 | ||
может лучше подскажете с чего писать своего агента??? =) пока знаю что правила хранятся в профайле CalendarProfile, а дальше куда не понятно
0
|
||
|
0 / 0 / 0
Регистрация: 16.07.2009
Сообщений: 110
|
|
| 17.08.2009, 10:31 | |
|
вообще, я вижу два пути решения задачи -
первое - агент на лоту скрипте - залесть в папку правила и по каждому правилу вытащить условие отбора писем, преобразовать эти условия к нормальным на лотус скрипте, вытащить действия по данному условию и преобразовать к действию на лотус скрипте, ко всем документам в папке входящие задать поиск по заданному условию и в случае успеха выполнить заданные действия. и так по каждому правилу. но здесь я вижу следующую проблему - необходимость преобразования условий из правила на лотус скрипт. возможно ли это все корректно будет сделать второе - правила хранятся в профайле calendarprofile в полях $FilterFormula + номер правила на языке формул. можно попробовать вытащить эти условия оттуда, но проблема - как это условие на языке формул применить ко всей почте в папке??? подскажите как быть пожалуйста
0
|
|
|
0 / 0 / 0
Регистрация: 08.08.2009
Сообщений: 178
|
|
| 17.08.2009, 17:58 | |
|
Немножко теории:
Почти все правила создаются и редактируются в папке Правила в почтовой базе. Кроме самой формулы документы правил содержат и все параметры правил. Также в почтовой базе есть скрипт с открытым кодом, который создает формулу правила. Воспользоваться самой формулой может и не получится, причем трудности могут быть не только сдекомпиляцией формулы, но и со специфичными собаками типа @MailFilterAddToFolder. Как бы я это делал: 1. Разобраться в скрипте библиотеки Rules 2. Разобравшись в коде функции ProcessConditions(), написать код получения формулы условия по значению поля tokConditionList. Там почти ничего делать не придется. 3. Написать код выполнения действий из поля tokActionList по аналогии с функциями ProcessActions и ActionParser. При этом использовать везде где можно Evaluate. А где нельзя делать аналог на скрипте. 4. Написать код, который в указанной папке делает поиск по формуле, полученной в пункте 2. 5. Написать код, который выполняет функцию из пункта 3 с каждым найденным документом.
0
|
|
|
0 / 0 / 0
Регистрация: 16.07.2009
Сообщений: 110
|
||
| 19.08.2009, 10:22 | ||
0
|
||
|
0 / 0 / 0
Регистрация: 08.08.2009
Сообщений: 178
|
|
| 19.08.2009, 10:38 | |
|
В данном случае для каждого документа doc из папки выполнить
formulaResult = Evaluate(formula, doc) If cstr(formulaResult(0)) = "1" Then для данного документа условие выполнено всякий код End If Предполагается, что formula возвращает либо @true, либо @false, которые соответственно равны 1 и 0. P.S. Вообще есть метод NotesDatabase.Search, который позволяет найти все документы удовлетворяющие формуле, но в нашей задаче он не подходит, потому что вам нужно применить правило не ко всем документам в базе, а лишь к документам в определенной папке.
0
|
|
|
0 / 0 / 1
Регистрация: 30.06.2007
Сообщений: 2,153
|
||||||
| 19.08.2009, 10:39 | ||||||
|
nadezdaMP
Та же формула, только без select и засунутая в db.Search:
0
|
||||||
|
0 / 0 / 0
Регистрация: 16.07.2009
Сообщений: 110
|
|
| 20.08.2009, 15:49 | |
|
Спасибо!!)) появился вопрос:
1) в действиях есть команда - остановить обработку, на которую EZ ставит @MailFilterStopProcessing. вот интересно, возможно ли и как эту команду реализовать на лотус скрипте =) 2)как лучше реализовать, дать возможность пользователям при редактировании или создании правил - на форме (RulesDlg) ставить галочку - применить правило ко всей старой почте, при закрытии формы проверить, если поставлена, то в отсортировать все письма в почте; но если они это правило захотят применить и к старой и к новой поступающей почте - то как быть, я так понимаю при закрытии формы сработает сортировка старой почты, но само правило будет действовать и ко вновь приходящей почте тоже, так?? =)) 3) если в почте у пользователя, скажем так, 5 000 - 8 000 писем (бывают такие пользователи), у него при отработке такого правила (сортировка старой почты) комп не повиснет (лотус не повесится)??
0
|
|
|
0 / 0 / 0
Регистрация: 08.08.2009
Сообщений: 178
|
|
| 20.08.2009, 18:23 | |
|
1. Это правило нужно, чтобы не отрабатывали правила ниже в списке. Поскольку вы хотите сделать выполнение только по одного правила, то в этом случае не нужно делать ничего. А такая команда в лотус скрипте есть ;)
2. Я бы сделал кнопку в папке Rules "Применить к старым письмам". Правило можно просто выключить и оно не будет действовать на новую почту. 3. Комп и Лотус переживут. Пользователю придется подождать. Вы можете сделать эту операцию с помощью запуска агента на сервере Call agent.RunOnServer(Cstr(ruleDoc.NoteID))
0
|
|
|
0 / 0 / 0
Регистрация: 16.07.2009
Сообщений: 110
|
||
| 23.08.2009, 09:11 | ||
или по одному, которое выберет пользователь? ps спасибо за ответы, вы мне очень помогли))
0
|
||
|
0 / 0 / 0
Регистрация: 08.08.2009
Сообщений: 178
|
|
| 23.08.2009, 11:45 | |
|
Я думаю, что лучше применять одно, которое выберет пользователь.
0
|
|
|
0 / 0 / 0
Регистрация: 16.07.2009
Сообщений: 110
|
|
| 27.08.2009, 16:03 | |
|
Доброго времени суток всем!!!
С почтой все хорошо, но в одном месте застряла!!! помогите пожалуйста!!! есть одна загвоздка : когда обрабатываю действие - отправить копию (только заголовки или всю)- в библиотеке Rules_ru-RU в процедуре ActionParser выполняется ... //Forward to Case "B" Let str_tmpAppendString = |"COPYTO| + ACT_sBehavior + STR_DELIMETERSEP + Replace(ACT_sString,|:|,|,|) + |")| s_MAINFORMULA = s_MAINFORMULA + "@SetField(""$FilterActions"";" + "@Trim($FilterActions:" + str_tmpAppendString + ");@SetField(""DisplayCopyTo_Icon"";""1" ")" ... на лотус скрипте переписала следующим образом (беру указанное имя, проверяю - если есть в локальной адресной книге - заменяю на e-mail, если нет, оставляю таким же,в конце в цикле отсылаю все пиьсмо по указанным адресам) str0 = ACT_sString Dim session As New NotesSession Set db = session.GetDatabase("", "names.nsf", False) Set view = db.GetView("My Contacts") sStr = Split(str1, |,|) Forall fio In sStr arr = Split ( fio, " ") resym = arr (Lbound(arr)) If Ubound(arr) = 1 Then resfam = arr (1) Elseif Ubound(arr) = 2 Then resfam = arr (2) End If If (resym <> "") And (resfam <> "") Then res = resfam + "," + " " + resym Elseif (resym <> "") And (resfam = "") Then res = resym Set docview = view.GetDocumentByKey (res, True ) If docview Is Nothyng Then result = result + fio + "," Else value = docview.GetItemValue ("MailAddress")(0) result = result + value + "," End If End Forall result = Left(result, Len(result)-1) result = Split(result,",") Forall r In result Call indoc.Send(True, r) End Forall в итоге у меня отсылается по куче копий ( по три(?) копии) каждого письма - не ясно почему?? и при попытке письмо отправить выходит сообщение - вопрос "You have requested to sign thys internet message, but your current ID does not contain or does not specify an Internet sertificate for signing. Select OK to send the message anyway". жму ОК и только тогда письмо отправляется. и как сделать рассылку только заголовков письма?? там же, в этой процедуре указаны варианты .... // Journal Message Case "5" .... // move to database Case "6" .... // dont deliver message Case "8" .... // Change routing state Case "9" они, если смотреть через EZ , в tokactionlist не указываются, для чего они вообще тогда нужны?? SOS, подскажите кто что знает пожалуйста!)
0
|
|
| 27.08.2009, 16:03 | |
|
Помогаю со студенческими работами здесь
18
Правило Саррюса (правило треугольников, метод звездочки) Pascal Почтовое оповещение
Не отправляется почтовое сообщение Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|