You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

[ |../../index.htm#lansa/vlftutorials_0130.htm]
Visual LANSA フレームワーク ガイド > チュートリアル > VLF-WIN アプリケーションのチュートリアル > VLF012WIN - 切り替えサービスおよび仮想クリップボードを使用したナビゲーション制御 > ステップ 5. 切り替え履歴を使用して元のビジネス・オブジェクトに戻る

ステップ 5. 切り替え履歴を使用して元のビジネス・オブジェクトに戻る

このステップでは、切り替え履歴を使用して、エンドユーザーが切り替えを行った元の部門ビジネス・オブジェクトに戻れるようにします。
1.   社員の詳細コマンド・ハンドラー iiiCOM03 を開きます。
2.   [コントロール] タブを表示し、プッシュ・ボタンを [保存] ボタンの下にドラッグします。
3.   ボタンのキャプション (Caption) は戻るにします。
4.   ボタンの名前 (Name) を BACK_BTN にします。
5.   ボタンに Click イベントを追加します。
6.   このクリック・イベントに、次のコードを追加し、ユーザーがボタンをクリックしたときに元のビジネス・オブジェクトに戻されるようにします。
define field(#ff_objnme) TYPE(*CHAR) LENGTH(32) DESC('Object Name')
define field(#ff_cmdnme) TYPE(*CHAR) LENGTH(32) DESC('Command Name')

  • Determine the business object name to switch to
    #avFrameworkManager.avrestorevalue WithID1(SWITCH_HISTORY) WithID2(#com_owner.Avobjecttype) WithID3(#com_owner.Avcommandtype) WithID4(OBJECT_NAME) ToAValue(#ff_objnme)
  • Determine which command within the business object to switch to
    #avFrameworkManager.avrestorevalue WithID1(SWITCH_HISTORY) WithID2(#com_owner.Avobjecttype) WithID3(#com_owner.Avcommandtype) WithID4(COMMAND_NAME) ToAValue(#ff_cmdnme)
  • Perform the switch
    #avframeworkmanager.avSwitch To(BUSINESSOBJECT) NAMED(#ff_objnme) EXECUTE(#ff_cmdnme)  Caller(#com_owner)
     
  • ユーザーを切り替えを行った元のコンポーネントに戻す場合は、仮想クリップボードで切り替え履歴を参照する必要があります。  戻り先となるビジネス・オブジェクトとコマンドの両方を取得する必要があります。  このためには、仮想クリプボードから 2 つの値を取得する必要があります。
  • コードで、まず OBJECT_NAME (ビジネス・オブジェクトの値) を、次に COMMAND_NAME (コマンドの値) を取得します。 
  • コンポ―ネント名はハード・コーディングしないようにしてください。avobjecttype (ビジネス・オブジェジェクト名) および avcommandtype (コマンド名) が WithID2 パラメータと WithID3 パラメータに対する値として使用されているのはこのためです。
  • これら 2 つの値を取得している場合は、もう 1 度切り替えを実行して以前のコンポーネントに戻ることができます。
  • 上記のコードでは、取得されたビジネス・オブジェクトは #ff_objnme フィールドに、取得されたコマンドは #ff_cmdnme フィールドに入りました。  これで、以前に学習したものと同じテクニックを使用するだけで、ビジネス・オブジェクトに切り替え、コマンドを実行できるようになりました。

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

 
7.   コマンド・ハンドラーをコンパイルします。
 
これで、切り替え履歴をテストする準備が整いました。
8.   フレームワークで、"部門"ビジネス・オブジェクトから 1 つの部門を選択します。
9.   部門の詳細コマンド・ハンドラーから 1 人の社員を選択します。
10.   [詳細] ボタンをクリックして、選択した社員の詳細を表示します。
11.   "社員" ビジネス・オブジェクトの詳細コマンド・ハンドラーで、[戻る] ボタンをクリックして "部門" ビジネス・オブジェクトに戻ります。

 
 
[ |../../index.htm#lansa/vlftutorials_0130.htm]

  • No labels