ステップ3. Sectionsビジネス・オブジェクトからEmployeesビジネス・オブジェクトに切り替えるためのロジックを追加する

Visual LANSA

ステップ3. Sectionsビジネス・オブジェクトからEmployeesビジネス・オブジェクトに切り替えるためのロジックを追加する


このステップでは、Sectionsの詳細コマンド・ハンドラーにロジックを追加して、Employeesビジネス・オブジェクトの詳細コマンド・ハンドラーに課の社員の詳細を表示します。

Employeesの詳細コマンド・ハンドラーへの切り替えは、ボタン・クリック・イベントで実行します。

 

1.    課の詳細コマンド・ハンドラーの[ソース]タブを表示します。

2.    Override Field(#UB_PUSHB1)ステートメントを探して次のように変更します。

 

Override Field(#UB_PUSHB1) Default('Details')

 

3.     #avFrameworkManager.uWAMEvent_1イベント・ルーチン(詳細ボタン・クリック・イベントを処理するルーチン)に、次のコードを追加して社員情報コマンド・ハンドラーのインスタンス・リストをクリアし、選択した課の社員のインスタンス・リストを生成します。

Invoke Method(#avListManager.BeginListUpdate) ForBusineesObject(EMPLOYEES)

Invoke Method(#avListManager.ClearList)

Select Fields(#EMPNO #GIVENAME #SURNAME) From_File(PSLMST1) With_key(#DEPTMENT #SECTION) Generic(*yes) Nbr_Keys(*Compute)

Invoke #avListManager.AddtoList Visualid1(#EMPNO) Visualid2(#SURNAME) AColumn1(#givename)AKey1(#EMPNO)

EndSelect

Invoke Method(#avListManager.EndListUpdate)

 

WAMコマンド・ハンドラーで、使用するインスタンス・リスト、この場合はビジネス・オブジェクトEMPLOYEESのインスタンス・リストに名前を付けます(Windowsでは、別のビジネス・オブジェクトのインスタンス・リストを操作するのにavAddSwitchInstancesイベントを使用します)。

 

4.   次に、Employeesビジネス・オブジェクトの詳細コマンド・ハンドラーに切り替えるステートメントを追加します。

 

#avframeworkmanager.avSwitch To(BUSINESSOBJECT) NAMED(EMPLOYEES) EXECUTE(DETAILS) Caller(#com_owner) 

 

·         Toパラメータには、ビジネス・オブジェクトへの切り替えであることを示すBUSINESSOBJECTが含まれています(フレームワークまたはアプリケーションに切り替えることもできます)。

·         NAMEDパラメータには、実際のビジネス・オブジェクト名が含まれている必要があります。

·         EXECUTEパラメータには、実行するコマンドの名前が含まれている必要があります。

 

コードは、次のようになります。

 

5.    コマンド・ハンドラーをコンパイルしてチェックインします。

6.    Webアプリケーションとしてフレームワークを実行します。

7.    切り替えをテストします。コマンド・ハンドラーで課を選択して[詳細]ボタンをクリックすると、インスタンス・リストに課の社員のデータが記載されたEmployeesビジネス・オブジェクトが表示されます。リストの先頭の社員の詳細が表示されます。


  

8.    アプリケーションを終了します。