2

Fire-Dac コンポーネントの内部にハードワイヤード FIB+ 接続を持つ大規模なアプリケーション ファミリを移行しています。

まず、バックエンドを切り離して移行し、接続性をニュートラルにし、接続性に依存する部分を取得し、既存のアプリケーションを手動でリファクタリングしました。FireDac のパーツも書いています。

Delphi コードを移行するには問題ないようです...

しかし、お尻の大きな痛みは、設計時にフォームとデータモジュールに配置されたコンポーネントの移行のようです: GExpert をインストールし、そのコマンド Replace Components with defined rules how to map some properties を試しましたが、おそらくコンポーネント間の相互参照が失われました。段階的な置換プロセスでタイプの非互換性が発生しました。

私の現在のアプローチは手作業です。古い FIB+ コンポーネントの名前にサフィックスを追加し、元の名前をコピーして新しい対応する Fire-Dac コンポーネントに貼り付けます。この手順をすべてのコンポーネントに対して繰り返し、プロパティを適切に設定して FIB+ コンポーネントをドロップします。これにより、このプロセス中に古い設定を何度も調べることができます。

誰かがそれをより良くする方法を証明した/推奨する方法を持っていますか?

ありがとうございます

4

1 に答える 1

3

いくつかの側面:

  1. さまざまな SQL 操作のプロパティを使用している場合は、FireDAC TADQuery から TMyQuery を派生させることができます。TMyQuery は TADUpdateSQL を作成し、TMyQuery インターフェイスで XxxxSQL プロパティを公開します。また、FireDAC TADQuery にはない FIBPlus の他のプロパティとメソッドを TMyQuery に導入することもできます。
  2. FireDAC と FIBPlus の間の高い互換性レベルを達成するために、他の FIBPlus コンポーネントに使用できる同様のアプローチ。
  3. FireDAC アドオン ツール - ADDFMChanger を使用して、FIBPlus から FireDAC への PAS / DFM 移行を自動化できます。セットアップと移行は、BDE -> FireDAC の移行に似ています。da-soft.com からダウンロードできる FireDAC / AnyDACアドオン
  4. 移行の主な問題は、FireDAC と FIBPlus の動作の違いである可能性があります。私は FIBPlus の経験がないので、ここでコメントすることはできません。
于 2013-05-19T12:10:05.020 に答える