Ошибка при печати

отредактировано 15:54 Раздел: FastReport 2.xx VCL
Впервые использую FR. Создал отчет. В дизайнере устанавливаю настройки страниц и печати. Когда запускаю программу вызываю отчет. Запускаю на печать, в диалоговом окне печати нажимаю кнопку ок. Выскакивает окно с заголовком SourceFile not Found: fr_class.pas. Я даже хер его знает чего уже делать. Так думаю не хватает чего что ли? Пробовал переустановить FR. Не помогло. Скажите ченить.

Комментарии

  • отредактировано 15:54
    Было у меня такое. Это в программе у тебя что-то неправильно. Код покажи.
  • отредактировано July 2004
    Да ничего особенного, вроде, в моем коду нет. (хотя чем черт не шутит)

    procedure TTovar.SpeedButton2Click(Sender: TObject);
    begin
    frReport1.LoadFromFile(path+'\trade_report1.frf');
    frReport1.ShowReport
    end;

    Открывается то он нормально, а вот на печать как-то через раз стал уходить.
  • отредактировано 15:54
    Что значит "печатает через раз"?

    1. Отчет нормально формируется, появляется окно предварительного просмотра, но при нажатии кнопки "Печать" на принтер ничего не улетает?
    2. Или же окно предварительного просмотра появляется не всегда?

    В первом случае виновата система - или принтер криво установлен, или провод нерабочий, или ещё чего. А во втором случае попробуй замени оператор загрузки шаблона вот на такой:

    frReport1.LoadFromFile('trade_report1.frf');

    а сам файл trade_report1.frf помести в каталог, в котором лежит EXE-шник твоей программы. В этом случае отчет загружается всегда без проблем.
  • отредактировано 15:54
    2 Evgeniy:
    написал:
    frReport1.LoadFromFile('trade_report1.frf');

    а сам файл trade_report1.frf помести в каталог, в котором лежит EXE-шник твоей программы. В этом случае отчет загружается всегда без проблем.

    За такие советы я бы сразу руки отрывал, чтобы они (руки эти) в форум больше ничего не писали и такой бред не советовали ...

    Если во время работы ехе-ника сменится текущий каталог, то отчёты будут загружаться с проблемами, а точнее они вообще не будут загружаться !!!

    2 Edward:

    Рекомендую писать так:
    begin
     if frReport1.LoadFromFile(path+'\trade_report1.frf') then
      frReport1.ShowReport
     else
      MessageDlg('Невозможно открыть файл '+path+'\trade_report1.frf',mtError,[mbOk],0);
    end;
    

    Если у тебя переменная PATH смотрит хрен знает куда, либо такого файла нет, либо нет доступа к этому файлу, то ты как минимум получишь об этом сообщение ...
  • отредактировано 15:54
    Vano написал:
    Если во время работы ехе-ника сменится текущий каталог, то отчёты будут загружаться с проблемами, а точнее они вообще не будут загружаться !!!
    (Посыпая голову пеплом)

    О! Точно. Спасибо за поправку. Вообще-то я именно этого и добивался, хотел выяснить, не указывает ли переменная path куда-то не туда.

    Но для отладочных целей мой вариант попрощще будет ;)
  • отредактировано 15:54
    2 Evgeniy:
    написал:
    Но для отладочных целей мой вариант попрощще будет

    А написать полный путь до файла - это конечно НУ ОЧЕНЬ СЛОЖНЫЙ вариант ;) )
    frReport1.LoadFromFile('C:\trade_report1.frf');
    
  • отредактировано 15:54
    Да, тоже неплохо.

    Кодекс Программиста: "1. Настоящий программист должен быть ленивым" ;)

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

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