Разработка схемы данных карточки

Архитектура Docsvision предусматривает строго определённый способ взаимодействия ядра системы с пользовательскими карточками. Чтобы карточку можно было использовать в системе, структуры данных карточки и её программные компоненты должны соответствовать определённым стандартам.

Хранилище для данных карточки создаётся в базе данных Docsvision автоматически. При этом в качестве исходных данных используется XML-файл с описанием структуры данных — схема карточки, которая должна быть подготовлена заранее. Файл содержит сведения о количестве данных в карточке, их типах и связях между ними. Фактически этот файл используется и при разработке программных компонент карточки, так как многие функции системы используют в качестве параметров вызова идентификаторы (GUID), которые закреплены за определёнными секциями данных в файле описания структуры.

Схема данных карточки описывает разделы (секции), которые в свою очередь состоят из строк. Под секциями понимаются группы данных, объединенные по общим признакам (полям или атрибутам). Строки секций могут ссылаться на другие секции (подчинённые секции).

Для удобства организации данных выделяются три вида секций:
  • Плоская секция — набор единичных значений атрибутов (полей).

  • Коллекционная секция — таблица значений, которая может содержать несколько строк с однотипными полями.

  • Иерархическая секция — таблица, строки которой ссылаются друг на друга, образуя древовидную (иерархическую) структуру. Поскольку каждая строка-узел может ссылаться на несколько дочерних строк, иерархическую секцию можно представить себе как иерархию секций одного типа.

Виды секций
Рисунок 1. Виды секций

Каждая секция имеет собственный уникальный идентификатор.

Схема также может определять виртуальные поля, которые используются при построении представлений (отчётов). Каждое виртуальное поле описывает логическую единицу данных карточки, значимую для пользователя (например, "Исполнители" или "Статус связанного процесса").

Кроме этого, схема карточки описывает возможные действия карточки с указанием их уникальных идентификаторов, режимы работы карточки — возможные варианты отображения её пользовательского интерфейса, преобразования данных карточки — варианты трансформации данных в другой формат при помощи XSLT и InfoPath-преобразований.

Разработка схемы карточки состоит из четырёх основных этапов:
  • Подготовка базы данных.

  • Подготовка библиотеки карточек.

  • Создание и редактирование схемы данных.

  • Загрузка готовой схемы в базу данных.

Для выполнения всех этих операций используется программа "CardManager", включённой в Resource Kit.