Boost」など、さまざまなカンファレンスを企画・運営しています。BOOKS(コードジン・ブックス)は、CodeZineの連載からカットアップした、開発現場の課題解決に役立つ書籍シリーズです。本連載では、各画面をMultiViewコントロール「mtvw」のViewにより実現し、各Viewには、前後のViewへ移動する目的のButtonコントロールを配置しています。btnBackDirect*1)名寄せ処理画面を呼び出した元のメニュー画面に戻る。*2)名寄せ処理を実行した上、vwTargetに戻る。以降、vwDirect/vwVerifyビュー内の表をそれぞれ「指示表」/「確認表」と呼ぶことにしますが、これらはPreLoadイベント内で用意しないといけません。用意するタイミングは、それぞれbtnDirect/btnVerifyクリック時ですが、PreLoadイベントはボタンのクリックイベントの前に発生してしまいます。画面遷移とイベントの発生順PreLoadイベントでは、ActiveViewIndexにより移動前のViewは把握できますが、クリックされたButtonを特定できないため、移動後のViewが把握できません。どのViewに移動してもいいように、各Viewでのコントロールは用意しておきます。実際には不要なエラーチェックも行う必要があるため、PreLoad後に発生する「戻る」ボタンのクリックイベントでは、無条件にエラーメッセージをクリアします。イベントに応じたSession変数の扱い画面切り替え時に受け渡すデータとして「名寄せ対象会員IDの配列(aryMemberID())」と「動的に生成したTableコントロール(tblUnify)」とがあります。これらは、Session変数(Session("aryMemberID()")とSession("tblUnify"))を使って引き継ぎます。すべてのボタンクリックに先立って発生するPreLoadイベント内では、上記のSession変数の有無に応じた処理をするため、設定/クリアするタイミングを整理しておきます。読み込んで処理する*3)GridViewを走査し、チェックされた会員IDを配列として設定。*4)選択された会員IDを基に、会員テーブルから作成して設定。NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Technologies。執筆コミュニティ「WINGSプロジェクト」代表。