Отследить запуск отчета под FastReport

Администрирование баз данных (Pervasive.SQL, MS SQL, Oracle, утилита Support)

Модераторы: m0p3e, edward_K, Модераторы

Ответить
sim
Местный житель
Сообщения: 1805
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Россия

Отследить запуск отчета под FastReport

Сообщение sim »

Если пользователь запускает формирование расчетного листка в Бизнес-тексте, то после этого остается файл в директории OUT. Если же отчет в FastReport-е, то следов не остается. Это факт не устраивает в разрезе обеспечения законодательства по защите персональных данных.
Вопрос: как отследить запуск отчета под FastReport ? Или например, как запретить этот запуск?
Начинающий путь
Местный житель
Сообщения: 258
Зарегистрирован: 13 апр 2006, 11:57
Откуда: Бегущий к Галактике

Re: Отследить запуск отчета под FastReport

Сообщение Начинающий путь »

Г-ку запускать в батнике, который чистит после закрытия Г-ки каталоги. Устроит?
sim
Местный житель
Сообщения: 1805
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Россия

Re: Отследить запуск отчета под FastReport

Сообщение sim »

Начинающий путь писал(а):Г-ку запускать в батнике, который чистит после закрытия Г-ки каталоги. Устроит?
Не, немного не то. Нужно не чистить, а наоборот - найти следы запуска, чтобы вычислить пользователя, запустившего расчетный листок.
LaaLaa

Re: Отследить запуск отчета под FastReport

Сообщение LaaLaa »

Откройте дизайнер FastReport (редактор отчета). В меню дизайнера убедитесь что включено "Вид \ Панели инструментов \ Мастера". В панели инструментов дизайнера есть кнопка в виде дискетки с часами "Автоматическое сохранение". Задайте птицу "Сохранять сформированные отчеты в папку на диск" и пути для сохранения. В заданной паке будут сохраняться все отчеты FastReport.

Делали эту функцию по просьбе отдела тестирования. Возможно пригодится и Вам.

Параметры авто сохранения FastReport отчета сохраняются в реестре: HKEY_CURRENT_USER\Software\FastReport\FastReportAvtoSave
Даже можете в regedit правами запретить пользователям изменять эту ветку реестра, чтобы они не могли выключить авто-сохранение.

PS: См также описание ПИР 102.102844 в обновлениях Freport3.dll
Доработать функцию автоматического сохранения отчетов FastReport по списку требования отдела тестирования
1) При сохранении формировать полное имя файла по формату <Компонент>!!<Интерфейс> <Поток данных> <Название отчета> <Номер копия>.fp3
2) Возможность задать папку для сохранения отчетов в параметре [Files] OutputFilesDirectory файла *.cfg
3) При формировании имени файла автоматически увеличивать <Номер копии>
4) В паке сохранения отчетов автоматически формировать вложенные папки по первой букве компоненты
Последний раз редактировалось LaaLaa 22 мар 2012, 19:56, всего редактировалось 1 раз.
LaaLaa

Re: Отследить запуск отчета под FastReport

Сообщение LaaLaa »

Кроме того если вам нужно контролировать только определенные отчеты. Вы легко можете в код этих отчетов. Вставить фрагмент кода FastScript который будет отсылать в службу безопасности скрытые уведомления. Используя какую нибудь библиотеку протоколировании через CreateOleObject или банально через файл.
sim
Местный житель
Сообщения: 1805
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Россия

Re: Отследить запуск отчета под FastReport

Сообщение sim »

LaaLaa писал(а):Кроме того если вам нужно контролировать только определенные отчеты. Вы легко можете в код этих отчетов. Вставить фрагмент кода FastScript который будет отсылать в службу безопасности скрытые уведомления. Используя какую нибудь библиотеку протоколировании через CreateOleObject или банально через файл.
ЗдОрово!
Спасибо, попробуем.
LaaLaa

Re: Отследить запуск отчета под FastReport

Сообщение LaaLaa »

sim писал(а):Или например, как запретить этот запуск?
Там же в скрипте вы можете на событие OnStartReport добавить проверку условий конфиденциальности. При нарушении вызвать метод Engine.StopReport.
Ответить