現在地: RAMP-TSガイド > RAMP VLF-WIN のチュートリアル > RAMP-WIN003: 社員のデータ・フィルターを作成する > RAMP-WIN003 ステップ 3. フィルターのコード

RAMP-WIN003 ステップ 3. フィルターのコード

ほとんどのフィルターは [コード ウィザード] を使用して簡単に作成することができますが、フィルターがどのようにコーディングされているかを理解している必要があります。

1.   再使用可能パーツ iiiRMP01 が開かれている Visual LANSA エディターに切り替え、[ソース] タブを開きます。

2.   生成されたソース・コードを検証し、フィルターがコード化され、データがインスタンスリストに追加される方法を確認します。 

これから更新されることがフレームワークに通知されます。

Invoke #avListManager.BeginListUpdate

 

次に、リストの既存のアイテムがクリアされます。

Invoke #avListManager.ClearList

 

次に、データが選択されます。Visual LANSA チュートリアル基本編で学習したテクニックの 1 つを使用して、これを実行できます。例えば、次のようになります。

Select Fields(#XG_Ident) From_File(PSLMST2) With_key(#XG_Keys) Generic(*yes) Nbr_Keys(*Compute)

  

次に、ビジュアル識別子が設定されます。

Change #UF_VisID1 #EMPNO

Change #UF_VisID2 #SURNAME

 

次に、データがリストに追加されます。

Invoke #avListManager.AddtoList Visualid1(#UF_VisID1) Visualid2(#UF_VisID2) AKey1(#EMPNO)

 

VisualId1 はインスタンス リストの列 1 に、VisualId2 は列 2 に表示されます。  Akey1は社員を一意に識別するキーです (この場合、フィールドは英数字なので、Nkey1 ではなく Akey1 となります)。

 

最後に、インスタンスリストの更新が完了したことがフレームワークに通知されます。

Invoke #avListManager.EndListUpdate)

 

3.  次に、エディターの [詳細] タブをクリックし、コンポーネントのプロパティを表示します。

 

4.   コンポーネントの [Ancestor] プロパティが #VF_AC007 であることがわかります。すべてのフィルターは、一連の定義済みの動作を提供するこのベース・クラスから継承します。

  

5.   エディターの [アウトライン] タブを開き、Ancestor コンポーネント VF_AC007 からどのコンポーネントを継承しているか確認します。

 

6.   [avLISTMANAGER] コンポーネントを右クリックし、[機能] オプションを選択します。

 

7.   コンポーネントのメソッドを展開して検証します。

 

8.   iiiRMP01コンポーネントを閉じます。

これらのコンポーネントの構造化の方法については、フレームワーク ガイドの「フィルターおよびコマンド・ハンドラーの構造」を参照してください。