Переход с FR2 на FR3

отредактировано 17:17 Раздел: FastReport 3.0
в чем суть, какие проблемы и особенности есть при переходе уже работающей системы с fr2 на fr3?
что придется переписывать,переделывать,итд?

Комментарии

  • gpigpi
    отредактировано 17:17
    Для перехода со второй версии на третью нужно конвертировать отчёты с frf в fr3 с помощью модуля frx2xto30.pas. Для этого нужно:
    1) в дизайнере второй версии поотключать у всех бэндов источники данных, а то отчёты не будут открываться в дизайнере третьей версии (актуально для FR 3.19.13, в последующих может быть и исправлено)
    2) добавить в секцию uses frx2xto30.pas
    3) для дизайнера третьей версии в меню Вид-Настройки установить опцию Свободное размещение бэндов
    4) запустить программу и в работайщей программе открыть дизайнер отчётов. В нём открыть frf и сохранить как fr3
    Скрипт придётся переписывать. Особое внимание нужно уделить работе с переменными (прочитать мануал) и подключению пользовательских функций
  • отредактировано 17:17
    gpi написал:
    Скрипт придётся переписывать. Особое внимание нужно уделить работе с переменными (прочитать мануал) и подключению пользовательских функций
    не мог бы ты по-подробнее рассказать про обновление скриптов?
    заранее спасибо
  • gpigpi
    отредактировано 17:17
    Скрипт нужно переписывать вручную. Всё зависит от конкретного случая, так что мануал придётся штудировать основательно. Будут возникать вопросы - пишите в форум
  • отредактировано 17:17
    Изучаю возможность перехода с 2.х на 3.х, для чего скачал сегодня 3.20 Basic Edition. Установка прошла успешно (D7). Далее, следуя рекомендациям по конверации отчетов из frf в fr3, добавил в uses модуль frx2xto30.pas. Так вот проблема в том, что программа с этим файлом компилиться не хочет: в нем подюзан frxDCtrl.pas, которого ни в каком виде (даже в dcu) нигде нет. Хотелось бы узнать, в чем причина: это бага в дистрибутиве или я что-то делаю не так?
  • отредактировано 17:17
    В Basic версии нет диалоговых форм и контролов(модуль frxDCtrl), а конвертор может конвертировать формы и контролы следовательно использует frxDCtrl.
  • отредактировано 17:17
    написал:
    В Basic версии нет диалоговых форм и контролов(модуль frxDCtrl), а конвертор может конвертировать формы и контролы следовательно использует frxDCtrl.
    т.е. в Basic-версии я сконвертировать формы не смогу? зачем тогда в этой версии нужен файл frx2xto30.pas? как-то нелогично... все-таки хотелось бы перед покупкой, допустим, Professional Edition попробовать это сделать в базовой версии, поскольку отчетов достаточно много (кстати, диалоговых форм и контролов в них нет вообще), и вручную их все перерисовать нереально.
  • gpigpi
    отредактировано 17:17
    Не уверен, что получится, но попробуй конвертировать триальной версией.
  • отредактировано 17:17
    Ок - закомментировал в упомянутом файле куски, где использовались ссылки на классы из frxdctrl - скомпилилось. Создал во второй версии для теста простой отчет. Запускаю прогу, открываю 2-м дизайнером этот отчет, сохраняю как fr3 - пока все нормально. Теперь пытаюсь открыть новый файл 3-м дизайнером и вылазит окошко "Enter password" и пустой отчет. Теперь, собственно, вопрос: что сие означает и имеет ли значение, с какого 2.5x выполнять конвертацию в 3.х
    (у меня - 2.52)?
  • отредактировано 17:17
    Найдите в frx2xto30.pas:
    Report.ReportOptions.Password := ReportPassword;
    и поменяйте на
    Report.ReportOptions.Password := '';
    После этого пароля не будет вообще.
  • отредактировано 17:17
    Решил проблему следующим образом (и ReportPassword трогать не надо):
    uses ..., frx2xto30, ...
    ...
      frDoc: TfrxReport;
    ...
    TForm1.Button1Click(Sender: TObject);
    begin
      frDoc.LoadFromFile('c:\rep_test\1.frf');
      frDoc.SaveToFile('c:\rep_test\1.fr3');
    end;
    

    Небольшое уточнение: в алгоритме, предложенном gpi в п.4. надо понимать, что открывать следует 3-й дизайнер, а не 2-й.
  • a-pa-p
    отредактировано 17:17
    А что на счет утилиты fr3convert? Может правильней пользоваться ей? Она переведет отчеты в верс. 3 болле коррекно?
  • gpigpi
    отредактировано 17:17
    написал:
    А что на счет утилиты fr3convert? Может правильней пользоваться ей? Она переведет отчеты в верс. 3 болле коррекно?
    Если бы так было, то разработчики не стали бы создавать frx2xto30.pas.
  • a-pa-p
    отредактировано 17:17
    Хочу перейти с 2.47 на 3
    1. В дизайнере FR 2.47 добавил на форму диалога объект TFRxComboBoxColtrol.
    3. Затем перевел получившийся файл в FR3 утилитой fr3convert.exe.
    4. При открытии из дизайнера FR3 сконвертированного отчета получаю ошибку "не удалось найти класс TfrxDBLookupControl" и отсутствие соответствующего компонента.

    ту же ошибку получаю при промежуточном использовании FR 2.53:
    frReport1.LoadFromFile
    frReport1.SaveToFR3File

    Как с этим бороться?
  • gpigpi
    отредактировано 17:17
    написал:
    1. В дизайнере FR 2.47 добавил на форму диалога объект TFRxComboBoxColtrol.
    Может быть, TfrComboBoxColtrol ?
    написал:
    4. При открытии из дизайнера FR3 сконвертированного отчета получаю ошибку "не удалось найти класс TfrxDBLookupControl" и отсутствие соответствующего компонента.
    TfrComboBoxColtrol и TfrxDBLookupControl - разные объекты

    Насколько я помню, FR 2.53 не вполне корректно сохранял в формат FR 3, как и fr3convert.exe
    Почему не хотите воспользоваться frx2xto30.pas? В крайнем случае используйте FR 2.55
  • a-pa-p
    отредактировано 17:17
    Пользуюсь FR 3.03 и в этом, скорее всего, источник этих проблем. Скачаю последнюю версию в надежде на решение.
  • отредактировано August 2006
    Так что в итоге?
    Если есть готовый бланк накладной в формате .frf можно ли его безболезненно конвертнуть в формат .fr3? Или придется все таблицы и все остальное перерисовывать руками?
  • gpigpi
    отредактировано 17:17
    Nocturnal Pulse
    Сам шаблон бланка будет переконвертирован нормально, а скрипт придётся подправлять
  • отредактировано 17:17
    gpi написал:
    4) запустить программу и в работайщей программе открыть дизайнер отчётов. В нём открыть frf и сохранить как fr3
    Скрипт придётся переписывать. Особое внимание нужно уделить работе с переменными (прочитать мануал) и подключению пользовательских функций
    Вот здесь можно поподробнее: как в работающей программе запустить дизайнер отчета? У TfrxDesigner вроде как нет методов типа Execute, Open etc. Если сформировать отчет и в нем запустить дизайнер, то в дизайнере меню/кнопка "Открыть" неактивны.
  • отредактировано 17:17
    broom написал:
    Вот здесь можно поподробнее: как в работающей программе запустить дизайнер отчета? У TfrxDesigner вроде как нет методов типа Execute, Open etc. Если сформировать отчет и в нем запустить дизайнер, то в дизайнере меню/кнопка "Открыть" неактивны.
    Вопрос снят:
     ReportForm.frxReport1.DesignReport;
    
  • отредактировано 17:17
    А кто-нибудь может выложить, или прислать в мыло скомпилированный exe-шник, который конвертирует?
    Сам не могу скомпилировать по причине отсутствия update2 к дельфи.
    Очень надо...
  • gpigpi
    отредактировано 17:17
    написал:
    Сам не могу скомпилировать по причине отсутствия update2 к дельфи.
    ftp://ftpd.borland.com/devsupport/delphi/d6/D6_upd1_ent.exe - 28,0 МБ
    ftp://ftpd.borland.com/devsupport/delphi/d6/D6_upd2_ent.exe - 33,2 МБ
  • отредактировано 17:17
    gpi написал:
    Жаба душит за трафик :-(
  • отредактировано 17:17
    привет, всем, вопрос следующий:
    переконвертил я модуль из второй версии в третью и весь текст на русском языке стал в иероглифах, проверил стили - одинаково.
    что делать?
    ;) не переписывать же текст , а там его ;) - много(
  • отредактировано 17:17
    Попробуйте у всех мемок поставить Charset = RUSSIAN_CHARSET, хотя такого быть не должно.

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

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