フィルターとリスト・マネージャー

Visual LANSA

フィルターとリスト・マネージャー


フィルター・コンポーネントはインスタンス・リスト内に表示されるエントリーを制御します。

リスト・マネージャーはフィルターで使用できるメソッドを提供します。

WindowsWAMアプリケーション

説明

Invoke #avListManager.BeginListUpdate

リスト・マネージャーにこれからインスタンス・リストのアップデートを開始することを通知するために使用する。事実上BeginListUpdateとEndListUpdateはリストのアップデート・トランザクションの境界を定義するために使用される。リストの更新を始めると、リスト・マネージャーはビジー・ライトを点灯します。

「インスタンス・リスト・エントリーの更新と削除」も参照してください。

Invoke #avListManager.ClearList

カレント・インスタンス・リストをクリアするために使用する

Invoke #avListManager.AddtoList

インスタンス・リストに新しいエントリーを追加したり、既存のものを更新するために使用する。このメソッドにVisualID1とVisualID2およびAKeynとNKeynの値を供給する必要があります。

また、インスタンスを選択すべきかを表示するSelectパラメータもあります。

AddToListメソッドにはオプションのBusinessObjectTypeパラメータがあって、フィルターが同じインスタンス・リストに別のビジネス・オブジェクト・タイプを追加するために使えます。

またオプションのRowColorパラメータもあり、フィルターでインスタンス・リストのエントリーを追加する際に色を指定することができます。詳細は、「リスト・エントリーの色の変更(RowColor)」を参照してください。

Invoke #avListManager.EndListUpdate

リスト・マネージャーにリストのアップデートが完了したことを通知するために使用。リスト・マネージャーはビジー・ライトを消灯し、画面に表示されたリストを更新します。

Invoke #avListManager.RemovefromList

 

現在WAMでは無効です。

インスタンス・リストからエントリーを削除するために使用。AKeynおよびNKeynの値は削除するエントリーを固有に識別するために必要です。エントリーが存在しない場合は要求が無視されます。

Invoke #avListManager.UpdateListEntryData

 

現在WAMでは無効です。

既存のインスタンス・リスト・エントリーのデータ内容を迅速に更新するために使用。エントリーが存在しない場合は要求が無視されます。BeginListUpdateおよびEndListUpdateのメソッド呼び出しで囲む必要はありません。

Invoke #avListManager.RefreshRelationship 

現在WAMでは無効です。

インスタンス・リストで子/子孫のツリー「クラスター」(ツリーとして表示されるもの)を更新するために使用。このメソッドを呼び出すと、リレーション・ハンドラーが再度呼び出される結果、ツリーの子ノード・クラスターが更新されます。次の点に注意してください。

·         子ノード・クラスターがあらかじめ展開されていなければ、更新要求は無視されます。 

·         子ノード・クラスターが展開されていれば、リレーション・ハンドラーが呼び出され、リレーションが再度展開されます。リレーション・ハンドラーが返すインスタンス・リスト・エントリーにより、既存のツリー・ノードが更新され、または新しいエントリーが挿入されます。呼び出し前から存在していたツリー・ノードのうち、リレーション・ハンドラーから返されなかったものは、ツリーおよびインスタンス・リストから削除されます。

·         通常、このメソッドは、ツリーの最下層レベルでのみ使います。

·         このメソッドの使用にあたって問題が生じた場合は、アプリケーションのトレース機能を有効にし、その出力を調べてみてください。

「インスタンス・リスト・エントリーの更新と削除」も参照。

Invoke #avListManager.AlterColumnHeadings

現在WAMでは無効です。

実行時にインスタンス・リストの欄見出しをオーバーライドするために使用。これを使用すると、インスタンス・リストを各種のフィルター検索の結果に適したものにすることができます。

Invoke #avListManager.ResetAlteredHeadings

現在WAMでは無効です。

インスタンス・リストの欄見出しのすべてのオーバーライドを削除するために使用。

Invoke #avListManager.DisplaySorted

現在WAMでは無効です。

実行時に列の表示/非表示によってインスタンス・リストをソートするために使用。最大4つのソート列を指定することができます。

インスタンス・リストの項目の更新方法の手順については、チュートリアル「VLF013WIN - イベントの通知」または「VLF013WAM - イベントの通知」を参照してください。

WindowsとWebブラウザー・アプリケーションで構文が異なっていても、インスタンス・リストを管理するプログラミング・モデルは同じです。

以下の例では、WindowsWAMアプリケーションで、インスタンス・リストにEmpolyeeの詳細を入力します。

* Start the list updating and clear the current instance list 

Invoke Method(#avListManager.BeginListUpdate)

Invoke Method(#avListManager.ClearList)

* Select all employees with specified surname (generically) and add to instance list 

Select Fields(#SURNAME #GIVENAME #EMPNO) From_File(PSLMST2) With_Key(#SURNAME)

       Generic(*YES)

Use Builtin(BCONCAT) With_Args(#GiveName #SurName) To_Get(#FullName)

Invoke Method(#avListManager.AddtoList) Visualid1(#Empno) Visualid2(#FullName)

       Akey1(#Empno)

EndSelect

* Instance list updating has been completed

Invoke Method(#avListManager.EndListUpdate)