Не пойму в чем проблема.
В любую таблицу (например в InventorySetup) добавляем поле
типа CrazyReportIsRunning boolean
В репорте в самом начале проверяем этот флажок. Если надо -
выставляем, модифаим, работаем. Делов-то на 2 минуты.
Или я чего-то не знаю?