unsupported frf format

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

unsupported frf format

Сообщение pi1 » 08.09.2014 12:56:54

Заранее извиняюсь, но не нашел ответа для Lazreport.
Это - unsupported frf format - выводится при работе в среде Win7. Причем только один раз за сеанс работы приложения при выполнении Lazreport1.LoadFromFile. В сети эта ошибка обсуждается в связке с fastreport, что не дает достаточно ясной для понимания информации.Некоторые сообщения на таких форумах намекают на права пользователя. Тогда хотелось бы получить или грамотное разъяснение от спеца или толковый совет. Например "Нужно файлу шаблона задать в в Win7 полные права на доступ пользователю "система", уж очень достало методом тыка действовать (например поменял расположение temp и tmp, на c:temp, не помогло).

Добавлено спустя 1 час 24 минуты 36 секунд:
Вот нашел такой вариант:
//загружаем шаблон
Lazreport1.LoadFromFile(filename1);
//обрабатываем данные
Lazreport1.PrepareReport;
//сохраняем уже заполненный данными шаблон в новом формате
Lazreport1.SavePreparedReport(dir+'temp.frp');
//загружаем заполненный данными шаблон в новом формате
Lazreport1.LoadPreparedReport(dir+'temp.frp');
//показываем репорт
Lazreport1.ShowPreparedReport;
Таким образом нам не надо загружать данные в шаблон "на лету" и мы обходим все затыки прав на файл и проверки уж очень кусачих антивиров.
Или я опять не прав?
Аватара пользователя
pi1
новенький
 
Сообщения: 49
Зарегистрирован: 19.04.2012 18:11:24
Откуда: г.Зеленокумск

Re: unsupported frf format

Сообщение alexs » 08.09.2014 17:43:28

А почему frf используется вместо lrf?
frf - пережиток прошлого - наследие от FR. В LazReport-е в этот формат уже не основной. В дальнейшем он вообще может быть объявлен как устаревший.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 3494
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: unsupported frf format

Сообщение pi1 » 23.09.2014 14:56:47

От этого -" unsupported frf format " избавиться не удалось. Зато нажил проблему с зависшим дискриптором файла temp.frp. Репорт работает только после перезапуска приложения. Причем эта тяпка выскакивает "пердически", наверное когда "защитник" Windows этот файл "мусолит".
"А почему frf используется вместо lrf?"- в том то и соль, что при использовании lrf выводится это сообщение при работе приложения на отдельных релизах Win7, в момент загрузки шаблона в репорт.
Встречал рекомендации, что нужно перенастроить на другую папку глобальные переменные temp и tmp. Но это так не красиво, из за кривого лазрепорта лезть в настройки системы. Одно хорошо, вылазит сообщение один раз за сессию. А может где то в исходниках lazreport подправить?

Добавлено спустя 7 минут 48 секунд:
А и правда, нашел. Оказывается в сборке lazarus 1.0.6, которым пользуюсь, используется модуль lr_const.pas, в котором это и присутствует.

Добавлено спустя 14 минут 8 секунд:
И еще, это сообщение (sFRFError) выводится в процедуре:
// load/save methods
procedure TfrReport.LoadFromStream(Stream: TStream);
begin
CurReport := Self;
Stream.Read(frVersion, 1);
if frVersion < 21 then
begin
frVersion := 21;
Stream.Position := 0;
end;
if frVersion <= frCurrentVersion then
try
{$IFDEF FREEREP2217READ}
if FRE_COMPATIBLE_READ and (frVersion >= 23) then
frVersion := 22;
{$ENDIF}
Pages.LoadFromStream(Stream);
except
on E:Exception do
begin
Pages.Clear;
Pages.Add;
MessageDlg(sFRFError+^M+E.Message,mtError,[mbOk],0)
end;
end
else
MessageDlg(sFRFError,mtError,[mbOk],0);
end;
И я что то не понял смысла в этом коде. То есть если версия репорта больше 23 то поставить 22 и вывести сообщение?

Добавлено спустя 1 час 8 минут 4 секунды:
Раз это сообщение выводится один раз и впоследствии репорт работает нормально, то придумал такой трюк- заменил "Unsupp...." на "Printer is ready!" и спровоцировал вывод при загрузке приложения :lol:
Аватара пользователя
pi1
новенький
 
Сообщения: 49
Зарегистрирован: 19.04.2012 18:11:24
Откуда: г.Зеленокумск

Re: unsupported frf format

Сообщение pi1 » 18.03.2017 13:14:03

В сборке версии 1.6.2 такой проблемы нет.
Аватара пользователя
pi1
новенький
 
Сообщения: 49
Зарегистрирован: 19.04.2012 18:11:24
Откуда: г.Зеленокумск


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 8

Рейтинг@Mail.ru