Установка признака "Прочтен" у почтового сообщения в бизнес-процессе СЭД DocsVision

Источник: dvprofessionals
Михаил Захаров

Если ваш бизнес-процесс работает с письмами, а затем их удаляет. При этом возможно возникновение ситуации, когда отправитель установил признак "Уведомлять о прочтении", а т.к. процесс письмо после обработки удалил, то Exchange отправит уведомление типа "Ваше письмо было удалено без прочтения". Пользователь сразу начинает злиться, что его письма удаляют. До недавнего времени и наши процессы в техподдержке этим страдали.

Решает проблему простенький сценарий:

' подключение системных библиотек
Imports System
Imports System.Xml

' подключение библиотек СУБП
Imports DocsVision.Workflow.Objects
Imports DocsVision.Workflow.Runtime
Imports DocsVision.Workflow.Gates
Imports DocsVision.Platform.HelperAPI

Namespace DVScriptHost

Public Class DVScript

Public Sub Execute(ByVal process As ProcessInfo, ByVal passInfo As PassState)

Try
' шлюз в почту
' Dim oEXGate As ExGate = CType(process.Gates(ExGate.GateID), ExGate)

' почтовое сообщение
Dim varMail As ProcessVariable = process.GetVariableByName("Сообщение")
Dim oMail As ExMessage = CType(varMail.Value, ExMessage)
oMail.Unread = False

Catch Err As Exception

' запись в журнал ошибки исполнения
process.LogMessage("Ошибка выполнения скрипта:" + Err.Message)

End Try

End Sub

End Class

End Namespace

В бизнес-процессе, переменная "Сообщение" имеет тип "Почтовое сообщение" и хранит в себе письмо. Пользователи довольны, увидев сообщение типа "Сообщение прочитано: 29 июня 2009 г. 17:31:13 (GMT+03:00) Волгоград, Москва, Санкт-Петербург", которое теперь отправляет Exchange.


Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=21108