このステップでは、仮想クリップボードを使用して切り替え履歴を記録し、エンドユーザーが切り替えを開始したオブジェクトに戻れるようにします。
仮想クリップボードを使用するために最も効率がよいのは、ポストされるアイテムに標準化された命名規則を用意することです。このステップでは、次の規則を使用して切り替え履歴を格納します。
ID1 |
SWITCH_HISTORY |
ID2 |
対象のビジネス・オブジェクト名 |
ID3 |
対象のコマンド名 |
ID4 |
OBJECT_NAMEまたはCOMMAND_NAME |
FromAValue |
<オブジェクトまたはコマンド名> |
これで切り替え履歴のテーブルがクリップボードに格納されます。 最初のキー (ID) は SWITCH_HISTORY で、この ID を持つレコードはすべて切り替え履歴に関連していることを示します。
ID2 および ID3 には、切り替え先となるビジネス・オブジェクトとコマンドが含まれています。 ID4 には、切り替え元が格納されます。 したがって、仮想クリップボードに次の 2 つのレコードを追加する必要があります。1 つは、ID4 が OBJECT_NAME (ビジネス・オブジェクト) 、もう 1 つは ID4 が COMMAND_NAME (コマンド) です。
1. 部門の詳細コマンド・ハンドラーの [ソース] タブを表示します。
2. Button_1.Click イベントの avSwitch コマンドの前に、次のコードを記述して適切なレコードを切り替え履歴に追加します。
* Save to clipboard return list
#avframeworkmanager.avsavevalue WithID1(SWITCH_HISTORY) WithID2(EMPLOYEES) WithID3(DETAILS) WithID4(OBJECT_NAME) FromAValue(#com_owner.Avobjecttype)
#avframeworkmanager.avsavevalue WithID1(SWITCH_HISTORY) WithID2(EMPLOYEES) WithID3(DETAILS) WithID4(COMMAND_NAME) FromAValue(#com_owner.avcommandtype)
WithID2() パラメータにはビジネス・オブジェクト名を使用します。
FromAValue パラメータを使用して、実際のビジネス・オブジェクト名とコマンド名がクリップボードに配置されることを確認してください。 avobjecttype を使用して現在のビジネス・オブジェクト名を取得し、avcommandtype を使用して現在のコマンド名を取得します。 これらの値はハード・コーディングしないでください。
コードは次のようになります。
3. コマンド・ハンドラーをコンパイルします。
4. コマンド・ハンドラーを閉じます。