Пособие для партнёров DocsVision




НазваниеПособие для партнёров DocsVision
страница5/35
Дата конвертации12.12.2012
Размер3.06 Mb.
ТипРеферат
1   2   3   4   5   6   7   8   9   ...   35

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


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

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

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

  • Плоская секция – набор единичных значений атрибутов (полей);

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

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

card-2

Рис. 3.. Виды секций

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

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

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

Разработка схемы карточки состоит из четырех основных этапов:

  • подготовка базы данных;

  • подготовка библиотеки карточек;

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

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

Для выполнения всех этих операций используется приложение CardManager.

3.2.1Подготовка базы данных


База данных DocsVison строится на платформе Microsoft SQL Server и состоит из набора таблиц, индексов и хранимых процедур. Логически база данных содержит в себе три вида объектов:

  • системные таблицы и хранимые процедуры, необходимые для корректной работы ядра DocsVision;

  • данные системных карточек;

  • данные пользовательских карточек.

При стандартной установке сервера DocsVision из инсталляционного пакета база данных создается автоматически и содержит системные карточки и карточки стандартных приложений «Делопроизводство» и «Управление процессами». Разработчик имеет возможность добавлять в установленную базу данных собственные карточки или создать собственную базу данных и работать с ней.

Для создания, удаления и редактирования баз данных DocsVision используется приложение CardManager (из пакета Resource Kit). Основное окно приложения делится на две панели: дерево объектов и панель детальной информации. Дерево объектов содержит информацию о зарегистрированных базах данных и библиотеках карточек:



Рис. 3.. Основное окно приложения CardManager

Перед началом работы с приложением необходимо подключиться к существующей базе данных DocsVision или создать новую базу данных. Для этого нужно выбрать пункт меню Register database и указать реквизиты подключения:



Рис. 3.. Подключение к базе данных

Необходимо указать название SQL-сервера, наименование базы данных DocsVision (имя базы данных выбирается в процессе установки сервера DocsVision), имя пользователя и пароль.

Для создания новой базы данных нужно выбрать пункт меню New database:



Рис. 3.. Создание новой базы данных

Необходимо указать имя создаваемой базы данных, имя сервера, на котором создается база, язык полнотекстового индексирования (он будет использоваться для полнотекстового поиска по данным карточек) и механизм аутентификации. Дополнительные опции можно указать в диалоге по кнопке Advanced.

Удалить регистрацию базы данных из окна приложения можно при помощи команды Unregister database. При этом сама база данных удалена не будет. Для того, чтобы удалить её с SQL Server, необходимо выбрать пункт меню Delete database.

При создании новой базы данных требуется погрузить в неё необходимые для работы ядра DocsVision таблицы и хранимые процедуры. Для этого нужно воспользоваться командой Update database (см. Рис. 3.).

Этой же командой следует пользоваться при ручном обновлении ядра DocsVision.

После создания системных таблиц и хранимых процедур в базу данных необходимо погрузить стандартные библиотеки карточек: «Системные карточки» (они необходимы для корректного функционирования Навигатора), «Делопроизводство» и «Управление процессами» (если предполагается использование карточек стандартных решений).



Рис. 3.. Обновление системных объектов

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


Описания схем карточек хранятся в библиотеках карточек.

Библиотека объединяет несколько описаний карточек в одну логическую единицу – решение. Например, системные карточки объединяются в одну библиотеку, а карточки решения «Делопроизводство» - в другую. В большинстве случаев одно разрабатываемое решение на платформе DocsVision соответствует одной библиотеке.

При последующем распространении библиотеки карточек устанавливаются на клиентские компьютеры целиком. Библиотека отображается в качестве родительской ветки для входящих в неё карточек в дереве карточек в Навигаторе (ветка Карточки).

Каждая библиотека карточек имеет описание (схему), собственный программный компонент, иконку и установочный пакет (подробнее о компонентах библиотек — в разделе «Все параметры также доступны для последующего изменения в виде свойств объекта ReportDataSource:»).

Схему карточки можно добавить в уже существующую библиотеку или создать новую библиотеку карточек при помощи команды New library. При этом нужно указать имя файла, который будет содержать описание библиотеки, и указать её свойства (см. Рис. 3.):

Alias – псевдоним библиотеки, с помощью которого к ней можно обращаться в коде;

Name – локализованное имя библиотеки, отображаемое пользователю;

ID – уникальный идентификатор библиотеки, определённый на этапе разработки (кнопка Новый позволяет сгенерировать новый идентификатор);

Version – номер версии библиотеки (его необходимо изменять вручную при необходимости обновить библиотеку на всех клиентах);



Рис. 3.. Описание библиотеки

ProgID – программный идентификатор компонента библиотеки;

Activation string – идентификатор класса или программный идентификатор CLSID компонента библиотеки;

MSI product code – код установочного компонента библиотеки для автоматической установки;

MSI package name – путь к установочному компоненту библиотеки;

Icon file – иконка библиотеки (отображается в Навигаторе).

После создания и описания всех свойств библиотеки её название появится в левой панели окна CardManager. После этого можно приступать к описанию схем данных карточек, входящих в библиотеку.

icon_prim

Примечание

Работа с вкладкой Reports подробно описана в разделе «Хранимые процедуры», с вкладкой Installers - в разделе «Распространение решения», а с вкладкой Log – в разделе “Журналирование”

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


Чтобы добавить новую схему данных (карточку) в библиотеку, нужно выбрать необходимую библиотеку в левой панели и выполнить команду New card. Если схема данных была подготовлена ранее, её можно включить в библиотеку при помощи команды Open card. После этого надо указать имя XML-файла, содержащего описание схемы данных карточки.



Рис. 3.. Добавление карточки в библиотеку

После создания карточки можно приступать к редактированию схемы данных (для редактирования существующей карточки нужно выбрать пункт меню Edit->Card Propeties).

Редактирование схемы данных представляет собой описание атрибутов карточки в нескольких различных разделах:

  • Card description - общая информация. В данном разделе описываются общие свойства карточки: её имя, описание, идентификатор, иконка, системные атрибуты;

  • Sections — описание секций, входящих в карточку, их полей, свойств и связей между ними;

  • Virtual fields — логические элементы данных карточки, доступные для вывода в представления;

  • Actions — описывает возможные действия карточки;

  • Modes — возможные режимы работы карточки (например, варианты отображения её интерфейса);

  • Transformations — варианты трансформации данных в другой формат при помощи XSLT и InfoPath-преобразований.



Рис. 3.. Общая информация карточки

Общее описание карточки предполагает заполнение следующих полей:

Alias – псевдоним карточки, с помощью которого к ней можно обращаться в коде. Псевдоним должен быть уникальным в рамках библиотеки;

Revision – номер версии карточки;

Names – локализованные названия карточки, отображаемые пользователю;

ID – уникальный идентификатор данного типа карточек. Этот идентификатор генерируется автоматически при создании новой карточки. Идентификатор должен быть уникален в рамках всей базы данных карточек;

Library ID – идентификатор библиотеки, которой принадлежит карточка. Заполняется автоматически;

ProgID – программный идентификатор компонента, реализующего функциональность карточки;

Activation string – строка активизации компонента карточки. Может содержать программный идентификатор (ProgID), идентификатор класса (CLSID) и данные о лицензировании;

Icon file – иконка данного типа карточек, отображаемая для пользователя. Рекомендуется использовать относительные пути при указании иконки;

Fefault fetch mode – позволяет выбрать механизм чтения данных карточки. Этот режим позволяет оптимизировать скорость работы с карточкой для клиентских приложений. Возможны следующие варианты режима чтения:

FETCH_CARD (карточка целиком) – при обращении к карточке все её данные будут переданы клиенту;

FETCH_SECTION (секция) – при обращении к данным карточки будет прочитана целиком соответствующая секция;

FETCH_SUBSECTION (подсекция) – чтение только данных подсекций;

FETCH_LEVEL (уровень) – чтение только данных одного уровня дерева (для иерархических секций);

FETCH_ROW – чтение только данных одной строки;

Attributes – позволяют определить особенности поведения карточки в системе. Доступны следующие атрибуты:

Do not mark card as unread – по умолчанию при создании экземпляра карточки ярлык на неё помечается как «непрочитанный» (выделяется жирным шрифтом в окне Навигатора). Данный атрибут позволяет отключить эту возможность;

Card can be marked as template – данный атрибут позволяет использовать механизм шаблонов для данного типа карточек;

Instances can be copied – разрешает или запрещает копирование данных карточки;

Card needs custom XML export procedure – карточки этого типа используют нестандартную процедуру выгрузки в XML (стандартные пункты меню будут недоступны);

Dictionary (only one instance allowed) – разрешается существование в системе только одного экземпляра карточки. Используется для справочников;

Can work as folder card – для карточек, реализующих функциональность папок (такую функциональность реализует системная карточка папок, которую разработчик может подменить собственной);

Items can be selected from this card – карточку можно использовать для выбора её элементов (запускать в режиме выбора);

Do not create hard shortcuts – атрибут регулирует механизм создания ярлыков для экземпляров карточек. По умолчанию при создании экземпляра карточки для неё создается «сильный» ярлык, при удалении которого удаляется и сама карточка. Данный атрибут позволяет отключить эту возможность;

Do not lock the card when opened – разрешает или запрещает автоматическую блокировку данных карточки при её открытии из Навигатора. Если блокировка установлена, то одновременная работа пользователей с одним экземпляром карточки запрещается на системном уровне. Если блокировка отключена, то разработчик карточки должен сам контролировать ситуации одновременного доступа к данным;

Non-archivable – разрешает или запрещает перемещание данных карточки в архивные таблицы или архивную базу данных (при использовании дополнительного модуля архивации);

System (user cannot create instance) – пользователь не может создать экземпляр карточки. Используется для карточек, не имеющих пользовательского интерфейса, и утилит. Экземпляры таких карточек создаются только программно;

User cannot delete card instances – карточки данного типа не могут удаляться пользователями (соответствующие пункты меню и панели инструментов будут недоступны);

Card cannot be replicated – данная опция регулирует возможность репликации всех экземпляров данной карточки;

Non-searchable – карточка не участвует в поиске и не индексируется;

Hidden – экземпляры данного типа карточек не отображаются пользователю. Обычно используется совместно с атрибутом «Системная»;

Replicate only card templates – в процессе репликации будут участвовать только те карточки данного типа, которые помечены в качестве шаблонов;

Allow to open as linked card – атрибут для связанных карточек. Разрешает или запрещает открытие пользовательского интерфейса карточки из других карточек;

Card is securable – регулирует механизм выдачи прав на данные карточки. При наличии данного признака, права могут быть назначены на все структурные элементы карточки (секции, строки секций). При отсутствии данного признака используется так называемый упрощённый режим - права выдаются только на карточку целиком.

icon_attention

Внимание

Для повышения производительности крайне НЕ рекомендуется устанавливать этот признак для карточек без особой необходимости!

Provides UI Extension – атрибут для карточек, которые интегрируются с интерфейсом Навигатора для реализации прикладных функций;

Default security descriptor – позволяют определить набор прав по умолчанию, который будут назначаться на экземпляры карточки при их создании.

icon_attention

Внимание

В этом дескрипторе можно использовать только константные идентификаторы объектов (well-known security identifiers), т.к. при создаваться экземпляры карточки будут в другом домене чем тот, где она разрабатывается.

Заполнение данных о секциях предполагает создание структуры (иерархии) секций данных карточки, указание их свойств и полей. Для добавления новой секции нужно воспользоваться командой New section в секции Sections. После этого необходимо указать свойства новой секции и список входящих в нее полей (см. Рис. 3.).

icon_attention

Внимание

Для корректной работы карточки требуется наличие у неё, как минимум, одной секции.



Рис. 3.. Описание секции карточки

Описание секции содержит следующие свойства:

Alias – псевдоним секции, с помощью которого к ней можно обращаться в коде. Псевдоним должен быть уникальным в рамках карточки;

Singular – строка, указывающая наименнование соответствующего класса при использовании утилит авто-генерации кода по описанию карточки (в данном руководстве не рассматриваются)

Names – локализованные названия секции, отображаемые для пользователя;

ID – уникальный идентификатор данной секции. Этот идентификатор генерируется автоматически при добавлении новой секции и может быть сгенерирован заново при нажатии кнопки New;

Tyme – тип организации данных в секции. Допустимы следующие типы организации данных:

struct (структрура)

coll (коллекция)

tree (дерево)

Format string – формат описания (дайджеста) строки секции. Дайджесты строк - это текстовые комментарии, уникальным образом характеризующие конкретную строку внутри секции. В основном, они используеются в элементах управления, предназначенных для выбора строк секции (ChooseBox);

icon_prim

Примечание

В текущей версии формат описания строки не применяется и зарезервирован для будущего использования.

Display fields – поля, из которых составляются описания (дайджесты) строк секции. Значения этих полей приводятся к строчному выражению, конкатенируются в порядке их описания и отделяются друг от друга пробелом;

icon_prim

Примечание

Например, секция содержит данные о сотрудниках организации и имеет несколько полей, среди которых есть Name (Имя), SurName (фамилия) и MiddleName (Отчество). В этом случае, если выбрать эти три поля в качестве полей для отображения строки, то во всех элементах управления выбранная строка данной секции будет отображаться как Фамилия_Имя_Отчество.

Contains card properties – атрибут для секций свойств. Это специальный вид секций, содержащих ряд предопределённых полей, которые могут выступать в качестве пользовательских атрибутов карточки (свойств). Платформа позволяет обрабатывать свойства карточки специальным образом – например, выводить их в представления или синхронизировать их значения со свойствами файлов Office.

При отметке какой-либо секции как содержащей свойства, требуется дополнительно указать ключевые поля этой секции:

Name – поле, содержащее название свойства (строка);

Value – поле, содержащее значение свойства (чаще всего – variant);

DisplayValue – поле, содержащее отображаемое значение свойства (строка);

Type – поле, определяющее тип свойства (перечисляемое);

Sort fields – описание полей секции, по которым производится сортировка строк при обращении к данным секции. Можно указать прямой или обратный порядок сортировки для конкретных полей. Число полей для сортировки не ограничено. Сортировка производится в порядке следования этих полей в описании;

Indexes and constraints – ограничения на поля секции. Каждое ограничение устанавливает одно требование к одному полю или набору полей секции. Можно указать следующие ограничения:

Unique globally – значение поля (или набора полей) уникально в рамках сервера DocsVision;

Unique within card – значение поля (или набора полей) уникально в рамках экземпляра карточки;

Unique within section – значение поля (или набора полей) уникально в рамках секции;

Unique within tree – значение поля (или набора полей) уникально в рамках всех уровней иерархической секции;

Clastered index – по полю строится кластерный индекс;

Non-clastered index – по полю строится некластерный индекс;

Unique clastered index – по полю строится уникальный кластерный индекс;

Unique non-clastered index – по полю строится уникальный некластерный индекс;

icon_attention

Внимание

Необходимо внимательно отнеститись к созданию индексов, так как их неоптимальное создание (или попросту отсутствие) способно значительно понизить производительность всей системы.

Allows concurrent access – допускается одновременная работа нескольких пользователей с данными секции (чаще всего этот признак устанавливается для справочников и требует отказа от блокировки карточки);

Suppress search – поля секции не будут отображаться в диалоге поиска;

Secton has selectable items – секцию можно использовать для выбора строк (чаще всего этот признак устанавливается для секций справочников);

Log optional – сообщение об изменении строки секции не будет записываться в системный журнал;

icon_attention

Внимание

Для повышения производительности крайне рекомендуется устанавливать этот режим для секций, с которыми производится интенсивная работа (например, для секций с данными журналирования).

Do not copy section data – при копировании карточки строки данной секции не будут копироваться.

Section is securable – признак наличия собственных дескрипторов у строк секции (используется в случае полной безопасности на карточке в целом)

Items are pinned – признак, показывающий что строки из данной секции не могут быть удалены

Создание секции также включает в себя добавление полей и дочерних секций. Для этого следует выбрать нужную секцию и воспользоваться командой New field или New section. Дочерние секции содержат те же свойства, что и секции первого уровня.



Рис. 3.. Редактирование поля секции

Описание поля содержит следующие свойства:

Alias – псевдоним поля, с помощью которого к нему можно обращаться в коде. Псевдоним должен быть уникальным в рамках секции;

Description – словесное описание поля, будет отображаться в виде подсказки к полю в диалогах поиска и представлений;

Type – тип (формат) данных в поле. Возможные типы полей:

int — целое;

bool — булевское значение (Да/Нет);

datetime — дата и время;

date — дата;

time — время;

enum — перечисление (предопределённый набор уникальных значений);

bitmask — битовая маска;

uniqueid — уникальный идентификатор (GUID);

userid — идентификатор пользователя;

string — строка;

unistring — строка в формате Unicode;

fileid — идентификатор файла DocsVision;

float — число с плавающей точкой;

refid — ссылка на строку другой секции;

refcardid — ссылка на карточку;

text — текст;

unitext — текст в формате Unicode;

binary — двоичные данные;

image — изображение;

sdid — идентификатор безопасности;

decimal — десятичное число;

variant – значение переменного типа;

Size – ограничение длины поля (используется в основном для полей строчного типа);

Link type – указание типа ссылки для ссылочных полей (refid, refcardid).

Тип ссылки характеризует поведение объектов, связанных ссылкой. Возможны следующие типы ссылок:

Weak – связанный объект разрешено удалять; при удалении объекта, содержащего ссылку, связанный объект останется;

Hard - связанный объект запрещено удалять, пока на него существует ссылка; при удалении объекта, содержащего ссылку, связанный объект также будет автоматически удален;

None – при удалении связанного объекта значение ссылочного поля будет очищено;

Auto - при удалении связанного объекта будет удалена вся строка секции, содержащей ссылку;

Copy behavior – режим копирования данных поля. Возможны следующие режимы:

Null — значение поля при копировании обнуляется;

Copy — значение поля копируется;

CreateNew — создание нового значения (используеются для ссылок);

Names – локализованные названия поля, отображаемые у пользователя;

ID – уникальный идентификатор поля;

Default value – значение поля, которое будет автоматически задаваться при создании новых экземпляров карточки;

Required – значение данного поля не может быть пустым (система не позволит сохранить карточку без задания значения этого поля);

Depends on user – значение поля сопоставляется с конкретным пользователем системы (таким образом, для каждого пользователя может храниться собственное уникальное значение этого поля);

Suppress search – поле не участвует в поиске (не отображается в диалоге поиска);

Delete linked row on value change – признак удаления связанных строк в случае изменения значения этого поля (используется для ссылочных полей);

Appers on the card form – поле может быть сопоставлено с элементом пользовательского интерфейса (этот признак используется в справочнике типов, если данная карточка обеспечивает возможность «тонкой» настройки);

System – признак того, что поле является системным (учитывается при некоторых операциях с данными);

Referenced type ID – уникальный идентификатор типа карточки, с полями или секциями которой связано данное поле. Тип карточки можно выбрать в диалоге типов;

Referenced section ID – идентификатор секции связанной карточки, с полями которого осуществляется связь;

References – поля связанной карточки, значения которых ассоциируются со строкой этой секции (используются для ссылочных полей). Данная возможность позволяет при обращении к данным секции вернуть не только значения его собственных полей, но и ряда полей связанных карточек или секций. Это может быть удобным, например, чтобы снизить число обращений к серверу при чтении данных карточки или при её экспорте и печати.

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

В качестве источника данных для виртуального поля могут выступать:

  • физическое поле самой карточки;

  • физическое поле карточки другого типа, которая по каким-то признакам связана с данной;

  • системные данные о карточке (например, дата последнего изменения);

  • результат вычислений, произведённых над любым из вышеперечисленных полей.

icon_prim

Примечание

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

Для создания нового виртуального поля нужно перейти в раздел Virtual fields и выбрать соответствующий пункт контекстного меню.



Рис. 3.. Свойства виртуального поля

Основные свойства виртуального поля:

Alias – псевдоним виртуального поля, с помощью которого к нему можно обращаться в коде. Псевдоним должен быть уникальным в рамках карточки;

Names – локализованные названия виртуального поля, отображаемые у пользователя (в диалоге настройки представлений);

Description – словесное описание виртуального поля, будет отображаться в виде подсказки к полю в диалогах поиска и представлений;

ID – уникальный идентификатор виртуального поля;

Main section ID – идентификатор секции, на основе данных которой строится виртуальное поле. Из этой секции будут выбираться физические поля для вычислений, и к ней будут последовательно присоединяться другие секции или таблицы;

Type – результирующий тип данных виртуального поля. Доступны только простые типы:

int — целое;

bool — булевское значение (Да/Нет);

datetime — дата и время;

uniqueid — уникальный идентификатор (GUID);

string — строка;

unistring — строка в формате Unicode;

float — число с плавающей точкой;

unitext — текст в формате Unicode;

decimal — десятичное число;

binary — двоичные данные;

Field definition – источник данных для виртуального поля. Доступные источники:

Section field – физическое поле основной или присоединённой секции;

Computed field – правила вычислений над физическим полем основной или присоединённой секции;

Joins – позволяет определить связи основной секции виртуального поля с другими секциями или таблицами. Секции связываются между собой по определённому полю (обычно — уникальному идентификатору).



Рис. 3.. Присоединение секции

При присоединении секции, необходимо указать следующие значения:

Alias – уникальный (в рамках определения виртуального поля) псевдоним присоединяемой секции;

Source section – секция, к которой производится присоединение (основная секция виртуального поля или ранее присоединенная);

Source field – поле оригинальной секции, по которому производится присоединение (JOIN);

Target section – секция другой карточки или системная таблица;

Target field – поле присоединяемой секции, по которому производится JOIN;

Conditions – условия фильтрации записей присоединённой секции;

После присоединения всех необходимых секций можно задать правила построения вычисляемых полей.



Рис. 3.. Свойства вычисляемого поля

Описание вычисляемого поля по сути представляет собой совокупность атомарных операций (элементов), выполняющихся в определённом порядке, который задаётся через иерархические группы. Внутри каждой группы элементы могут объединяться арифметической операцией (+,-,*,/), логической операцией (AND, OR) или агрегацией.

icon_attention

Внимание

Вычисления одного уровня исполняются строго последовательно, поэтому важно контролировать порядок их выполнения. Для этого можно перемещать элементы внутри группы кнопками Up и Down.

Каждый элемент вычислений, в свою очередь, может быть одним из следующих видов:

Simple - значение физического поля секции, предопределённое значение или результат применения к нему простейшей функции;



Рис. 3.. Простой элемент вычисления

Switch – результат селекции, сопоставляющей конкретным данным физического поля предопределённые значения;



Рис. 3.. Набор вариантов

Conditions - условный оператор, формирующий значение элемента в зависимости от значений других элементов.



Рис. 3.. Набор условий

icon_attention

Внимание

Важно контролировать типы конкретных элементов вычислений и их групп, чтобы избежать ошибок в вычислениях и получить правильный тип результирующего значения.

В разделе Actions можно указать действия (команды), «понятные» данной карточке. В качестве команд могут выступать, например, такие действия как «Открыть в другом режиме», «Переслать», «Списать в архив» и т. д. Разработчик сам определяет перечень этих команд, их названия и семантику. Фактически, все описанные команды появляются в меню действий над карточкой в окне Навигатора. При выборе пользователем одной из команд будет вызван клиентский компонент карточки с указанием идентификатора активированной команды и требуемые операции нужно будет запрограммировать самостоятельно в коде этого компонента.

Для добавления действий следует перейти в раздел Actions и выбрать пункт меню New action.



Рис. 3.. Описание действий над карточкой

Свойства действия (метода) включают в себя:

Alias – псевдоним действия, с помощью которого к нему можно обращаться в коде. Псевдоним должен быть уникальным в рамках карточки;

Names – локализованные названия команды, отображаемые у пользователя в меню действий над карточкой;

ID – уникальный идентификатор метода.

В разделе Modes можно определить возможные режимы работы карточки. Режим работы карточки проще всего воспринимать, как вариант реализации пользовательского интерфейса карточки. Можно, например, представить себе финансовый документ — бюджет, который может использоваться в различных вариантах:

  • Подготовка;

  • Принятие;

  • Модификация поправками.

У карточки такого документа будет три соответствующих режима работы. Для каждого режима разработчик карточки сам определяет вид пользовательского интерфейса и семантику работы. Выбрать конкретный режим открытия экземпляра карточки можно либо при помощи контекстного меню Навигатора, либо режим может быть жёстко определен в ярлыке карточки.

Для добавления новых режимов работы следует перейти в раздел Modes и воспользоваться командой New mode. Далее нужно определить свойства режима.



Рис. 3.. Свойства режима работы карточки

Свойства режима следующие:

Alias – псевдоним режима, с помощью которого к нему можно обращаться в коде. Псевдоним должен быть уникальным в рамках карточки;

Names – локализованные названия режима, отображаемые у пользователя;

ID – уникальный идентификатор режима.

В секции Transformations можно определить возможные преобразования данных карточки. Преобразования применяются для трансформации данных карточки в другой формат, описанный в преобразовании. Например, преобразования могут применяться при печати карточек, экспорте данных в другие системы или при публикации карточек на web-страницах. Системой поддерживаются два типа преобразований: XSLT-преобразования (они используются для получения HTML-представления данных карточки при выводе на печать) и преобразования Microsoft InfoPath.

Для определения преобразований следует перейти в раздел Transformations и выбрать пункт меню New transformation. Затем нужно определить свойства преобразования.



Рис. 3.. Свойства преобразования

Для преобразования предусмотрены следующие свойства:

Alias – псевдоним преобразования, с помощью которого к нему можно обращаться в коде. Псевдоним должен быть уникальным в рамках карточки;

Names – локализованные названия преобразования, отображаемые у пользователя;

ID – уникальный идентификатор преобразования;

Transofmation type:

Xslt — XSLT;

InfoPath — Microsoft InfoPath;

Custom — пользовательский тип;

Language – язык локализации преобразования (каждое преобразование относится только к конретному языку; нельзя использовать одно и тоже преобразование сразу для всех языков)

Content type – тип данных преобразования (выбирается только для пользовательских преобразований). Может иметь одно из следующих значений:

Text — текст;

Xml — XML;

Binary — двоичные данные;

Transformation file – путь к файлу с данными преобразования (например, XSLT);

Default – признак основного преобразования.

Преобразования, укзаанные в схеме карточки, будут присутствовать в её типе по умолчанию. Впоследствии (в конкретной базе данных) этот набор преобразований может быть дополнен силами пользователей.

После завершения редактирования схемы данных карточки её необходимо сохранить.

3.2.4Погрузка схемы в базу данных


Готовую схему данных карточки (или библиотеки карточек) необходимо погрузить в базу данных DocsVision, чтобы создать в ней необходимую инфраструктуру таблиц, индексов и хранимых процедур. CardManager предоставляет возможность погрузить в базу данных описание библиотеки карточек с промощью команды Load library to database. При этом необходимо выбрать библиотку для загрузки (из списка библиотек, подключенных к CardManager).

icon_attention

Внимание

Для корректной загрузки собственных библиотек карточек в базу данных, в CardManager должны быть подключены описания всех стандартных библиотек, входящих в комплект поставки системы (SystemCardLib, ManagedCardLib. TakeOfficeCardLib, WorkflowCardLib). Эти библиотки включены в состав пакета разработчика, и находятся в папке CardDefs.



Рис. 3.. Погрузка схемы карточки в базу данных DocsVision

Если описание карточки уже присутствует в указанной базе данных, существующие структуры данных будут автоматически обновлены согласно внесённым в схему изменениям.

При необходимости можно удалить созданные структуры данных и экземпляры карточек из базы данных. Для этого нужно воспользоваться командами Delete card или Delete library. Не рекомендуется удалять из базы данных описания системных карточек.

icon_attention

Внимание

При изменении схемы карточки, чтобы получить возможность использовать модифицированную схему на клиенте, нужно обязательно выполнить следующие действия:

перекомпилировать компонент библиотеки карточек (он кэширует схемы всех карточек библиотеки для ускорения доступа к ним и без перекомпиляции будет возвращать старое описание);

перезапустить сервер DocsVision (NT-сервис DocsVision Storage Server и/или IIS) – запущенный сервер также кэширует схемы всех карточек и без перезапуска будет возвращать старые описания.
1   2   3   4   5   6   7   8   9   ...   35

Похожие:

Пособие для партнёров DocsVision iconУстановка патчей *. msp DocsVision Установить патч можно только на клиентах DocsVision (но не на сервере) Установка патчей библиотек DocsVision
Скопируйте пакет в папку «Директория с установленным DocsVision\Platform 3\Server\Site\Setup». В данной директории можно создать...
Пособие для партнёров DocsVision iconDocsVision 6 sr1: Руководство по установке и настройке
Особенности конфигурации серверного программного обеспечения для установки DocsVision 5
Пособие для партнёров DocsVision iconВы  держите  в  руках  брошюру  для  партнеров  1с,  которая поможет вам повысить продажи. Речь идет не о  продажах вообще, а о возможности более эффективно  предлагать  клиентам  серверные  продукты  Microsoft, 
Приложение Полезные ресурсы для партнеров  26 вы  держите  в  руках  брошюру  для  партнеров  1с, 
Пособие для партнёров DocsVision iconРекомендации по созданию условий для эффективного функционирования стратегических партнерств с участием учреждений профобразования Роль вуза в подготовке кадров для стратегических партнеров и участников кластера
В части подготовки кадров для стратегических партнеров и участников кластера можно выделить две глобальные цели
Пособие для партнёров DocsVision iconНастоящий документ описывает конфигурирование системы DocsVision 5 и дальнейшее ее администрирование, а именно

Пособие для партнёров DocsVision iconУчебное пособие по курсу «Организация эвм, комплексов и сетей» часть I
Пособие предназначено для самостоятельной работы студента над курсом “Организация эвм, комплексов и сетей” по первой части курса...
Пособие для партнёров DocsVision iconПеречень предприятий Южного Федерального округа, которые выпускают продукцию, возможно интересную для иностранных партнеров
Южного Федерального округа, которые выпускают продукцию, возможно интересную для иностранных партнеров
Пособие для партнёров DocsVision iconИнструкция по внедрению  «1С: Университет»  версия 0 12  (для партнеров фирмы «1С»)
Общие сведения    4 
Пособие для партнёров DocsVision iconПособие для воспитателей Кишинев, 2010 czu 373. 2
...
Пособие для партнёров DocsVision iconСпециалист по технологическому развитию партнеров 
Интеллектуальные объединенные коммуникации для бизнеса (Microsoft Exchange и Lync) 
Разместите кнопку на своём сайте:
kak.znate.ru


База данных защищена авторским правом ©kak.znate.ru 2012
обратиться к администрации
KakZnate
Главная страница