Запросы отчета содержат структурированные данные, которые отображаются в отчете в Генераторе отчетов, и одном или нескольких запросах SQL, которые получают информацию из базы данных SQL.
Вы создаете запросы в текстовом редакторе, таком как Блокнот, и сохраняете из в файле .crp.
Чтобы отформатировать запрос отчета:
- Откройте текстовой редактор, такой как Блокнот.
- Создайте запрос отчета с использованием следующих элементов:
Синтаксис |
Пример |
@[query_identifier (идентификатор_запроса)]
|
@[GroupMembers]
|
§Name [display_name(отображаемое_имя)]
|
§Name [User details of selected groups]
|
§Company [company_name (имя_компании)]
|
§Company [SolidWorks]
|
§Description [description (описание)]
|
§Description [Lists all members of the selected groups.]
|
§Version [version_number (номер_версии)]
|
§Version [1.1]
|
§Arguments [ type (тип) name (имя)[count (счетчик)] [instruct (инструкция)] ]
Где:
тип - предопределенный тип аргумента
name (имя) - переменная, используемая в элементе WHERE запроса SQL
[count (счетчик] определяет, как значения возвращаются в запрос SQL
[instruct (инструкция)] отображается в Генераторе отчетов в качестве инструкции пользователя
Запрос отчета может содержать несколько аргументов.
Все компоненты аргумента должны содержаться в одной строке.
|
§Arguments [ GroupID TheGroupID[N] [Select groups] ]
|
§Sql [ ]
|
§Sql [ ]
|
-
В Microsoft SQL Server Management Studio создайте запрос T-SQL на получение данных из базы данных SQL.
См. раздел Создание транзакционного запроса SQL.
- Скопируйте запрос SQL и вставьте его в раздел §Sql [ ] запроса отчета.
-
Также можно изменить элемент WHERE запроса SQL, если Вы хотите, чтобы аргумент динамически рассматривался при запуске отчета в Генераторе отчетов.
В Шаге 2 используется аргумент - [GroupID TheGroupID[N] [Select groups]]. Можно использовать имя переменной TheGroupID для возвращения данных на основе группы, выбранной пользователем, при запуске отчета.
Чтобы это сделать, в синтаксисе следующего запроса T-SQL необходимо заменить G.GroupID = 2 на {G.GroupID, TheGroupID, =, OR}.
Синтаксис запроса T-SQLWHERE G.GroupID = 2 AND G.GroupID = M.GroupID AND U.UserID = M.UserID
Синтаксис запроса отчетаWHERE {G.GroupID, TheGroupID, =, OR} AND G.GroupID = M.GroupID AND U.UserID = M.UserID]
- Сохраните запрос отчета в файле .crp.
-
Импортируйте файл .crp в Генератор отчетов для запуска отчета.
Выполнение запроса отчета.
Пример запроса отчета
Следующий запрос отчета содержится в Report Examples 1.crp в каталоге_установки - по умолчанию: C:\Program Files\SolidWorks Enterprise PDM.
@[GroupMembers] §Name [User details of selected group(s)]
§Company [SolidWorks]
§Description [This query will list all members of the selected groups.]
§Version [1.1]
§Arguments [ GroupID TheGroupID[N] [Select group(s)] ]
§Sql [ SELECT U.Username, G.Groupname, G.Description FROM Users U, Groups G, GroupMembers M WHERE {G.GroupID, TheGroupID, =, OR} AND G.GroupID = M.GroupID AND U.UserID = M.UserID ]
Этот файл содержит дополнительные запросы отчетов, которые пользователь может импортировать в Генератор отчетов.