Чтобы пользоваться сессией - объект UserSession, в сценариях, нужно её создать.
Делается это так:
C#
// получаем шлюз
DVGate oGate = (DVGate)process.Gates[DVGate.GateID];
// получаем сессию
UserSession oSession = oGate.Session;
VB.NET
' получаем шлюз
Dim oGate As DVGate = CType(process.Gates(DVGate.GateID), DVGate)
' получаем сессию
Dim oSession As DocsVision.Platform.ObjectManager.UserSession = oGate.Session
Нельзя пользоваться сессией Workflow: process.Session
Читать дальше
Поиск
Ярлыки
авто генерация кода
(1)
Администрирование DocsVision
(60)
Атрибутивный поиск
(3)
База данных
(24)
Базы знаний
(1)
Безопасность
(1)
Бизнес-процессы
(20)
Блог
(2)
Вы увидите это первыми
(1)
Групповые политики
(1)
Диаграммы
(2)
Задания
(2)
Интеграция
(2)
Карточки DocsVision
(14)
Конструктор Решений
(11)
Маркетинг и продажи
(4)
Навигатор
(3)
Новое
(3)
Новости
(32)
Опрос
(4)
Опросы DocsVision
(4)
Оптимизация
(3)
Отчеты
(2)
Ошибки
(1)
Поддержка
(14)
Полезные ссылки
(1)
Представления
(4)
Производительность
(5)
Разбор полетов
(18)
Разработка для Workflow
(7)
разработка карточек
(2)
Разработка на платформе DocsVision
(41)
Разработка решений
(43)
Расширение платформы
(1)
Расширенные отчеты
(9)
Решения на платформе DocsVision
(6)
Сервисы DocsVision
(3)
Сканеры
(3)
Справочник сотрудников
(1)
Справочник типов
(1)
Установка
(1)
Утилиты
(13)
Шлюз в SharePoint
(8)
Штрихкод
(2)
Cкрипты карточек
(7)
DocsVision внутри
(1)
DocsVision Live
(1)
FileStream
(1)
FireFox
(2)
Opera
(1)
Powershell
(5)
Safari
(1)
SharePoint2007
(1)
SharePoint2010
(2)
Silverlight
(1)
UltraViews
(1)
Vista
(1)
7 коммент.:
можете раскрыть причины подобного ограничения? к каким последствиям может привести использование сессии workflow?
В версии 4.1 такой сценарий не будет компилироваться. ИМХО причина в том, что Workflow и скомпилированный сценарий используют разные библиотеки (DocsVision.Platform.ObjectManager.dll и DocsVision.ObjectManager.Interop.dll), и привести такие типы, хоть они и выглядят одинаково, не получится.
т.е. "нельзя пользоваться сессией Workflow" - это не рекомендация, а указание на физическую невозможность использования?
да, именно так
А в версии DocsVision 4.0 имеет значение, какую сессию использовать - process.Session или полученную через шлюз? Может ли использование process.Session привести к каким-либо нежелательным последствиям (кроме проблем при переходе на новую версию)?
В 4.0 не замечено проблем. Но зачем себе создавать трудности :). Странно, что такой способ нигде не описан, однако многие им пользуются.
Drago, вот только проблемы с переходом и будут, когда нужно будет позаботиться о том, чтобы во всех сценариях всех активных процессов внеслись изменения... поэтому лучше об этом позаботиться заранее :)
Михаил Захаров, да, он правда нигде не описан... такой способ брался из примеров сценариев при внедрении digdes-ом...
Отправить комментарий