隠しフィルター

Visual LANSA

隠しフィルター


ビジネス・オブジェクト・インスタンス・リストを完全にプログラム的に入力したい状況では、フィルターはエンド・ユーザーと意味のある会話処理はできないため、隠すことができます。

HRシステムの全従業員を選択し、インスタンス・リストに追加する場合の隠しフィルターの例を以下に示します。

フィルターが見えていないことに注意してください。このフィルターは、以下のような初期化されていないルーチンを持っています。

Mthroutine Name(uInitialize) Options(*Redefine)

* Do the ancestor  thing ....

Invoke #Com_Ancestor.uInitialize

* Define this as a hidden filter ( you can only ever sensibly have a 
* single filter when it's hidden )

Set #Com_Owner avHiddenFilter(TRUE)

* Now fill the instance list with all employee details 

Invoke #avListManager.BeginListUpdate

Invoke #avListManager.ClearList

Select Fields(#EmpNo #SurName #GiveName) From_File(PSLMST) 
Use BConcat (#GiveName #SurName) #Std_TextL
Invoke Method(#avListManager.AddtoList) Visualid1(#Empno) Visualid2(#Std_TextL)     Akey1(#Empno)
EndSelect

Invoke #avListManager.EndListUpdate

* Finished

EndRoutine