XE6のライブラリに関するリファクタリングについて

概要: XE6で変更されたユニット名/パッケージ名/クラス名/プロパティ名について説明します。

dummy

対象となるバージョン

・XE6

dummy

  概要

XE5からXE6へのバージョンアップに伴って、ユニット名/パッケージ名/クラス名/プロパティ名がいくつか変更されています。

変更点に関して全てを公開しているわけでありませんが、その一部をここで紹介させていただきます。

大まかな変更点は、こちらをご覧ください。

これ以外の情報として

dummy

(1)パッケージ名

・FireDACDataSnapDriver → FireDACDSDriverに変更

dummy

XE5ではDriverID=DataSnap、そしてXE6ではDriverID=DSのように変更されております。

上記以外にも

XE5では、TFDPhysDataSnapDriverLink

XE6では、TFDPhysDSDriverLink

というように DriverIDと統一性を持たせるためにDataSnap”から”DS”へ名前が変更されているコンポーネントもあります。

dummy

(2)ユニット名

・IBDatabase → IBX.IBDatabase

・IBQuery → IBX.IBQuery

・IBTable → IBX.IBTable

などIBExpressコンポーネントに関するユニット名が変更されています。

旧バージョンで作成したプロジェクトをXE6で開き、ビルドすると該当するユニットが見つからず、エラーになります。
その場合の対策としては、以下の図のようにプロジェクトオプションの[ユニットスコープ]に”IBX”を追加してください。

エラーが解消されます。

dummy

Hide image
Click to see full-sized image

dummy

(3) クラス名

・TFDWideMemoField → TWideMemoFieldに変更

dummy

参考情報:

http://www.da-soft.com/anydac/embarcadero-firedac-xe6-released.html

FD: / changed: FDDataSet: TFDWideMemoField removed and replaced by TWideMemoField

dummy

(4) プロパティ名

・TFDParam.ADDataType → TFDParam.FDDataTypeに変更

dummy

これは、XE5でAD=>FDに接頭語を全て置き換えて統一しなければなかったところを一部置き換えられていない部分が存在しておりましたので、それに対する修正です。

dummy

以上のようにXE5=>XE6で細かい箇所で名前が変更されており、それによって支障をきたすことがございます。

もし該当する名前で、ビルドエラー等が生じましたら、誠にお手数ですが適宜修正をお願いいたします。

dummy