クラス BizLogic_TABLE
java.lang.Object
org.opengion.fukurou.business.AbstractBizLogic
org.opengion.fukurou.business.BizLogic_TABLE
配列型テーブルモデルをメインカーソルとした業務ロジックの構造を定義します。
配列型テーブルモデルについては、setTable( ArrayTableModel )によりセットします。
配列型テーブルモデルが定義されていない場合、エラーとなります。
このクラスでは、以下に示すメソッドが呼び出されるタイミングのみを定義しています。
メソッドの中身については、サブクラスでオーバーライドし実装して下さい。
処理が途中で中断される条件は、以下の3つです。
①各メソッドの戻り値がfalseの場合
②チェックメソッド(chk***())が全ての行で実行された後、エラーメッセージに"エラー"が含まれている場合
③実行時エラーが発生した場合
fstchk() 変更区分に関わらず 処理を始める前に呼び出し
8.0.2.0 (2021/11/30) 行単位ロジックチェックは廃止
useLoop == true
befchk( int row ) 変更区分に関わらず 各行について呼び出し(insert,modify,deleteの前に呼び出し)
inschk( int row ) 変更区分が"A"の場合 各行について呼び出し
modchk( int row ) 変更区分が"C"の場合 各行について呼び出し
delchk( int row ) 変更区分が"D"の場合 各行について呼び出し
allchk( int row ) 変更区分に関わらず 各行について呼び出し(insert,modify,deleteの後に呼び出し)
first() 変更区分に関わらず 最初の行でのみ呼び出し
useLoop == true
befall( int row ) 変更区分に関わらず 各行について呼び出し(insert,modify,deleteの前に呼び出し)
insert( int row ) 変更区分が"A"の場合 各行について呼び出し
modify( int row ) 変更区分が"C"の場合 各行について呼び出し
delete( int row ) 変更区分が"D"の場合 各行について呼び出し
allrow( int row ) 変更区分に関わらず 各行について呼び出し(insert,modify,deleteの後に呼び出し)
last() 変更区分に関わらず 最後の行でのみ呼び出し
※ インデックス(row)とは、このArrayTableModel に持つ vals 配列の行のインデックスです。
よって、オリジナルのDBTableModelの行番号ではありません。
8.0.2.0 (2021/11/30) 行単位ロジックチェックは廃止。
befchk,inschk,modchk,delchk,allchk
必要であれば、fstchk() で、DataModel を取得して処理してください。
- 変更履歴:
- 5.1.1.0 (2009/12/01) 新規作成
- 機能分類
- 業務ロジック
- 導入されたバージョン:
- JDK1.6,
-
フィールドの概要
-
コンストラクタの概要
コンストラクタ -
メソッドの概要
修飾子とタイプメソッド説明protected boolean
allrow
(int row) メインカーソルの各行(変更区分の各処理の後)で呼ばれるロジックを定義します。protected boolean
befall
(int row) メインカーソルの各行(変更区分の各処理の前)で呼ばれるロジックを定義します。protected boolean
delete
(int row) メインカーソルの各行(変更区分="D")で呼ばれるロジックを定義します。protected boolean
first()
メインカーソルの一番初めで呼ばれるロジックを定義します。protected boolean
fstchk()
メインカーソルの一番初めで呼ばれるチェックロジックを定義します。protected void
init()
処理のメインロジックの前処理を記述します。protected boolean
insert
(int row) メインカーソルの各行(変更区分="A")で呼ばれるロジックを定義します。(package private) boolean
このクラスは、テーブルモデルが外部から指定されている必要があります。protected boolean
last()
メインカーソルの一番最後で呼ばれるロジックを定義します。protected boolean
main()
処理のメインロジックを記述します。protected boolean
modify
(int row) メインカーソルの各行(変更区分="C")で呼ばれるロジックを定義します。protected final void
setUseLoop
(boolean useLoop) ループを回すかどうかを指定します。クラスから継承されたメソッド org.opengion.fukurou.business.AbstractBizLogic
call, debug, error, error, exec, exist, exist, exist, getDebugMsg, getErrMsg, getKekka, getNames, getReturn, getReturnMap, getTable, getTransaction, getValues, isDebug, must, querySQL, rtn, seq, set, set, set, setDbid, setDebug, setKeys, setLoader, setParentPgId, setRtnMap, setTable, setTransaction, setUserId, setVals, sql, str2dblVals, var, var, var, var, varKeys
-
コンストラクタの詳細
-
BizLogic_TABLE
public BizLogic_TABLE()デフォルトコンストラクター- 変更履歴:
- 6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.
-
-
メソッドの詳細
-
init
処理のメインロジックの前処理を記述します。 (ここでは何もしません) このメソッド自体は、protected属性であるため、サブクラスから直接参照することができます。 但し、これは、各業務ロジックで直接参照することを想定したものではなく、BizLogicの メイン構造を拡張するサブクラスを定義する際に使用することを想定しています。 (この想定がなければ、本来は、package privateにすべきです) このため、業務ロジックを各実装クラスでは直接参照しないで下さい。- 定義:
init
クラス内AbstractBizLogic
-
main
処理のメインロジックを記述します。 このメソッド自体は、protected属性であるため、サブクラスから直接参照することができます。 但し、これは、各業務ロジックで直接参照することを想定したものではなく、BizLogicの メイン構造を拡張するサブクラスを定義する際に使用することを想定しています。 (この想定がなければ、本来は、package privateにすべきです) このため、業務ロジックを各実装クラスでは直接参照しないで下さい。- 定義:
main
クラス内AbstractBizLogic
- 戻り値:
- 処理が正常終了したか
- 変更履歴:
- 5.1.8.0 (2010/07/01) first,lastは行ループの中で呼び出し, 5.6.7.0 (2013/07/27) Exception を throw するとき、一旦、errMsg 変数にセットします。, 6.7.9.1 (2017/05/19) protected ArrayTableModel を、private DataModel に変更します。, 6.8.5.0 (2018/01/09) first(),last() をループから出して、ループを回すかどうかを引数で指定します。, 8.0.2.0 (2021/11/30) 行単位ロジックチェックは廃止。
-
isRequireTable
boolean isRequireTable()このクラスは、テーブルモデルが外部から指定されている必要があります。 このメソッド自体は、protected属性であるため、サブクラスから直接参照することができます。 但し、これは、各業務ロジックで直接参照することを想定したものではなく、BizLogicの メイン構造を拡張するサブクラスを定義する際に使用することを想定しています。 (この想定がなければ、本来は、package privateにすべきです) このため、業務ロジックを各実装クラスでは直接参照しないで下さい。- オーバーライド:
isRequireTable
クラス内AbstractBizLogic
- 戻り値:
- テーブルモデルが外部から指定されている必要があるかどうか(常にtrue)
- 関連項目:
- 変更履歴:
- 8.0.2.0 (2021/11/30) protected → default 変更(サブクラスからのアクセスはない)
-
fstchk
メインカーソルの一番初めで呼ばれるチェックロジックを定義します。 ここでは何も実装されていません。- 戻り値:
- 処理が正常終了したか
-
first
メインカーソルの一番初めで呼ばれるロジックを定義します。 ここでは何も実装されていません。- 戻り値:
- 処理が正常終了したか
-
last
メインカーソルの一番最後で呼ばれるロジックを定義します。 ここでは何も実装されていません。- 戻り値:
- 処理が正常終了したか
-
befall
メインカーソルの各行(変更区分の各処理の前)で呼ばれるロジックを定義します。 ここでは何も実装されていません。- パラメータ:
row
- 行番号(インデックス)- 戻り値:
- 処理が正常終了したか
-
allrow
メインカーソルの各行(変更区分の各処理の後)で呼ばれるロジックを定義します。 ここでは何も実装されていません。- パラメータ:
row
- 行番号(インデックス)- 戻り値:
- 処理が正常終了したか
-
insert
メインカーソルの各行(変更区分="A")で呼ばれるロジックを定義します。 ここでは何も実装されていません。- パラメータ:
row
- 行番号(インデックス)- 戻り値:
- 処理が正常終了したか
-
modify
メインカーソルの各行(変更区分="C")で呼ばれるロジックを定義します。 ここでは何も実装されていません。- パラメータ:
row
- 行番号(インデックス)- 戻り値:
- 処理が正常終了したか
-
delete
メインカーソルの各行(変更区分="D")で呼ばれるロジックを定義します。 ここでは何も実装されていません。- パラメータ:
row
- 行番号(インデックス)- 戻り値:
- 処理が正常終了したか
-
setUseLoop
ループを回すかどうかを指定します。 ループ処理を使用しない場合の処理速度向上のためのフラグです。 ループ処理とは、引数に row番号を指定する関数です。 初期値は、true(ループを回す) です。 false を指定すると、それらのメソッドは使用されず、fstchk()、first()、last() のみ呼び出されます。 init() と main() は、AbstractBizLogic#exec() から呼ばれるため、通常通り呼び出されます。- パラメータ:
useLoop
- ループを回すかどうか- 変更履歴:
- 6.8.5.0 (2018/01/09) ループを回すかどうかを引数で指定します。
-