Поделиться через


Managing Rules in the Outlook Object Model

Объектная модель Rules поддерживает программное добавление, редактирование и удаление правил. Объекты коллекции Rule и Rules позволяют получать доступ, добавлять и удалять правила, определенные для сеанса. Объекты RuleAction и RuleCondition , их объекты коллекции, производные объекты действий и условий дополнительно поддерживают действия и условия редактирования.

Примечание.

Объектная модель Rules обеспечивает частичный паритет с мастером правил и оповещений в пользовательском интерфейсе Outlook. Хотя он не поддерживает все правила, которые можно создать с помощью мастера, он поддерживает наиболее часто используемые действия и условия правил. Как и любое правило, созданное с помощью мастера правил и оповещений , правила, созданные программным способом, применяются к сообщениям, к которым относятся почтовые элементы, приглашения на собрания, запросы на задачи, документы, квитанции о доставке, уведомления о прочтении, ответы на голосование и уведомления о отсутствии на рабочем месте.

Используйте Store.GetRules , чтобы получить объект коллекции Rules , представляющий правила, определенные для хранилища, используемого в текущем сеансе.

После получения набора правил для текущего сеанса можно добавить новые правила (с помощью Rules.Create), изменить существующие правила (путем включения или отключения правил, изменения порядка их выполнения и изменения действий и условий правил) или удаления правил (с помощью Rules.Remove) из этой коллекции Правил . Обратите внимание, что, хотя вы можете изменять правила, созданные в версиях Outlook до Microsoft Office Outlook 2007, вы не можете использовать более ранние версии Outlook для изменения правил, созданных в Office Outlook 2007 или более поздних версий.

Каждое правило в коллекции Rules можно получить, проиндексируя коллекцию с помощью Rules.Item(Index)с именем правила (свойство по умолчанию Rule.Name) или значением в диапазоне от 1 до общего числа правил в коллекции Rules.Count.

Rule.ExecutionOrder указывает порядок выполнения правил в коллекции и напрямую сопоставляется с числовым значением Index в Rules.Items(Index). Например, представляет правило с Rules.Item(1)значением Rule.ExecutionOrder 1, Rules.Item(2) представляет правило с значением Rule.ExecutionOrder 2, а Rules.Item(Rules.Count) правило с Rule.ExecutionOrderRules.Count.

После определения правила также следует включить его, задав для свойства Rule.Enabled значение True, а затем сохраните правило с помощью rules.Save , чтобы правило и его состояние сохранялись за пределами текущего сеанса. Правило включено только после успешного сохранения. Обратите внимание, что Rules.Save может быть дорогостоящей операцией с точки зрения производительности при медленных подключениях к Exchange Server. При необходимости можно отобразить диалоговое окно хода выполнения, в котором пользователь сможет отменить операцию. Сохранение завершается ошибкой, когда пользователь изменяет то же правило в мастере правил и оповещений или пользователь отменяет диалоговое окно хода выполнения. В таких случаях rules.Save вызовет ошибку, и пользователь урегулирует конфликт, ответив на диалоговое окно ошибки, созданное мастером правил и оповещений.

При использовании Rules.Save для сохранения одного или нескольких правил, созданных в Office Outlook 2007, появится диалоговое окно с напоминанием о том, что вы не сможете изменить это правило с помощью более ранних версий Outlook. Перед продолжением операции сохранения необходимо подтвердить диалоговое окно.

Используйте Rule.Execute для выполнения правила. Обратите внимание, что хотя необходимо включить и сохранить правило, чтобы оно было включено вне текущего сеанса, вы можете выполнить правило независимо от состояния его включения. При выполнении правила можно при необходимости указать папку для применения к правилу. По умолчанию правило выполняется для всех сообщений в папке "Входящие", но не для вложенных папок папки "Входящие".

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.