Visual LANSA フレームワーク ガイド > フレームワーク・プログラミング > フレームワークでの Unicode データの使用 > VLF-WIN の場合

VLF-WIN の場合

VLF-WIN では、特定のメソッドの特定のパラメータ内で Unicode を使用できるようになりました。

例えば、インスタンスリストのデータを読み書きするためのメソッドすべてが、ビジュアル識別子と AColumns に対し Unicode を利用することができます。

一般的なルールは以下の通りです。

データの書き込み

フレームワークにデータを書き込む際は、引き続き同じパラメータを使用でき、英数字フィールドまたは Unicode (NChar NVarChar) フィールドのいずれかを入力として使用します。

例えば、次のステートメントはどちらも有効です。

#avListManager.AddtoList AColumn1(#MyAlphaField)

#avListManager.AddtoList AColumn1(#MyUnicodeField)

 

データの読み込み

Unicode 対応のパラメータから Unicode データを読み込む場合、Unicode データを正しく表示させるには、パラメータの新バージョン u を使用する必要があります。

例えば、ネイティブの文字セット以外の Unicode データを読み込む場合、以下のステートメントは無効となります。

#avListmanager.GetSelectedInstance AColumn1(#MyUnicodeField)

 

有効なステートメントは次のようになります。

#avListmanager.GetSelectedInstance AColumn1u(#MyUnicodeField)

 

ただし、ネイティブの文字セット以外の Unicode データを読み込むのでなければ、次のステートメントはいずれも有効です。

#avListmanager.GetSelectedInstance AColumn1(#MyUnicodeField)

#avListmanager.GetSelectedInstance AColumn1(#MyAlphaField)

#avListmanager.GetSelectedInstance AColumn1u(#MyUnicodeField)

ですから、既存のロジックも問題なく実行できます。

 

リレーション・ハンドラー

リレーション・ハンドラーを利用してツリー・スタイルのインスタンスリストを作成し、このインスタンスリストに Unicode データを追加する場合、リレーション・ハンドラーとしてファンクションではなく、再利用可能パーツを使用する必要があります。

 

フィルター、コマンド・ハンドラー、リレーション・ハンドラーで Unicode を使用する例としては、提供の例 DF_T35* と DM_T35* を参照してください。

VLF ツールおよび拡張機能についての注意

内部 VLF オブジェクトモデルを読み込む VLF ツールや拡張機能を作成した場合、これらを修正したり再コンパイルする必要がある可能性があります。VLF の内部プロパティの一部は Unicode に変更され、参照に .asNativeString を追加する必要がある場合があります。

 

また以下も参照してください。

コード・テーブル内の Unicode データ

仮想クリップボードの Unicode データ

トレースにおける Unicode データ