Страница 1 из 1

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

Добавлено: 22 мар 2012, 15:46
sim
Если пользователь запускает формирование расчетного листка в Бизнес-тексте, то после этого остается файл в директории OUT. Если же отчет в FastReport-е, то следов не остается. Это факт не устраивает в разрезе обеспечения законодательства по защите персональных данных.
Вопрос: как отследить запуск отчета под FastReport ? Или например, как запретить этот запуск?

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

Добавлено: 22 мар 2012, 15:57
Начинающий путь
Г-ку запускать в батнике, который чистит после закрытия Г-ки каталоги. Устроит?

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

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

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

Добавлено: 22 мар 2012, 19:49
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) В паке сохранения отчетов автоматически формировать вложенные папки по первой букве компоненты

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

Добавлено: 22 мар 2012, 19:54
LaaLaa
Кроме того если вам нужно контролировать только определенные отчеты. Вы легко можете в код этих отчетов. Вставить фрагмент кода FastScript который будет отсылать в службу безопасности скрытые уведомления. Используя какую нибудь библиотеку протоколировании через CreateOleObject или банально через файл.

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

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

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

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