[ |../../index.htm#lansa/lansa050fp_0050.htm]
現在地: 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コンポーネントを閉じます。
これらのコンポーネントの構造化の方法については、フレームワーク ガイドの「フィルターおよびコマンド・ハンドラーの構造」を参照してください。
[
|../../index.htm#lansa/lansa050fp_0050.htm]