Добавление отчетов
Отчёты — хранимые процедуры БД, которые могут использоваться для прямого обращения к БД, минуя объектную модель и средства безопасности Docsvision. Использования отчётов позволяет (в некоторых случаях) ускорить доступ к данным, получить сложную выборку данных, получить данные из сторонней базы данных или сервера и т.п.
Методы, предоставляемые отчетами, выполняются вне моделей безопасности Docsvision, поэтому программист должен самостоятельно обеспечить необходимые ограничения. |
Хранимая процедура отчет имеет определенный набор входных и выходных параметров, а также уникальный идентификатор, по которому данный отчет может быть вызван.
Ниже приведён код примера отчёта для Microsoft SQL и PostgreSQL, возвращающего список замещаемых сотрудников, для которых @EmployeeID
указан заместителем в Справочнике сотрудников.
BEGIN
SELECT [RowID], [ParentRowID], [IsNotified]
FROM [dbo].[dvtable_{ED414CB4-B205-4BE4-A2FA-5C0D3347CEB3}] WITH(NOLOCK)
WHERE [DeputyID] = @EmployeeID
END
$$
BEGIN
RETURN query
SELECT tDeputies."RowID", tDeputies."ParentRowID", tDeputies."IsNotified"::integer
FROM public."dvtable_{ed414cb4-b205-4be4-a2fa-5c0d3347ceb3}" tDeputies
WHERE tDeputies."DeputyID" = val_EmployeeID;
END;
$$
LANGUAGE plpgsql volatile;
-
Создайте файл отчета с хранимой процедурой (пример приведен выше) для Microsoft SQL и/или PostgreSQL (в зависимости от целевой СУБД).
Файл(ы) нужно разместить в одном каталоге (или в подкаталоге) с файлом схемы библиотеки карточек.
-
Откройте настройки библиотеки карточек (
). -
Перейдите на страницу настройки отчетов Reports.
Рисунок 1. Страница настройки отчетов
-
Нажмите кнопку Add в разделе Procedures. В список Procedures будет добавлена новая запись.
-
В поле Alias введите псевдоним отчета, по которому данный отчет может быть вызван с помощью API Docsvision.
-
В таблице Названия введите локализованные названия отчета.
Рисунок 2. Пример настройки основных параметров отчета
-
На странице Reports откройте вкладку SQL files .
-
Нажмите на кнопку Add на вкладке SQL files. В список Files будет добавлена новая запись.
-
В поле SQL file выберите SQL-файл, содержащий хранимую процедуру. После добавления путь необходимо изменить на относительный (относительно файла схемы библиотеки карточек).
-
В поле Server type выберите тип СУБД, для которой предназначен файл: Microsoft SQL или PostgreSQL.
Типы СУБД Oracle и MySQL, представленные в списке, не поддерживаются системой Docsvision.
-
Если требуется ограничить применение SQL-файла версией СУБД, укажите её в поле Server version.
Если версия не указана, хранимая процедура может быть загружена в БД, работающую под управлением СУБД любой версии.
Рисунок 3. Пример настройки файлов отчета -
Если требуется, добавьте аналогичным образом другие файлы отчетов.
-
Если хранимая процедура принимает входящие параметры, настройте их на вкладке "Parameters":
-
На странице Reports откройте вкладку Parameters.
-
Нажмите на кнопку Add. В список Parameters будет добавлена новая запись.
-
В поле Parameter name введите название параметра, принимаемого хранимой процедурой.
-
Выберите тип параметра в списке
Parameter type
.Рисунок 4. Пример настройки параметров отчета -
Если требуется, аналогичным образом добавьте другие параметры хранимой процедуры.
-
-
Если хранимая процедура возвращает значения, настройте их на вкладке Report result.
-
На странице Reports откройте вкладку Report result.
-
Выберите формат возвращаемого значения:
-
Scalar result — если хранимая процедура возвращает единичное значение.
-
TableResult — если хранимая процедура возвращает набор значений.
-
-
Для варианта Scalar result:
-
Выберите тип возвращаемого значения в списке Data type.
-
Настройте значения: Precision и Scale (только для полей с плавающей точкой), Size (максимальный размер), Nullable (может быть пустым).
-
Нажмите кнопку Add. В таблицу Columns будет добавлена новая запись.
-
-
Для варианта TableResult:
-
Нажмите на кнопку Add на вкладке Report result. В таблицу Columns будет добавлена новая запись.
-
Введите название колонки с возвращаемым значением в поле Name.
-
Выберите тип возвращаемого значения в списке Data type.
-
Настройте параметры: Precision и Scale, Size, Nullable.
-
Если требуется, аналогичным образом настройте параметры других возвращаемых колонок.
Рисунок 5. Пример настройки параметров возвращаемого значения
-
-