DelphiでDBGridにデータを表示させると(MEMO)ばかりになる場合の対処方法

DelphiのDBコンポーネント(ADOやFireDACなど)で、テキスト長に制限のないDB(SQLite、FileMaker)などに接続すると、文字が全部「 (MEMO)」 などとなってしまう現象があります。

2019-02-27_09h20_18.jpg

(MEMO)を文字として表示する

今回はFireDACの場合の対処方法。

FDConnection > TFDTable > TDataSource -> TDBGrid の階層で表示しているとします。DBはFileMakerにODBCで接続しています。

 

まずFDTable1のフィールドエディタを出し、すべてのフィールドを追加します。

(MEMO)になってしまっているフィールドを選択し、プロパティ「DisplayValue」をdvClip、dvFit、dvFullのいずれかにします。

2019-02-27_09h19_41

 

これだけで文字として表示されました。

入力値はOnSetTextなどで別途対応する必要がありますが、表示だけならこれでOKです。

2019-02-27_15h42_50.jpg

コメント