Preparereport выдает ошибку

отредактировано 22:56 Раздел: FastReport 4.0
Использую FR 4.0
Пишу в Delphi XE2
Windows 7

Хочу распечатать отчет, не показывая его. Вызываю метод PrepareReport() - все получается. Но!
Если в шаблоне отчета есть пользовательская функция, например "Сумма прописью", метод вылетает...
Как быть?!

В процедуру обработки пользовательских функций даже не попадаю при отладке,
если ОНА ПРИСВОЕНА ДИНАМИЧЕСКИ:
frxReport.OnUserFunction := RepUserFunction;
...
function TfmMain.RepUserFunction(const MethodName: string;
var Params: Variant): Variant;
begin
inherited;

if AnsiCompareText(MethodName, 'WRITE_NUMBER') = 0 then
Result := WriteNumber(Params[0]);
end;

Комментарии

  • отредактировано 22:56
    Саму функцию подключили?
    frxReport.AddFunction('function WRITE_NUMBER(sum: real): Variant');

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.