RAMP-TS003 ステップ3. フィルター・コード
ほとんどのフィルターはコード ウィザードを使用して簡単に作成することができますが、フィルターのコードを記述する方法を理解している必要があります。
1. Visual LANSAエディターに切り替えて、iiiRMP01の再使用可能なパーツを開きます。
2. 生成されたソース・コードを[ソース]タブで検証し、フィルターがコード化され、データがインスタンス・リストに追加される方法を確認します。
更新が発生することがフレームワークに通知されます。
Invoke #avListManager.BeginListUpdate
次に、リストの既存のアイテムがクリアされます。
Invoke #avListManager.ClearList
次に、データが選択されます。Visual LANSA Fundamentalsチュートリアルで学習したテクニックの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. [オプション]メニューの[設定]オプションを選択します。
5. [詳細]をクリックし、[拡張機能の表示]オプションが選択されていることを確認します。
6. コンポーネントの[Ancestor]プロパティが#VF_AC007であることがわかります。すべてのフィルターは、一連の定義済みの動作を提供するこのベース・クラスから継承します。
7. エディターの[アウトライン]タブを開き、AncestorコンポーネントVF_AC007からどのコンポーネントを継承しているか確認します。
8. [avLISTMANAGER]コンポーネントを右クリックし、[機能]オプションを選択します。
9. コンポーネントのメソッドを展開して検証します。
10. iiiRMP01コンポーネントを閉じます。
これらのコンポーネントの構造化の方法については、フレームワーク ガイドの「フィルターおよびコマンド・ハンドラーの構造」を参照してください。