Проверенный / рекомендуемый способ переноса приложения из FIB+ в компоненты Fire-DAC
Я перевожу большое семейство приложений, имеющих встроенное соединение FIB+ внутри, на компоненты Fire-Dac, и я ищу какой-то наименее болезненный способ, как это сделать.
Во-первых, я отделил и перенес серверную часть, чтобы получить нейтральные и зависимые от подключения части и вручную выполнить реорганизацию существующих приложений. Я также написал части FireDac.
Для переноса кода Delphi, кажется, нет проблем...
Но большая боль в заднице кажется миграцией компонентов, размещенных на формах и модулях данных во время разработки: я установил GExpert и попробовал его команду Заменить компоненты с определенными правилами, как отобразить некоторые свойства, но он потерял взаимную ссылку между компонентами, вероятно Из-за несовместимости типов в процессе пошаговой замены.
Мой текущий подход - ручная работа: добавить суффикс к имени старого компонента FIB+, скопировать и вставить оригинальное имя в новый соответствующий компонент Fire-Dac. Этот шаг я повторяю для всех компонентов, затем правильно устанавливаю свойства и удаляю компоненты FIB+. Это позволяет мне проверять старые настройки снова и снова во время этого процесса.
У кого-нибудь есть какой-нибудь проверенный / рекомендуемый способ, как сделать это лучше?
Спасибо пф
1 ответ
Несколько аспектов:
- Если вы используете свойства для различных операций SQL, вы можете получить TMyQuery из FireDAC TADQuery. TMyQuery создаст TADUpdateSQL и опубликует его свойства XxxxSQL в интерфейсе TMyQuery. Также вы можете ввести в TMyQuery другие свойства и методы FIBPlus, пропущенные в FireDAC TADQuery.
- Подобный подход вы можете использовать для других компонентов FIBPlus для достижения высокого уровня совместимости между FireDAC и FIBPlus.
- Вы можете использовать дополнительный инструмент FireDAC - ADDFMChanger, чтобы автоматизировать миграцию PAS / DFM из FIBPlus в FireDAC. Настройка и миграция будут аналогичны миграции BDE -> FireDAC. Аддоны FireDAC / AnyDAC вы можете скачать с da-soft.com.
- Основной проблемой миграции может быть разница в поведении FireDAC / FIBPlus. Я не могу комментировать здесь, потому что у меня нет опыта работы с FIBPlus.