3. Сценарии в бизнес-процессах
• UI и API – полностью аналогичны DocsVision 4.x
• Полная совместимость с DocsVision 4.x
• При обновлении сохраняется работоспособность всех
скриптов
www.docsvision.com Слайд: 3
4. Сценарии в карточках
• Специальный Конструктор скриптов
• Доступ к скриптам из Конструктора разметок
• Скрипты поддерживают наследование (начиная с
релиза 2120, «Корпоративная редакция») по
видам
www.docsvision.com Слайд: 4
5. Сценарии в карточках
• Используются языки C# и Visual Basic .Net
• Редактор кода поддерживает форматирование, подсветку
кода и аналог IntelliSense
• Скрипт можно написать в качестве обработчика любого
события любого элемента управления карточки, включая
саму карточку
• В скрипте можно использовать как старую, так и новую
объектную модель
www.docsvision.com Слайд: 5
12. Новая объектная модель
• Новый подход к работе с данными: контекст объектов
(ObjectContext)
• Позволяет загружать типизированные объекты, не
привязанные к пользовательской сессии
• Предоставляет сервисы для работы с объектами системы
www.docsvision.com Слайд: 12
13. Новая объектная модель
• Пример кода: получение данных сотрудника
DocsVision 4.x
Docsvision 5
www.docsvision.com Слайд: 13
14. Новая объектная модель
• Пример кода: получение данных руководителя
сотрудника
DocsVision 4.x
Docsvision 5
www.docsvision.com Слайд: 14
15. Новая объектная модель
• Пример кода: получение ФИО руководителя сотрудника
DocsVision 4.x
www.docsvision.com Слайд: 15
16. Новая объектная модель
• Пример кода: получение ФИО руководителя сотрудника
DocsVision 4.x
Docsvision 5
www.docsvision.com Слайд: 16
17. Новая объектная модель
• Получение данных
Получение данных по идентификатору в виде типизированных объектов
Получение связанных объектов через свойства, загрузка по требованию
Работа с ранее загруженными объектами
Простой поиск
www.docsvision.com Слайд: 17
18. Новая объектная модель
• Сохранение данных
Автоматическое сохранение изменений
Сохранение конкретного объекта
Замена слоя доступа к данным
www.docsvision.com Слайд: 18
19. Новая объектная модель
• Объекты системы
Базовая карточка
Документ, Задание
Справочник сотрудников
o Подразделения, сотрудники, группы, должности, адреса, …
Справочник контрагентов
Справочник категорий
Справочник ссылок
Справочник правил нумерации
Справочник видов
Конструкторы
…
www.docsvision.com Слайд: 19
20. Новая объектная модель
• Модель «сервис провайдер»
Для выполнения различных действий уровня бизнес-логики
используются сервисы
Сервис может быть получен из контекста по типу сервиса
www.docsvision.com Слайд: 20
22. Сервисы базовых объектов
• DocumentService
Создание документа (с указанием вида, с прикреплением основого
файла)
Работа с основным файлом: прикрепление, загрузка, удаление,
добавление версий, блокировка, проверка изменений, …
Работа с дополнительными файлами
Синхронизация свойств файла (MS Word) с полями карточки
Экспорт
Электронная подпись
www.docsvision.com Слайд: 22
23. Сервисы базовых объектов
• TaskService
Создание задания указанного вида, подчиненного задания
Копирование задания, создание дочернего задания копированием
Работа с параметрами исполнения (исполнитель, сроки, контролер, …)
Отправка в работу, отклонение, завершение исполнения, …
Делегирование
Работа с комментариями
Электронная подпись
www.docsvision.com Слайд: 23
24. Сервисы базовых объектов
• StaffService
Получение текущего сотрудника
Добавление новых подразделений, сотрудников, групп
Перевод сотрудника из одного подразделения в другое
Работа с личной папкой
Работа с заместителями, группами, должностями, адресами, …
Работа с ActiveDirectory
• PartnersService
Работа с контрагентами (добавление, редактирование)
• LinkService
Работа со справочником ссылок
www.docsvision.com Слайд: 24
25. Сервисы базовых объектов
• AccessCheckingService
Проверка доступности операции согласно ролевой модели
Получение списка выполняемых ролей
• StateService
Проверка доступности операций в соответствии с автоматом состояний
Получение состояний и операции по виду карточки
www.docsvision.com Слайд: 25
26. Новая объектная модель
• Комбинирование со старой объектной моделью
Можно получить пользовательскую сессию через метод
ObjectContext.GetService<UserSession>
В карточке по-прежнему доступны UserSession, CardData…
Сложный поиск – через SearchQuery
При работе и с объектами новой модели, и с CardData, необходимо
самостоятельно следить за синхронизацией данных
www.docsvision.com Слайд: 26
27. Использование из скрипта
this.CardControl – элемент управления карточки
CardControl.ObjectContext – контекст объектов
this.BaseObject – объект карточки
this.CardControl as ICustomizableControl – интерфейс
для работы с элементами формы карточки
this.Session – пользовательская сессия (ObjectManager)
www.docsvision.com Слайд: 27
28. Наследование в скриптах
• В версии 2120 («Корпоративная редакция») появилась
возможность писать скрипты для вида карточки, а не
только для типа
• В скрипте для вида можно использовать и
переопределять методы скрипта родительского вида
• Для этого методы в родительском виде должны быть
объявлены с модификаторами protected (или public) и
virtual
www.docsvision.com Слайд: 28
29. Новая объектная модель
Использование новой объектной модели в сценариях
бизнес-процессов:
https://docsvision.zendesk.com/entries/22077951-docsvision-5
«Использование объектов Docsvision 5 в скрипте бизнес-процесса»
www.docsvision.com Слайд: 29
30. Руководство разработчика
• В штатном «Руководстве разработчика» описания новых
элементов объектной модели пока нет
• Хорошей подсказкой могут стать скрипты типового
приложения «Управление документами»
• Вопросы можно и нужно задавать на форуме
support.docsvision.com
• К концу года появится официальное руководство и статья
(цикл статей) Best Practices
www.docsvision.com Слайд: 30
31. Спасибо за внимание!
«ДоксВижн» +7 (812) 335-35-15
199155, Санкт-Петербург, +7 (812) 335-35-32
наб. р. Смоленки, д. 33 Victor.Shisterov@docsvision.com
www.docsvision.com