ステップ4. 仮想クリップボードを使用して切り替え履歴を記録する
このステップでは、仮想クリップボードを使用して切り替え履歴を記録し、エンド・ユーザーが切り替えを開始したオブジェクトに戻れるようにします。
仮想クリップボードを使用するために最も効率がよいのは、ポストされるアイテムに標準化された命名規則を用意することです。この演習では、次の規則を使用して切り替え履歴を格納します。
ID1 | SWITCH_HISTORY |
ID2 | 対象のビジネス・オブジェクト名 |
ID3 | 対象のコマンド名 |
ID4 | OBJECT_NAMEまたはCOMMAND_NAME |
FromAValue | <オブジェクトまたはコマンド名> |
つまり、切り替え履歴テーブルをクリップボードに格納します。最初のキーまたはIDは、このIDを持つすべてのレコードが切り替え履歴に関連することを示すコードSWITCH_HISTORYです。
ID2およびID3には、切り替え先となるビジネス・オブジェクトとコマンドがそれぞれ含まれます。ID4には、切り替え元が含まれます。したがって、仮想クリップボードに次の2つのレコードを追加する必要があります。1つは、ID4がOBJECT_NAME(ビジネス・オブジェクト)であるレコード、もう1つはID4がCOMMAND_NAME(コマンド)であるレコードです。
1. Sectionsの詳細コマンド・ハンドラーの[ソース]タブを表示します。
2. PHBN_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. コマンド・ハンドラーを閉じます。