Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
start [04.06.2019 19:57] buh [Формирование выходного набор данных результата расчета.] |
start [18.01.2022 09:12] (текущий) buh |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Настройка отчетов в программе Отчеты====== | + | ====== Главная страница википедии семейства программ Артонит. ====== |
- | ====== Настройка модуля отчетов. Инструкция. ====== | + | [[lite|Артонит Лайт]] - Программа СКУД для офисов |
- | ===== Введение. ===== | + | [[ten:главная|Артонит 10]] - программное обеспечение для организации систем контроля доступом. |
- | Программный модуль Отчеты (исполняемый файл report.exe) позволяет получать отчеты из базы данных СКУД Артонит. | + | [[city:main|Артонит Сити]] - программное обеспечение для организации систем контроля доступом на жилых объектах. |
- | Программный модуль обеспечивает: | + | |
- | - 1. Выбор типа отчета. | + | |
- | - 2. Вывод и выбор базовой информации для формирования отчета. | + | |
- | - 3. Получение результата расчета и вывод информации на экран монитора. | + | |
- | - 4. Сохранение результата в файл в различных форматах. | + | |
- | Ниже приводится описание механизма взаимодействия приложения report.exe с базой данных. | + | |
- | ===== База данных ===== | + | |
- | База данных называется shieldpro.gbd, работает под управлением FireBird 1.5. | + | [[parking:main|Артонит ПаркОфис]] - программное обеспечение для организации парковок (в т.ч. платных). |
- | В ходе работы база использует UDFShieldPro.dll. | + | [[ticket:главная|Артонит Тикет]] - программное обеспечение для организации билетных систем. |
- | ===== Конфигурационный файл. ===== | + | |
- | C:\ProgramData\CardSoft\DuoSE\Access\Report.ini. | + | [[staff|Служебные записи]] |
- | ===== Соединение с базой данных. ===== | + | |
- | Приложение report.exe подключается к БД с помощью компоненты fbclient.dll. | + | [[mpt:Artonit_MPT|Артонит МПТ]] |
- | ===== Запуск приложения. ===== | + | |
- | Приложение запускается как приложение windows. | + | [[mpt:Практика 2022|МПТ практика 2022]] |
- | Путь по умолчанию: C:\Program Files (x86)\CardSoft\DuoSE\Access\ Report.exe. | ||
- | |||
- | Подключение к БД происходит под паролем суперадминистратора (вкомпилирован в программу). | ||
- | |||
- | После запуска приложение требует ввод логина и пароля и подключается к базе данных. Этот набор логина и пароля определяет набор данных, разрешенных для просмотра. | ||
- | |||
- | Приложение работает со следующими ресурсами базы данных: | ||
- | |||
- | Таблица 1 таблиц, используемых в приложении Report. | ||
- | |||
- | ^№ п/п^Ресурс^Название^Содержание | ||
- | |1|таблица|REPORTS|Перечень отчетов | ||
- | |2|таблица|REPORTCELLS| | ||
- | |3|процедуры|Названия используемых процедур указаны в таблице REPORTS| | ||
- | |||
- | При запуске приложение по умолчанию открывает отчет ID=1 "Список пропусков". | ||
- | ===== Содержимое таблицы REPORTS. ===== | ||
- | |||
- | Таблица REPORTS содержит список имеющихся отчетов. | ||
- | |||
- | Таблица 2 Содержимое таблицы REPORTS. | ||
- | |||
- | ^ID_REP^REP_INDEX^PRINTINDEX^PRINTCAPTION^REPTYPE^REPCAPTION^PROCNAME | ||
- | |1|RepCardList|0|Список пропусков|512|Cписок карточек|Report_GetCardList | ||
- | |2|RepEventList|1|Журнал событий|1024|Журнал событий|Report_GetEventList | ||
- | |3|RepWorkTime|2|Журнал рабочего времени|2048|Журнал рабочего времени|Report_WorkTime_Order | ||
- | |4|RepDelPep|3|Cписок уволенных сотрудников|4096|Журнал уволенных|Report_PepInfo | ||
- | |5|RepPep|3|Cписок сотрудников|16384|Журнал сотрудников|Report_PepInfo | ||
- | |6|RepWorkTimeDetail|2|Журнал рабочего времени|2048|Детальный журнал рабочего времени|Report_WorkTimeDetail | ||
- | |||
- | При необходимости добавить новый отчет начинать надо именно с этой таблицы. | ||
- | ===== Структура экранной формы приложения REPORT.exe. ===== | ||
- | |||
- | Верхняя часть окна приложения Отчеты имеет следующую структуру: | ||
- | {{ :photo4_-_копия.jpg?nolink |}} | ||
- | В блоке 1 выводится список отчетов, взятый из таблицы Reports. | ||
- | |||
- | В блоке 2 выводится набор закладок, связанных с выбранным отчетом. | ||
- | ===== Формирование набора входных данных для расчета. ===== | ||
- | |||
- | Набор входных данных (закладки Сотрудники, категории доступа, Результат и т.п.) для расчета по каждому фиксирован и изменен быть не может. | ||
- | ===== Формирование выходного набор данных результата расчета. ===== | ||
- | |||
- | Каждый отчет реализован как процедура. | ||
- | Набор выходных данных определяется в самой процедуре и может быть изменен путем редактирования процедуры. | ||
- | |||
- | При редактировании процедуры в FireBird необходимо помнить, что выходные параметры и переменные должны быть заявлены заранее: необходимо сначала заявить переменную, а уже затем вставлять её в текст процедуры. | ||
- | ==== Вывод результатом отчета на экранную форму. ==== | ||
- | |||
- | При получении результатов отчета приложение Report.exe строит таблицу, названия колонок которых берет из таблицы REPORTCELLS. | ||
- | Количество полей процедуры должно совпадать с количество столбцов в отчете. | ||
- | ===== Пример добавления поля Табельный номер в отчет рабочего времени. ===== | ||
- | |||
- | ==== Экран приложения после запуска отчета Журнал рабочего времени. ==== | ||
- | |||
- | {{ :report1.jpg?nolink |}} | ||
- | Как видно, расчет выполнен, и содержит 8 колонок. | ||
- | |||
- | Необходимо добавить табельный номер. | ||
- | ===== Добавление названия поля в отчете. ===== | ||
- | |||
- | В таблице 2 видим, что это отчет ID_REP=3. | ||
- | |||
- | В таблицу REPORTCELLS добавляет строку, где указываем: | ||
- | |||
- | ID_CELL – null (не менять. Номер подставится автоматически при вставке), | ||
- | |||
- | ID_REP 3 (т.к. отчет имеет номер 3), | ||
- | |||
- | FIELDNAMR – tabNum название поля, которое будет выводится в этой колонке, | ||
- | |||
- | FIELDCAPTION – "Табельный номер" – название колонки. | ||
- | |||
- | Должно быть так: | ||
- | {{ :report2.jpg?nolink |}} | ||
- | После ввода данных не забудьте нажать красную галочку commit. | ||
- | |||
- | Можно воспользоваться SQL-запросом для вставки необходимой строки: | ||
- | |||
- | ''INSERT INTO REPORTCELLS (ID_CELL,ID_REP,FIELDNAME,FIELDCAPTION) VALUES (NULL,3,'tabNum','Табельный номер');'' | ||
- | |||
- | ==== Добавление поля в процедуру Report_WorkTime_Order. ==== | ||
- | |||
- | В набор выводимых данных добавляем TABNUM, тип VARCHAR 50. | ||
- | |||
- | Так же добавляем переменную :tabnum в набор выводимых данных: | ||
- | {{ :report4.jpg?nolink |}} | ||
- | |||
- | После добавления данных процедуру необходимо скомпилировать, нажав на кнопку {{ :compil.jpg?nolink |}} . | ||
- | Как видно, процедура Report_WorkTime_Order использует результат работы процедуры REPORT_WORKTIME. Открываем процедуру REPORT_WORKTIME. | ||
- | {{ :report5.jpg?nolink |}} | ||
- | |||
- | Добавляем переменную tabnum и в переменные, и в текст процедуры. | ||
- | |||
- | После добавления данных процедуру необходимо скомпилировать, нажав на кнопку {{ :compil.jpg?nolink|}}. | ||
- | === Запуск приложения Report c новым набором выходных параметров. === | ||
- | |||
- | После запуска приложения в отчет появляется новое поле "Табельный номер". | ||
- | {{ :report6.jpg?nolink |}} | ||
- | |||
- | === Контакты. === | ||
- | |||
- | Все указанные процедуры могут выполнить сотрудник ООО "Артсек" на платной или бесплатной основе (в зависимости от лицензии). | ||
- | [[www.artonit.ru]] | ||
- | 4 июня 2019 г. | ||