Ограничьте количество форм / отчетов, которые пользователи могут генерировать с помощью отчетов Oracle.

Есть ли способ ограничить количество отчетов, которые могут генерировать пользователи? Недавно у нас был случай, когда несколько пользователей сгенерировали около 100 отчетов, каждый из которых забросил систему.

Forms / Reports версия 11.1.1.2.0

Спасибо

1 ответ

Я не знаю, есть ли системный способ сделать это, но - как разработчик, вы могли бы:

  • создать таблицу, в которой хранится информация о выполняемых отчетах. Он будет содержать столбцы, такие как (пользователь, дата, имя отчета, ...)
  • вставить строку в эту таблицу в триггере After Parameter Form отчетов
  • удалить строку из нее после завершения отчета в триггере After Report
  • написать функцию, которая возвращает количество отчетов, запущенных в данный момент для конкретного пользователя
  • вызовите его в триггере "Перед отчетом" и - если он превысит установленный вами лимит (не жестко его кодируйте - сохраните его значение в некоторой таблице), затем остановите выполнение отчета и сообщите пользователю (для этого используйте встроенные процедуры SRW)

Да, это означает, что вы должны отредактировать все имеющиеся у вас отчеты (RDF), чтобы реализовать эти изменения.

Другие вопросы по тегам