フック一覧 OpenALcl (画面フック) | 前の画面フック 次の画面フック |
VB C# ALL プログラミング言語によるフィルタ (ここで選んだ言語で選別された説明や図だけが表示されます)
この画面フックメソッドは、主にアプリフレームと呼ばれる画面アプリのための上位フレームワークを設計する方々がお使いになるものです。一般のアプリ開発者の方々は、上位フレームワーク設計者から示された情報があれば、必ずしもここの内容を詳細に知る必要はありません。
◇ 役割 (この画面フックメソッドに委託されている処理)
この画面アプリ全体にかかわるファイルまたはデータベースのオープンなどの開設処理 (たとえばトランザクションファイルに関する開設処理) を行う。
あらかじめ処理対象レコード群が決まっているような場合は、ここでオープンなどの開設処理を行い、適当な変数 (上図の灰色の矢印) がそれを指し示すように環境設定するのがよい。そうでない場合、この環境設定処理は、画面フックメソッド SelectFh または SelectExec などが行うように先送りすることになる。
◇ 配置 (ツーピーススタイルの場合にこの画面フックメソッドをどこに配置できるか)
セントラルピースに配置するか、または配置しない。ローカルピースに配置することは禁止されている。
◇ 代表的な書き方 (詳しい構文はフックメソッドの書き方を参照)
VB での書き方:
Friend Function OpenALcl(パラメタ宣言列) As Boolean
または
Friend Function 画面略称_OpenALcl(パラメタ宣言列) As Boolean
C# での書き方:
internal bool OpenALcl(パラメタ宣言列)
または
internal bool 画面略称_OpenALcl(パラメタ宣言列)
Java での書き方:
boolean OpenALcl(パラメタ宣言列)
または
boolean 画面略称_OpenALcl(パラメタ宣言列)
なお、フック名としては、OpenALcl の他に開設現地後を用いることができる。
◇ 呼び出される契機 (以下が切っ掛けとなりこのフックメソッドが呼び出される)
画面を初めて表示した直後 (1 回だけ呼び出される)。 項目フックメソッド OpenALcl よりも前に呼び出される。 画面フックメソッド Open および項目フックメソッド Open よりも後に呼び出される。
◇ 戻り値の意味とデフォルト動作 (戻り値による FormBase への伝言)
(戻り値に意味なし)
デフォルト動作: なし。
定数 FormBase.OPENALCL_Allow および FormBase.OPENALCL_Deny は、意味がなくなった。
◇ 代行メッセージ (処理の流れに応じて発せられるメッセージ; カスタマイズ可能)
(関係する代行メッセージなし)
◇ 使用上のヒントと注意事項
特定の項目固有の開設処理は、この画面フックメソッドではなく、項目フックメソッド Open, または OpenALcl で で行ってください。
ローカル側で行う開設処理は、この画面フックメソッドではなく、画面フックメソッド Open,または項目フックメソッド Open で行ってください。
◇ 関連事項
開設処理に関係するフックメソッドには、 画面フックメソッド Open,項目フックメソッド Open,画面フックメソッド OpenALcl (本フックメソッド),項目フックメソッド OpenALcl の四つがある。
この画面フックメソッドは、画面フックメソッド CloseBLcl と対をなす。
初期設定の機能を果たす画面フックメソッドに BeginPrgALcl があるが、この画面フックメソッドの方が後に呼び出される。
◇ 使用例
' 受注トランザクションテーブルをオープンする。 Friend Function 開設現地後(ByVal fB As FormBase) As Boolean メインレコード = New JutyuTable(fB.MyBinPath + "JUTYU.txt") 受注レコード = CType(メインレコード, JutyuTable) 明細レコード = New JutyuMeisaiTable(fB.MyBinPath + "JUTYUDE.txt") 受注明細レコード = CType(明細レコード, JutyuMeisaiTable) ' Dim メイン戻り値 As Integer = メインレコード.Connect() Dim 明細戻り値 As Integer = 明細レコード.Connect() ' Return FormBase.OPENALCL_Allow End Function ' 開設現地後
// 受注トランザクションテーブルをオープンする。 internal bool 開設現地後( FormBase fB ) { メインレコード = new JutyuTable(fB.MyBinPath + "JUTYU.txt"); 受注レコード = (JutyuTable)メインレコード; 明細レコード = new JutyuMeisaiTable(fB.MyBinPath + "JUTYUDE.txt"); 受注明細レコード = (JutyuMeisaiTable)明細レコード; // int メイン戻り値 = メインレコード.Connect(); int 明細戻り値 = 明細レコード.Connect(); // return FormBase.OPENALCL_Allow; } // 開設現地後
// 受注トランザクションテーブルをオープンする。 boolean 開設現地後( FormBase fB ) { メインレコード = new JutyuTable(fB.MyBinPath + "JUTYU.txt"); 受注レコード = (JutyuTable) メインレコード; 明細レコード = new JutyuMeisaiTable(fB.MyBinPath + "JUTYUDE.txt"); 受注明細レコード = (JutyuMeisaiTable) 明細レコード; // int メイン戻り値 = メインレコード.Connect(); int 明細戻り値 = 明細レコード.Connect(); // return FormBase.OPENALCL_Allow; } // 開設現地後