Содержание
DX Loger
Автор: jurist23rus
Версия: 3.2
Последнее обновление: 31 марта 2019 г.
Фотогалерея
Скачать
Обсудить на форуме
DX Loger - это комплекс, состоящий из взаимодействующих и программно связанных друг с другом форм и модуля расширений, в совокупности предназначенный для организации системы логирования (журнализирования) определённых действий пользователя и фиксации изменений в журнале событий.
Состоит из
- Родительской формы с именем «Log» - это и есть сам журнал событий, именно в данной форме происходит фиксация действий пользователя. Там же эти действия можно просмотреть в удобном виде.
- Формы с именем 'Log_Config' - эта форма конфигурации логера, с помощью который вы задаёте параметры работы логера.
- Модуля расширений с именем «Loger». Модуль предназначен для работы функции «Loger», посредством которой и осуществляется ведение журнала событий.
Комплекс полностью совместим со всеми модулями расширений моего авторства (jurist23rus) последних версий. О наличии проблем с совместимостью с модулями расширений других авторов оставляйте сообщения в данной теме.
Установка
Предполагается, что те кто читают эту инструкцию имеют минимальные навыки работы в приложении DataExpress 3.
Для корректной работы модуля требуется версия программы DataExpress 3 версии не старше чем от 31 марта 2019 г.
- Сделать резервную копию вашей базы данных (без этого категорически не советую что-либо делать, иначе есть риск потерять все данные).
- Скачать файл проекта формата .dxp и файл модуля расширений формата .epas.
- Установить модуль расширений для чего:
- Открыть вашу базу данных и войти под учётной записью Разработчика (нужно иметь доступ к дизайнеру). Выбрать меню: Файл - Расширения - кнопка Импорт модуля - выбрать скачанный файл формата EventLog v.X.X.epas
- Если появилось окно ошибок компилятора, значит есть какие-то ошибки совместимости модулей. В этом случае установку лучше не продолжать, а сделать скриншот окна ошибок и cообщить о проблеме на форум.
- Установить формы модуля для чего:
- Проверить, что в Вашей базе нет родительских форм с именем «Log» и «Log_Config». Если такая форма у вас уже есть, переименовать её или удалить.
- Войти в дизайнер и выбрать пункт меню Сервис - Объединение проектов - выбрать файл EventLog v.X.X.dxp - в появившемся окне на вкладке Формы установить флажок в поле Log и нажать ОК.
- Если вы всё сделали правильно, то в вашей базе появятся новые формы «Log» и «Log_Config» и её дочерняя форма в дереве форм, а в редакторе скриптов модуль формы «Loger» и одноимённый модуль расширений. Теперь комплексом можно пользоваться.
Удаление
- Войти в дизайнер и удалить форму «Log» и «Log_Config»
- Войти меню Файл - Расширения - Выбрать модуль Loger v.X.X и нажать Удалить.
Обновление
Перед началом действий сделайте резервную копию базы данных, в противном случае вы рискуете потерять все данные.
Обновление форм «Log» и «Log_Config» невозможно, ввиду отсутствия такой возможности в самой платформе DX. Переход на новую версию осуществляется путём удаления старой версии логера по инструкции выше и установки новой версии по инструкции выше. К сожалению, при удалении форм логера, его данные сохранены не будут.
Работа
Модуль подключается к контролируемой форме через свойство формы подключить действие. Установка надписей на форму не требуется!
Работа с комплексом осуществляется после подключения модуля к форме через свойство формы подключить действие. В зависимости от заданных параметров работы функции, будет осуществляться логирование изменённых значений, поставленных на контроль полей формы и таблиц формы. Изменения в полях находят своё отражение в журнале событий (форма 'Log').
Просмотреть журнал событий вы сможете, открыв форму «Log» вашей базы данных. Для обеспечения сохранности журнала событий и воспрепятствованию внесения в него изменений и дополнений редактирование, добавление и удаление записей в журнале запрещено.
При открытии журнала с панели инструментов главного окна DataExpress исчезают кнопки отвечающие за операции редактирования, добавления и удаления записей. Для возвращения кнопок на панель инструментов достаточно закрыть форму журнала событий. В целях сохранности журнала убрано всплывающее контекстное меню при щелчке правой кнопкой мыши по записям формы журнала. Для обеспечения большей безопасности рекомендуется полностью запретить пользователям, у которых нет прав разработчика, доступ к форме журнала в настройках прав и ролей пользователей.
Не рекомендуется
Самостоятельно вносить какие бы то ни было изменения в формы «Log» или «Log_Config», в том числе: добавлять, удалять или изменять свойства и параметры компонентов; вносить корректировки в скрипты, руководящие работой формы, или модулем расширений «Loger».
Даже незначительное изменение может привести к ошибкам в работе комплекса, кроме того, внесённые самостоятельно изменения не сохранятся при последующих установках новых версий комплекса.
Галерея
История версий
Версия 3.2
- Совместима с DX от 31.03.2019
Версия 3.1
- изменил порядок подключения модуля к форме. Теперь не требуется установка на форму вычисляемых надписей.
- убрал функцию loger из выражений за ненадобностью.
- у модуля появился визуальный интерфейс (доступен через свойство формы «Подключить действие»).
- появилась опция «Контролировать все поля формы» при которой модуль сам ищет все поля и следит за ними, что не требует их перечисления вручную.
- модуль фиксирует «Дублирование записи» и отмечает это в журнале, выделяя событие фиолетовым цветом.
Версия 3.0
- На 90% переписал код модуля расширения, изменив алгоритм работы.
- Убрал параметр № 2 функции, который отвечал за таблицу и её поля. Теперь, чтобы контролировать таблицу нужно просто разместить на на ней надпись с функцией. Количество одновременно контролируемых таблиц не ограничено.
- Полная совместимость с запросами. Для контроля полей формы, отображаемой запросом нужно просто разместить надпись с функцией Loger на форме-источнике запроса.
Версия 2.0
- Возможность контроля одной таблицы на форме в связи с чем у функции Loger появился третий параметр (подробнее в справке по функциям).
- Отображение изменений полей таблицы, создания и удаления записи таблицы в журнале (записи серого цвета).
- Возможность включения и отключения логирования для определённых событий (удаление, создание, изменение записей).
- Функция автоочистки журнала событий (настраивается на форме параметров журнала).
- Возможность ограничения доступа к форме настроек логера.
- Чтение полей объекта и отображение значений полей, вместо ID записи.
- При удалении записи лог сохраняет не только сведения о событии удаления, но и значения контролируемых полей.
Версия 1.1
- Регистрация всех действий пользователя с записями (создание, изменение, удаление).
- Изменено отображение табличной части журнала: изменён порядок столбцов, сортировка и фильтрация записей журнала; добавлено несколько стандартных вариантов фильтрации журнала; добавлена окраска записей журнала в зависимости от активного события.
- Изменена визуальная часть формы: добавлены некоторые компоненты, изменены надписи, переработана логика действий кнопки «Просмотр»; добавлена вертикальная строка состояния, цветом сигнализирующая об активной записи.
- Выловлены и устранены некоторые баги.