パッケージ org.opengion.fukurou.business

# クラス AbstractBizLogic

java.lang.Object
org.opengion.fukurou.business.AbstractBizLogic

直系の既知のサブクラス:
  `BizLogic_ENTRY`, `BizLogic_TABLE`

public abstract class AbstractBizLogic extends Object
業務ﾛｼﾞｯｸを処理するために必要な共通ﾒｿｯﾄﾞの実行を行っている抽象ｸﾗｽです｡ ﾒｲﾝﾛｼﾞｯｸについては､各ｻﾌﾞｸﾗｽで実装する必要があります｡

変更履歴:
  5.1.1.0 (2009/12/01) 新規作成
機能分類
  業務ﾛｼﾞｯｸ
導入されたバージョン:
  JDK1.6,

- ## フィールドの概要

  フィールド
  修飾子とタイプ
  フィールド
  説明
  `protected DBFunctionName`
  `dbName`
  ﾃﾞｰﾀﾍﾞｰｽﾌｧﾝｸｼｮﾝ
  `protected static final int`
  `EXCEPTION`
  ｴﾗｰﾒｯｾｰｼﾞをｾｯﾄする際に使用します 8
  `protected static final int`
  `NG`
  ｴﾗｰﾒｯｾｰｼﾞをｾｯﾄする際に使用します 2
  `protected static final int`
  `OK`
  ｴﾗｰﾒｯｾｰｼﾞをｾｯﾄする際に使用します 0
  `protected static final int`
  `ORCL_ERR`
  ｴﾗｰﾒｯｾｰｼﾞをｾｯﾄする際に使用します 9
  `(package private) int`
  `row`
  配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙの現在の処理行 行番号自体は､protected属性であるため､ｻﾌﾞｸﾗｽから直接参照することができます｡ 但し､これは､各業務ﾛｼﾞｯｸで直接参照することを想定したものではなく､BizLogicの ﾒｲﾝ構造を拡張するｻﾌﾞｸﾗｽを定義する際に使用することを想定しています｡ (この想定がなければ､本来は､package privateにすべきです) このため､業務ﾛｼﾞｯｸを各実装ｸﾗｽでは直接参照しないで下さい｡ ※ ｲﾝﾃﾞｯｸｽ(row)とは､このArrayTableModel に持つ vals 配列の行のｲﾝﾃﾞｯｸｽです｡ よって､ｵﾘｼﾞﾅﾙのDBTableModelの行番号ではありません｡
  `protected static final int`
  `WARNING`
  ｴﾗｰﾒｯｾｰｼﾞをｾｯﾄする際に使用します 1

- ## コンストラクタの概要

  コンストラクタ
  修飾子
  コンストラクタ
  説明
  `protected`
  `AbstractBizLogic()`
  ﾃﾞﾌｫﾙﾄｺﾝｽﾄﾗｸﾀｰ

- ## メソッドの概要

  修飾子とタイプ
  メソッド
  説明
  `protected final boolean`
  `call(String subLogicName, String key, String val)`
  子ﾛｼﾞｯｸを実行します｡ 実行する子ﾛｼﾞｯｸの呼び出しは､親ｸﾗｽと同じｿｰｽﾊﾟｽ､ｸﾗｽﾊﾟｽで呼び出しされます｡ 子ﾛｼﾞｯｸに渡す引数には､{@XXXX}形式及び[XXXX]形式の変数を使用することができます｡ この場合の値は､引数で指定された､配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙの行に対応する値になります｡ また､子ﾛｼﾞｯｸの戻り値は､val("RETURN")で取得することができます｡
  `protected final void`
  `debug(String msg)`
  ﾃﾞﾊﾞｯｸﾞﾒｯｾｰｼﾞを追加します｡
  `protected final void`
  `error(int rw, int kekka, String id, String... args)`
  行指定でｴﾗｰﾒｯｾｰｼﾞを追加します｡ ｴﾗｰﾒｯｾｰｼﾞの引数には､{@XXXX}形式及び[XXXX]形式の変数を使用することができます｡
  `protected final void`
  `error(int kekka, String id, String... args)`
  ｴﾗｰﾒｯｾｰｼﾞを追加します｡ ｴﾗｰﾒｯｾｰｼﾞの引数には､{@XXXX}形式及び[XXXX]形式の変数を使用することができます｡
  `(package private) boolean`
  `exec()`
  処理を実行します｡ 処理の方法は､main()ﾒｿｯﾄﾞにより定義されます｡ 実装ｸﾗｽで発生した全ての例外は､Throwableｵﾌﾞｼﾞｪｸﾄとしてｽﾛｰされます｡ 呼び出し元では､例外を確実にcatchして､commit,rollbackを行ってください｡
  `protected final boolean`
  `exist(String type, String tblId, String ns, String vs)`
  ﾏｽﾀﾁｪｯｸを行います｡
  `protected final boolean`
  `exist(String type, String tblId, String ns, String vs, String conNs, String conVs)`
  ﾏｽﾀﾁｪｯｸを行います｡ 引数に指定されたﾃｰﾌﾞﾙ名､及び条件句を生成するためのｶﾗﾑ､値から 件数を取得し､typeに応じて件数ﾁｪｯｸを行います｡ (ｶﾗﾑ､値には､CSV形式で複数指定することができます) type=true 存在する場合true 存在しない場合false type=false 存在する場合false 存在しない場合true type=one 1件以内 true 2件以上 false 必須ﾁｪｯｸの引数には､{@XXXX}形式及び[XXXX]形式の変数を使用することができます｡ また､固定値ｶﾗﾑ､値にも条件となるｶﾗﾑ及び値を指定することができますが､ ここで指定されたｶﾗﾑは､ｴﾗｰﾒｯｾｰｼﾞ表示時にｶﾗﾑ､値が画面に表示されません｡
  `protected final boolean`
  `exist(String type, String tblId, String ns, String vs, String conNs, String conVs, boolean isErrThrow)`
  ﾏｽﾀﾁｪｯｸを行います｡ 引数に指定されたﾃｰﾌﾞﾙ名､及び条件句を生成するためのｶﾗﾑ､値から 件数を取得し､typeに応じて件数ﾁｪｯｸを行います｡ (ｶﾗﾑ､値には､CSV形式で複数指定することができます) type=true 存在する場合true 存在しない場合false type=false 存在する場合false 存在しない場合true type=one 1件以内 true 2件以上 false 必須ﾁｪｯｸの引数には､{@XXXX}形式及び[XXXX]形式の変数を使用することができます｡ また､固定値ｶﾗﾑ､値にも条件となるｶﾗﾑ及び値を指定することができますが､ ここで指定されたｶﾗﾑは､ｴﾗｰﾒｯｾｰｼﾞ表示時にｶﾗﾑ､値が画面に表示されません｡ isErrThrow は､ｴﾗｰが発生した場合に､ｴﾗｰﾒｯｾｰｼﾞ（ErrorMessage）に書き込むかどうかを指定します｡ 基本は､互換性を考慮し､true(書き込む)です｡ false にするｹｰｽは､存在ﾁｪｯｸを行い､あれば更新､なければ追加 など後続処理を行いたい場合に使います｡
  `(package private) String`
  `getDebugMsg()`
  ﾃﾞﾊﾞｯｸﾞﾒｯｾｰｼﾞを取得します｡
  `(package private) ErrorMessage`
  `getErrMsg()`
  ｴﾗｰﾒｯｾｰｼﾞｵﾌﾞｼﾞｪｸﾄを返します｡
  `(package private) int`
  `getKekka()`
  結果ｽﾃｰﾀｽを返します｡
  `protected final String[]`
  `getNames()`
  ﾃｰﾌﾞﾙのｶﾗﾑ名の一覧を配列形式で返します｡
  `(package private) String`
  `getReturn()`
  業務ﾛｼﾞｯｸの戻り値を返します｡
  `protected final Map<String,String>`
  `getReturnMap()`
  変数に関連付けた値を､返します｡ これは､BizLogicから､呼び出し元のJSPに､RETURN 変数以外の {@XXXX} ﾊﾟﾗﾒｰﾀを返します｡ 既存のｱﾄﾘﾋﾞｭｰﾄがあれば､上書きされます｡
  `protected DataModel<String>`
  `getTable()`
  配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙを取得します｡
  `protected Transaction`
  `getTransaction()`
  DBのﾄﾗﾝｻﾞｸｼｮﾝｵﾌﾞｼﾞｪｸﾄを返します｡ (全てのDB処理は､1つのﾄﾗﾝｻﾞｸｼｮﾝとして処理されます｡)
  `protected String[][]`
  `getValues(String... clmNms)`
  指定のｶﾗﾑ名引数に相当するﾃﾞｰﾀを２重配列で返します｡
  `protected abstract void`
  `init()`
  処理のﾒｲﾝﾛｼﾞｯｸの前処理を記述します｡ このﾒｿｯﾄﾞ自体は､protected属性であるため､ｻﾌﾞｸﾗｽから直接参照することができます｡ 但し､これは､各業務ﾛｼﾞｯｸで直接参照することを想定したものではなく､BizLogicの ﾒｲﾝ構造を拡張するｻﾌﾞｸﾗｽを定義する際に使用することを想定しています｡ (この想定がなければ､本来は､package privateにすべきです) このため､業務ﾛｼﾞｯｸを各実装ｸﾗｽでは直接参照しないで下さい｡
  `protected final boolean`
  `isDebug()`
  ﾃﾞﾊﾞｯｸﾞﾓｰﾄﾞかどうかを返します｡
  `(package private) boolean`
  `isRequireTable()`
  業務ﾛｼﾞｯｸを実行するために､ﾃｰﾌﾞﾙﾓﾃﾞﾙが外部からｾｯﾄされる必要があるか を返します｡ 必須である場合､その業務ﾛｼﾞｯｸは､子ﾛｼﾞｯｸとして呼び出すことができません｡ これは､子ﾛｼﾞｯｸ呼び出し時は､ﾃｰﾌﾞﾙﾓﾃﾞﾙがｾｯﾄされないためです｡ (このｸﾗｽは､ﾃｰﾌﾞﾙﾓﾃﾞﾙが外部から指定されている必要はありません｡) このﾒｿｯﾄﾞ自体は､protected属性であるため､ｻﾌﾞｸﾗｽから直接参照することができます｡ 但し､これは､各業務ﾛｼﾞｯｸで直接参照することを想定したものではなく､BizLogicの ﾒｲﾝ構造を拡張するｻﾌﾞｸﾗｽを定義する際に使用することを想定しています｡ (この想定がなければ､本来は､package privateにすべきです) このため､業務ﾛｼﾞｯｸを各実装ｸﾗｽでは直接参照しないで下さい｡
  `protected abstract boolean`
  `main()`
  処理のﾒｲﾝﾛｼﾞｯｸを記述します｡ このﾒｿｯﾄﾞ自体は､protected属性であるため､ｻﾌﾞｸﾗｽから直接参照することができます｡ 但し､これは､各業務ﾛｼﾞｯｸで直接参照することを想定したものではなく､BizLogicの ﾒｲﾝ構造を拡張するｻﾌﾞｸﾗｽを定義する際に使用することを想定しています｡ (この想定がなければ､本来は､package privateにすべきです) このため､業務ﾛｼﾞｯｸを各実装ｸﾗｽでは直接参照しないで下さい｡
  `protected final boolean`
  `must(String cs)`
  ﾊﾟﾗﾒｰﾀｰの必須ﾁｪｯｸを行います｡ ｷｰは､CSV形式で複数指定することができます｡
  `protected void`
  `querySQL(String sq, Consumer<String[]> call)`
  検索用SQLを実行して、Consumer#accept に検索結果の配列を繰り返しセットします｡ 内部でResultSetValue のカーソルを回すため、大量のデータについて 順次処理する場合に使用します。
  `protected final void`
  `rtn(String rtn)`
  業務ﾛｼﾞｯｸの戻り値をｾｯﾄします｡
  `protected final int`
  `seq(String seqName)`
  ｼｰｹﾝｽ名よりｼｰｹﾝｽｵﾌﾞｼﾞｪｸﾄを検索し､次の値を取り出します｡ DBに対するｼｰｹﾝｽｵﾌﾞｼﾞｪｸﾄは予め作成されている必要があります｡ また､MySQLの場合は､ｼｰｹﾝｽｵﾌﾞｼﾞｪｸﾄが実装されていないため､ 内部的には､引数のｼｰｹﾝｽ名と同じ名前のﾃｰﾌﾞﾙから､Integer型の "SEQID"という項目名を検索することにより､ｼｰｹﾝｽをｴﾐｭﾚｰﾄしています｡
  `protected final void`
  `set(String key, double val)`
  指定されたｷｰで値(double型)を登録します｡ ﾊﾟﾗﾒｰﾀｰとしてこの業務ﾛｼﾞｯｸが呼ばれる際の引数となっている場合は､ ｴﾗｰとなります｡
  `protected final void`
  `set(String key, int val)`
  指定されたｷｰで値(int型)を登録します｡ ﾊﾟﾗﾒｰﾀｰとしてこの業務ﾛｼﾞｯｸが呼ばれる際の引数となっている場合は､ ｴﾗｰとなります｡
  `protected final void`
  `set(String key, String val)`
  指定されたｷｰで値を登録します｡ ﾊﾟﾗﾒｰﾀｰとしてこの業務ﾛｼﾞｯｸが呼ばれる際の引数となっている場合は､ ｴﾗｰとなります｡
  `(package private) void`
  `setDbid(String id)`
  接続先IDを指定します｡ このﾒｿｯﾄﾞは､1度しかｾｯﾄすることができません｡2回以上呼び出しするとｴﾗｰになります｡
  `(package private) void`
  `setDebug()`
  ﾃﾞﾊﾞｯｸﾞﾓｰﾄﾞにします｡
  `(package private) void`
  `setKeys(String... ks)`
  固定値のｷｰ配列を指定します｡ このﾒｿｯﾄﾞは､1度しかｾｯﾄすることができません｡2回以上呼び出しするとｴﾗｰになります｡
  `(package private) void`
  `setLoader(HybsLoader ldr)`
  業務ﾛｼﾞｯｸのｸﾗｽをﾛｰﾄﾞするためのｸﾗｽﾛｰﾀﾞｰをｾｯﾄします｡ このﾒｿｯﾄﾞは､1度しかｾｯﾄすることができません｡2回以上呼び出しするとｴﾗｰになります｡
  `(package private) void`
  `setParentPgId(String id)`
  親(呼び出し)PGIDを指定します｡
  `protected final void`
  `setRtnMap(String key, String val)`
  変数に関連付けた値を､返します｡ これは､BizLogicから､呼び出し元のJSPに､RETURN 変数以外の {@XXXX} ﾊﾟﾗﾒｰﾀを返します｡ 既存のｱﾄﾘﾋﾞｭｰﾄがあれば､上書きされます｡
  `(package private) void`
  `setTable(DataModel<String> tbl)`
  配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙをｾｯﾄします｡ このﾒｿｯﾄﾞは､1度しかｾｯﾄすることができません｡2回以上呼び出しするとｴﾗｰになります｡
  `(package private) void`
  `setTransaction(Transaction tr)`
  DBのﾄﾗﾝｻﾞｸｼｮﾝｵﾌﾞｼﾞｪｸﾄを指定します｡ 各実装ｸﾗｽでは､ｺﾈｸｼｮﾝのcommit,rollbackは行われません｡ (全てのDB処理は､1つのﾄﾗﾝｻﾞｸｼｮﾝとして処理されます｡) このため､commit,rollbackは呼び出し元で行う必要があります｡ このﾒｿｯﾄﾞは､1度しかｾｯﾄすることができません｡2回以上呼び出しするとｴﾗｰになります｡
  `(package private) void`
  `setUserId(String id)`
  この処理の実行ﾕｰｻﾞｰIDを指定します｡
  `(package private) void`
  `setVals(String... vs)`
  固定値の値配列を指定します｡ このﾒｿｯﾄﾞは､1度しかｾｯﾄすることができません｡2回以上呼び出しするとｴﾗｰになります｡
  `protected final void`
  `sql(String sq)`
  SQLを実行します｡ SQL文には､{@XXXX}形式及び[XXXX]形式の変数を使用することができます｡ [XXXX]形式の変数の置き換えには､引数で指定された配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙの行が使用されます｡ select文を発行した場合､その結果ｾｯﾄは､var(ｶﾗﾑ名)で取得することができます｡ 2行以上が返された場合でも､1行目のみが登録されます｡ また､検索件数､更新件数については､var("SQL_ROWCOUNT")で取得することができます｡
  `protected final double[][]`
  `str2dblVals(String[][] vals)`
  文字列配列をdouble配列に変換します｡ 文字列が､nullか､空文字列の場合は､長さ０の配列を返します｡
  `protected final String`
  `var(String key)`
  指定されたｷｰの値を返します｡
  `protected final double`
  `var(String key, double def)`
  指定されたｷｰの値をdouble型に変換して返します｡ 値が､nullや空文字列の場合は､def引数の初期値を返します｡
  `protected final int`
  `var(String key, int def)`
  指定されたｷｰの値をint型に変換して返します｡ 値が､nullや空文字列の場合は､def引数の初期値を返します｡
  `protected final String`
  `var(String key, String def)`
  指定されたｷｰの値を返します｡ 値が､nullや空文字列の場合は､def引数の初期値を返します｡
  `protected final String[]`
  `varKeys()`
  ﾊﾟﾗﾒｰﾀｰのｷｰ一覧を配列形式で返します｡ このﾊﾟﾗﾒｰﾀｰは､業務ﾛｼﾞｯｸ内でｾｯﾄされたﾊﾟﾗﾒｰﾀｰも含まれますのでご注意下さい｡

  ### クラスから継承されたメソッド java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## フィールド詳細

  - ### OK

    protected static final int OK
    ｴﾗｰﾒｯｾｰｼﾞをｾｯﾄする際に使用します 0
    関連項目:
      - 定数フィールド値

  - ### WARNING

    protected static final int WARNING
    ｴﾗｰﾒｯｾｰｼﾞをｾｯﾄする際に使用します 1
    関連項目:
      - 定数フィールド値

  - ### NG

    protected static final int NG
    ｴﾗｰﾒｯｾｰｼﾞをｾｯﾄする際に使用します 2
    関連項目:
      - 定数フィールド値

  - ### EXCEPTION

    protected static final int EXCEPTION
    ｴﾗｰﾒｯｾｰｼﾞをｾｯﾄする際に使用します 8
    関連項目:
      - 定数フィールド値

  - ### ORCL_ERR

    protected static final int ORCL_ERR
    ｴﾗｰﾒｯｾｰｼﾞをｾｯﾄする際に使用します 9
    関連項目:
      - 定数フィールド値

  - ### dbName

    protected DBFunctionName dbName
    ﾃﾞｰﾀﾍﾞｰｽﾌｧﾝｸｼｮﾝ

  - ### row

    int row
    配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙの現在の処理行 行番号自体は､protected属性であるため､ｻﾌﾞｸﾗｽから直接参照することができます｡ 但し､これは､各業務ﾛｼﾞｯｸで直接参照することを想定したものではなく､BizLogicの ﾒｲﾝ構造を拡張するｻﾌﾞｸﾗｽを定義する際に使用することを想定しています｡ (この想定がなければ､本来は､package privateにすべきです) このため､業務ﾛｼﾞｯｸを各実装ｸﾗｽでは直接参照しないで下さい｡ ※ ｲﾝﾃﾞｯｸｽ(row)とは､このArrayTableModel に持つ vals 配列の行のｲﾝﾃﾞｯｸｽです｡ よって､ｵﾘｼﾞﾅﾙのDBTableModelの行番号ではありません｡
    変更履歴:
      8.0.2.0 (2021/11/30) protected → default 変更(ｻﾌﾞｸﾗｽからのｱｸｾｽはない)

- ## コンストラクタの詳細

  - ### AbstractBizLogic

    protected AbstractBizLogic()
    ﾃﾞﾌｫﾙﾄｺﾝｽﾄﾗｸﾀｰ
    変更履歴:
      6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.

- ## メソッドの詳細

  - ### setTransaction

    void setTransaction(Transaction tr)
    DBのﾄﾗﾝｻﾞｸｼｮﾝｵﾌﾞｼﾞｪｸﾄを指定します｡ 各実装ｸﾗｽでは､ｺﾈｸｼｮﾝのcommit,rollbackは行われません｡ (全てのDB処理は､1つのﾄﾗﾝｻﾞｸｼｮﾝとして処理されます｡) このため､commit,rollbackは呼び出し元で行う必要があります｡ このﾒｿｯﾄﾞは､1度しかｾｯﾄすることができません｡2回以上呼び出しするとｴﾗｰになります｡
    パラメータ:
      `tr` - ﾄﾗﾝｻﾞｸｼｮﾝ
    変更履歴:
      5.1.9.0 (2010/08/01) 新規作成, 5.3.8.0 (2011/08/01) useParamMetaData を ConnectionFactory経由で取得｡(PostgreSQL対応), 8.0.2.0 (2021/11/30) protected → default 変更(ｻﾌﾞｸﾗｽからのｱｸｾｽはない)

  - ### getTransaction

    protected Transaction getTransaction()
    DBのﾄﾗﾝｻﾞｸｼｮﾝｵﾌﾞｼﾞｪｸﾄを返します｡ (全てのDB処理は､1つのﾄﾗﾝｻﾞｸｼｮﾝとして処理されます｡)
    戻り値:
      ﾄﾗﾝｻﾞｸｼｮﾝ
    変更履歴:
      7.4.2.0 (2021/05/14) 外部から指定するTransactionｵﾌﾞｼﾞｪｸﾄ 対応, 8.0.2.0 (2021/11/30) protected → default 変更(ｻﾌﾞｸﾗｽからのｱｸｾｽはない), 8.1.1.0 (2022/02/04) default ⇒ protected に変更します。

  - ### setDbid

    void setDbid(String id)
    接続先IDを指定します｡ このﾒｿｯﾄﾞは､1度しかｾｯﾄすることができません｡2回以上呼び出しするとｴﾗｰになります｡
    パラメータ:
      `id` - 接続先ID
    変更履歴:
      5.1.9.0 (2010/08/01) 新規作成

  - ### setLoader

    void setLoader(HybsLoader ldr)
    業務ﾛｼﾞｯｸのｸﾗｽをﾛｰﾄﾞするためのｸﾗｽﾛｰﾀﾞｰをｾｯﾄします｡ このﾒｿｯﾄﾞは､1度しかｾｯﾄすることができません｡2回以上呼び出しするとｴﾗｰになります｡
    パラメータ:
      `ldr` - ｸﾗｽﾛｰﾀﾞｰ
    変更履歴:
      5.6.7.0 (2013/07/27) Exception を throw するとき､一旦､errMsg 変数にｾｯﾄします｡

  - ### setTable

    void setTable(DataModel<String> tbl)
    配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙをｾｯﾄします｡ このﾒｿｯﾄﾞは､1度しかｾｯﾄすることができません｡2回以上呼び出しするとｴﾗｰになります｡
    パラメータ:
      `tbl` - 配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙ
    変更履歴:
      5.6.7.0 (2013/07/27) Exception を throw するとき､一旦､errMsg 変数にｾｯﾄします｡, 6.7.9.1 (2017/05/19) ArrayTableModel をDataModel に変更｡

  - ### getTable

    protected DataModel<String> getTable()
    配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙを取得します｡
    戻り値:
      配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙ
    変更履歴:
      6.7.9.1 (2017/05/19) 新規追加

  - ### setKeys

    void setKeys(String... ks)
    固定値のｷｰ配列を指定します｡ このﾒｿｯﾄﾞは､1度しかｾｯﾄすることができません｡2回以上呼び出しするとｴﾗｰになります｡
    パラメータ:
      `ks` - ｷｰ配列(可変長引数)
    変更履歴:
      5.6.7.0 (2013/07/27) Exception を throw するとき､一旦､errMsg 変数にｾｯﾄします｡

  - ### setVals

    void setVals(String... vs)
    固定値の値配列を指定します｡ このﾒｿｯﾄﾞは､1度しかｾｯﾄすることができません｡2回以上呼び出しするとｴﾗｰになります｡
    パラメータ:
      `vs` - 値配列(可変長引数)
    変更履歴:
      5.6.7.0 (2013/07/27) Exception を throw するとき､一旦､errMsg 変数にｾｯﾄします｡

  - ### setUserId

    void setUserId(String id)
    この処理の実行ﾕｰｻﾞｰIDを指定します｡
    パラメータ:
      `id` - 実行ﾕｰｻﾞｰID(not null)

  - ### setParentPgId

    void setParentPgId(String id)
    親(呼び出し)PGIDを指定します｡
    パラメータ:
      `id` - 親PGID

  - ### setDebug

    void setDebug()
    ﾃﾞﾊﾞｯｸﾞﾓｰﾄﾞにします｡

  - ### getDebugMsg

    String getDebugMsg()
    ﾃﾞﾊﾞｯｸﾞﾒｯｾｰｼﾞを取得します｡
    戻り値:
      ﾃﾞﾊﾞｯｸﾞﾒｯｾｰｼﾞ
    このﾒｿｯﾄﾞは、nullを返しません

  - ### exec

    boolean exec() throws Throwable
    処理を実行します｡ 処理の方法は､main()ﾒｿｯﾄﾞにより定義されます｡ 実装ｸﾗｽで発生した全ての例外は､Throwableｵﾌﾞｼﾞｪｸﾄとしてｽﾛｰされます｡ 呼び出し元では､例外を確実にcatchして､commit,rollbackを行ってください｡
    戻り値:
      処理が成功したかどうか
    例外:
      `Throwable` - 実行時の全ｴﾗｰを上位に転送します｡
    変更履歴:
      5.1.9.0 (2010/08/01) ｼｰｹﾝｽ対応

  - ### init

    protected abstract void init()
    処理のﾒｲﾝﾛｼﾞｯｸの前処理を記述します｡ このﾒｿｯﾄﾞ自体は､protected属性であるため､ｻﾌﾞｸﾗｽから直接参照することができます｡ 但し､これは､各業務ﾛｼﾞｯｸで直接参照することを想定したものではなく､BizLogicの ﾒｲﾝ構造を拡張するｻﾌﾞｸﾗｽを定義する際に使用することを想定しています｡ (この想定がなければ､本来は､package privateにすべきです) このため､業務ﾛｼﾞｯｸを各実装ｸﾗｽでは直接参照しないで下さい｡

  - ### main

    protected abstract boolean main()
    処理のﾒｲﾝﾛｼﾞｯｸを記述します｡ このﾒｿｯﾄﾞ自体は､protected属性であるため､ｻﾌﾞｸﾗｽから直接参照することができます｡ 但し､これは､各業務ﾛｼﾞｯｸで直接参照することを想定したものではなく､BizLogicの ﾒｲﾝ構造を拡張するｻﾌﾞｸﾗｽを定義する際に使用することを想定しています｡ (この想定がなければ､本来は､package privateにすべきです) このため､業務ﾛｼﾞｯｸを各実装ｸﾗｽでは直接参照しないで下さい｡
    戻り値:
      処理が正常終了したか

  - ### getKekka

    int getKekka()
    結果ｽﾃｰﾀｽを返します｡
    戻り値:
      結果ｽﾃｰﾀｽ

  - ### getErrMsg

    ErrorMessage getErrMsg()
    ｴﾗｰﾒｯｾｰｼﾞｵﾌﾞｼﾞｪｸﾄを返します｡
    戻り値:
      ｴﾗｰﾒｯｾｰｼﾞ

  - ### getReturn

    String getReturn()
    業務ﾛｼﾞｯｸの戻り値を返します｡
    戻り値:
      戻り値

  - ### isRequireTable

    boolean isRequireTable()
    業務ﾛｼﾞｯｸを実行するために､ﾃｰﾌﾞﾙﾓﾃﾞﾙが外部からｾｯﾄされる必要があるか を返します｡ 必須である場合､その業務ﾛｼﾞｯｸは､子ﾛｼﾞｯｸとして呼び出すことができません｡ これは､子ﾛｼﾞｯｸ呼び出し時は､ﾃｰﾌﾞﾙﾓﾃﾞﾙがｾｯﾄされないためです｡ (このｸﾗｽは､ﾃｰﾌﾞﾙﾓﾃﾞﾙが外部から指定されている必要はありません｡) このﾒｿｯﾄﾞ自体は､protected属性であるため､ｻﾌﾞｸﾗｽから直接参照することができます｡ 但し､これは､各業務ﾛｼﾞｯｸで直接参照することを想定したものではなく､BizLogicの ﾒｲﾝ構造を拡張するｻﾌﾞｸﾗｽを定義する際に使用することを想定しています｡ (この想定がなければ､本来は､package privateにすべきです) このため､業務ﾛｼﾞｯｸを各実装ｸﾗｽでは直接参照しないで下さい｡
    戻り値:
      ﾃｰﾌﾞﾙﾓﾃﾞﾙが外部からｾｯﾄされる必要があるかどうか(常にfalse)
    変更履歴:
      8.0.2.0 (2021/11/30) protected → default 変更(ｻﾌﾞｸﾗｽからのｱｸｾｽはない)

  - ### isDebug

    protected final boolean isDebug()
    ﾃﾞﾊﾞｯｸﾞﾓｰﾄﾞかどうかを返します｡
    戻り値:
      ﾃﾞﾊﾞｯｸﾞﾓｰﾄﾞかどうか

  - ### debug

    protected final void debug(String msg)
    ﾃﾞﾊﾞｯｸﾞﾒｯｾｰｼﾞを追加します｡
    パラメータ:
      `msg` - 追加するﾃﾞﾊﾞｯｸﾞﾒｯｾｰｼﾞ

  - ### var

    protected final String var(String key)
    指定されたｷｰの値を返します｡
    パラメータ:
      `key` - ｷｰ
    戻り値:
      変数値
    変更履歴:
      8.3.0.1 (2022/08/12) keyを大文字変換

  - ### var

    protected final String var(String key, String def)
    指定されたｷｰの値を返します｡ 値が､nullや空文字列の場合は､def引数の初期値を返します｡
    パラメータ:
      `key` - ｷｰ
      `def` - 値が取得できなかった時の初期値
    戻り値:
      変数値
    変更履歴:
      8.0.2.0 (2021/11/30) 新規追加, 8.3.0.1 (2022/08/12) keyを大文字変換

  - ### var

    protected final int var(String key, int def)
    指定されたｷｰの値をint型に変換して返します｡ 値が､nullや空文字列の場合は､def引数の初期値を返します｡
    パラメータ:
      `key` - ｷｰ
      `def` - 値が取得できなかった時の初期値
    戻り値:
      変数値
    変更履歴:
      8.0.2.0 (2021/11/30) 新規追加, 8.3.0.1 (2022/08/12) keyを大文字変換

  - ### var

    protected final double var(String key, double def)
    指定されたｷｰの値をdouble型に変換して返します｡ 値が､nullや空文字列の場合は､def引数の初期値を返します｡
    パラメータ:
      `key` - ｷｰ
      `def` - 値が取得できなかった時の初期値
    戻り値:
      変数値
    変更履歴:
      8.0.2.0 (2021/11/30) 新規追加, 8.3.0.1 (2022/08/12) keyを大文字変換

  - ### varKeys

    protected final String[] varKeys()
    ﾊﾟﾗﾒｰﾀｰのｷｰ一覧を配列形式で返します｡ このﾊﾟﾗﾒｰﾀｰは､業務ﾛｼﾞｯｸ内でｾｯﾄされたﾊﾟﾗﾒｰﾀｰも含まれますのでご注意下さい｡
    戻り値:
      ﾊﾟﾗﾒｰﾀｰのｷｰ配列

  - ### set

    protected final void set(String key, String val)
    指定されたｷｰで値を登録します｡ ﾊﾟﾗﾒｰﾀｰとしてこの業務ﾛｼﾞｯｸが呼ばれる際の引数となっている場合は､ ｴﾗｰとなります｡
    パラメータ:
      `key` - ｷｰ
      `val` - 値
    変更履歴:
      5.2.1.0 (2010/10/01) ﾁｪｯｸのﾊﾞｸﾞを修正, 5.6.7.0 (2013/07/27) Exception を throw するとき､一旦､errMsg 変数にｾｯﾄします｡, 8.3.0.1 (2022/08/12) keyを大文字変換

  - ### set

    protected final void set(String key, int val)
    指定されたｷｰで値(int型)を登録します｡ ﾊﾟﾗﾒｰﾀｰとしてこの業務ﾛｼﾞｯｸが呼ばれる際の引数となっている場合は､ ｴﾗｰとなります｡
    パラメータ:
      `key` - ｷｰ
      `val` - 値
    変更履歴:
      5.1.9.0 (2010/08/01) 新規作成

  - ### set

    protected final void set(String key, double val)
    指定されたｷｰで値(double型)を登録します｡ ﾊﾟﾗﾒｰﾀｰとしてこの業務ﾛｼﾞｯｸが呼ばれる際の引数となっている場合は､ ｴﾗｰとなります｡
    パラメータ:
      `key` - ｷｰ
      `val` - 値
    変更履歴:
      5.1.9.0 (2010/08/01) 新規作成

  - ### getValues

    protected String[][] getValues(String... clmNms)
    指定のｶﾗﾑ名引数に相当するﾃﾞｰﾀを２重配列で返します｡
    パラメータ:
      `clmNms` - 値が参照されるｶﾗﾑ名配列(可変長引数)
    戻り値:
      指定された名引数に相当するﾃﾞｰﾀの２重配列
    変更履歴:
      6.8.5.0 (2018/01/09) 新規追加
    このﾒｿｯﾄﾞは、nullを返しません

  - ### str2dblVals

    protected final double[][] str2dblVals(String[][] vals)
    文字列配列をdouble配列に変換します｡ 文字列が､nullか､空文字列の場合は､長さ０の配列を返します｡
    パラメータ:
      `vals` - double配列に変換する元の文字列配列
    戻り値:
      指定された文字列配列に対するdoubleに変換された値配列
    変更履歴:
      6.8.5.0 (2018/01/09) 新規追加, 8.0.2.0 (2021/11/30) StringUtil#nval(String.doubleを使用)
    このﾒｿｯﾄﾞは、nullを返しません

  - ### getNames

    protected final String[] getNames()
    ﾃｰﾌﾞﾙのｶﾗﾑ名の一覧を配列形式で返します｡
    戻り値:
      ﾃｰﾌﾞﾙのｶﾗﾑ名配列
    変更履歴:
      5.6.7.0 (2013/07/27) Exception を throw するとき､一旦､errMsg 変数にｾｯﾄします｡, 8.0.2.0 (2021/11/30) ﾒｿｯﾄﾞ名変更(lineKeys → getNames)

  - ### rtn

    protected final void rtn(String rtn)
    業務ﾛｼﾞｯｸの戻り値をｾｯﾄします｡
    パラメータ:
      `rtn` - 戻り値

  - ### call

    protected final boolean call(String subLogicName, String key, String val)
    子ﾛｼﾞｯｸを実行します｡ 実行する子ﾛｼﾞｯｸの呼び出しは､親ｸﾗｽと同じｿｰｽﾊﾟｽ､ｸﾗｽﾊﾟｽで呼び出しされます｡ 子ﾛｼﾞｯｸに渡す引数には､{@XXXX}形式及び[XXXX]形式の変数を使用することができます｡ この場合の値は､引数で指定された､配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙの行に対応する値になります｡ また､子ﾛｼﾞｯｸの戻り値は､val("RETURN")で取得することができます｡
    パラメータ:
      `subLogicName` - 子ﾛｼﾞｯｸ名
      `key` - ｷｰ(CSV形式)
      `val` - 値(CSV形式) // * @param rw 行番号(ｲﾝﾃﾞｯｸｽ) // * @param tbl 配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙ
    戻り値:
      処理が正常終了したか
    変更履歴:
      5.1.9.0 (2010/08/01) ｼｰｹﾝｽ対応, 5.4.1.0 (2011/11/01) 値にｶﾝﾏが含まれている場合に正しく動作しないﾊﾞｸﾞを修正, 5.6.7.0 (2013/07/27) Exception を throw するとき､一旦､errMsg 変数にｾｯﾄします｡, 6.3.9.0 (2015/11/06) ｺﾝｽﾄﾗｸﾀで初期化されていないﾌｨｰﾙﾄﾞを null ﾁｪｯｸなしで利用している(findbugs), 6.7.9.1 (2017/05/19) ArrayTableModel をDataModel に変更｡, 8.0.2.0 (2021/11/30) 外部から､行番号とDataModelを渡すﾒｿｯﾄﾞは廃止｡

  - ### sql

    protected final void sql(String sq)
    SQLを実行します｡ SQL文には､{@XXXX}形式及び[XXXX]形式の変数を使用することができます｡ [XXXX]形式の変数の置き換えには､引数で指定された配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙの行が使用されます｡ select文を発行した場合､その結果ｾｯﾄは､var(ｶﾗﾑ名)で取得することができます｡ 2行以上が返された場合でも､1行目のみが登録されます｡ また､検索件数､更新件数については､var("SQL_ROWCOUNT")で取得することができます｡
    パラメータ:
      `sq` - SQL文字列 // * @param rw 行番号(ｲﾝﾃﾞｯｸｽ) // * @param tbl 配列型ﾃｰﾌﾞﾙﾓﾃﾞﾙ
    変更履歴:
      6.7.9.1 (2017/05/19) ArrayTableModel をDataModel に変更｡, 8.0.2.0 (2021/11/30) 外部から､行番号とDataModelを渡すﾒｿｯﾄﾞは廃止｡

  - ### seq

    protected final int seq(String seqName)
    ｼｰｹﾝｽ名よりｼｰｹﾝｽｵﾌﾞｼﾞｪｸﾄを検索し､次の値を取り出します｡ DBに対するｼｰｹﾝｽｵﾌﾞｼﾞｪｸﾄは予め作成されている必要があります｡ また､MySQLの場合は､ｼｰｹﾝｽｵﾌﾞｼﾞｪｸﾄが実装されていないため､ 内部的には､引数のｼｰｹﾝｽ名と同じ名前のﾃｰﾌﾞﾙから､Integer型の "SEQID"という項目名を検索することにより､ｼｰｹﾝｽをｴﾐｭﾚｰﾄしています｡
    パラメータ:
      `seqName` - ｼｰｹﾝｽ名
    戻り値:
      ｼｰｹﾝｽ番号
    関連項目:
      - `DBFunctionName.getSequence(String,Transaction)`
    変更履歴:
      5.1.9.0 (2010/08/01) 新規追加, 6.3.9.0 (2015/11/06) ｺﾝｽﾄﾗｸﾀで初期化されていないﾌｨｰﾙﾄﾞを null ﾁｪｯｸなしで利用している(findbugs)

  - ### querySQL

    protected void querySQL(String sq, Consumer<String[]> call)
    検索用SQLを実行して、Consumer#accept に検索結果の配列を繰り返しセットします｡ 内部でResultSetValue のカーソルを回すため、大量のデータについて 順次処理する場合に使用します。
    パラメータ:
      `sq` - SQL文字列
      `call` - CallBack関数(Consumer)
    変更履歴:
      8.2.0.3 (2022/06/30) 内部でカーソルを回す検索用SQLを実行する, 8.2.1.0 (2022/07/15) querySQL では、[XXXX]の変換 自体を行わない

  - ### error

    protected final void error(int kekka, String id, String... args)
    ｴﾗｰﾒｯｾｰｼﾞを追加します｡ ｴﾗｰﾒｯｾｰｼﾞの引数には､{@XXXX}形式及び[XXXX]形式の変数を使用することができます｡
    パラメータ:
      `kekka` - ｴﾗｰﾚﾍﾞﾙ
      `id` - ｴﾗｰﾒｯｾｰｼﾞID
      `args` - ｴﾗｰﾒｯｾｰｼﾞﾊﾟﾗﾒｰﾀｰ

  - ### error

    protected final void error(int rw, int kekka, String id, String... args)
    行指定でｴﾗｰﾒｯｾｰｼﾞを追加します｡ ｴﾗｰﾒｯｾｰｼﾞの引数には､{@XXXX}形式及び[XXXX]形式の変数を使用することができます｡
    パラメータ:
      `rw` - 行番号(ｲﾝﾃﾞｯｸｽ)
      `kekka` - ｴﾗｰﾚﾍﾞﾙ
      `id` - ｴﾗｰﾒｯｾｰｼﾞID
      `args` - ｴﾗｰﾒｯｾｰｼﾞﾊﾟﾗﾒｰﾀｰ

  - ### must

    protected final boolean must(String cs)
    ﾊﾟﾗﾒｰﾀｰの必須ﾁｪｯｸを行います｡ ｷｰは､CSV形式で複数指定することができます｡
    パラメータ:
      `cs` - ｶﾗﾑ(CSV形式)
    戻り値:
      ｴﾗｰが発生した場合はfalse､それ以外はtrue
    変更履歴:
      8.3.0.1 (2022/08/12) keyを大文字変換

  - ### exist

    protected final boolean exist(String type, String tblId, String ns, String vs)
    ﾏｽﾀﾁｪｯｸを行います｡
    パラメータ:
      `type` - ｴﾗｰﾁｪｯｸのﾀｲﾌﾟ
      `tblId` - ﾃｰﾌﾞﾙ名
      `ns` - ｶﾗﾑ(CSV形式)
      `vs` - 値(CSV形式)
    戻り値:
      ｴﾗｰが発生した場合はfalse､それ以外はtrue
    関連項目:
      - `exist(String, String, String, String, String, String)`
    変更履歴:
      5.6.3.1 (2013/04/05) isErrThrow 引数を追加

  - ### exist

    protected final boolean exist(String type, String tblId, String ns, String vs, String conNs, String conVs)
    ﾏｽﾀﾁｪｯｸを行います｡ 引数に指定されたﾃｰﾌﾞﾙ名､及び条件句を生成するためのｶﾗﾑ､値から 件数を取得し､typeに応じて件数ﾁｪｯｸを行います｡ (ｶﾗﾑ､値には､CSV形式で複数指定することができます) type=true 存在する場合true 存在しない場合false type=false 存在する場合false 存在しない場合true type=one 1件以内 true 2件以上 false 必須ﾁｪｯｸの引数には､{@XXXX}形式及び[XXXX]形式の変数を使用することができます｡ また､固定値ｶﾗﾑ､値にも条件となるｶﾗﾑ及び値を指定することができますが､ ここで指定されたｶﾗﾑは､ｴﾗｰﾒｯｾｰｼﾞ表示時にｶﾗﾑ､値が画面に表示されません｡
    パラメータ:
      `type` - ｴﾗｰﾁｪｯｸのﾀｲﾌﾟ
      `tblId` - ﾃｰﾌﾞﾙ名
      `ns` - ｶﾗﾑ(CSV形式)
      `vs` - 値(CSV形式)
      `conNs` - 固定値ｶﾗﾑ(CSV形式)
      `conVs` - 固定値(CSV形式)
    戻り値:
      ｴﾗｰが発生した場合はfalse､それ以外はtrue
    変更履歴:
      5.6.3.1 (2013/04/05) isErrThrow 引数を追加

  - ### exist

    protected final boolean exist(String type, String tblId, String ns, String vs, String conNs, String conVs, boolean isErrThrow)
    ﾏｽﾀﾁｪｯｸを行います｡ 引数に指定されたﾃｰﾌﾞﾙ名､及び条件句を生成するためのｶﾗﾑ､値から 件数を取得し､typeに応じて件数ﾁｪｯｸを行います｡ (ｶﾗﾑ､値には､CSV形式で複数指定することができます) type=true 存在する場合true 存在しない場合false type=false 存在する場合false 存在しない場合true type=one 1件以内 true 2件以上 false 必須ﾁｪｯｸの引数には､{@XXXX}形式及び[XXXX]形式の変数を使用することができます｡ また､固定値ｶﾗﾑ､値にも条件となるｶﾗﾑ及び値を指定することができますが､ ここで指定されたｶﾗﾑは､ｴﾗｰﾒｯｾｰｼﾞ表示時にｶﾗﾑ､値が画面に表示されません｡ isErrThrow は､ｴﾗｰが発生した場合に､ｴﾗｰﾒｯｾｰｼﾞ（ErrorMessage）に書き込むかどうかを指定します｡ 基本は､互換性を考慮し､true(書き込む)です｡ false にするｹｰｽは､存在ﾁｪｯｸを行い､あれば更新､なければ追加 など後続処理を行いたい場合に使います｡
    パラメータ:
      `type` - ｴﾗｰﾁｪｯｸのﾀｲﾌﾟ
      `tblId` - ﾃｰﾌﾞﾙ名
      `ns` - ｶﾗﾑ(CSV形式)
      `vs` - 値(CSV形式)
      `conNs` - 固定値ｶﾗﾑ(CSV形式)
      `conVs` - 固定値(CSV形式)
      `isErrThrow` - 判定結果がfalseの場合に､error関数を呼ぶ場合は､true｡呼ばない場合は､falseをｾｯﾄします｡
    戻り値:
      ｴﾗｰが発生した場合はfalse､それ以外はtrue
    変更履歴:
      5.6.3.1 (2013/04/05) isErrThrow 引数を追加, 5.6.7.0 (2013/07/27) Exception を throw するとき､一旦､errMsg 変数にｾｯﾄします｡, 6.7.9.1 (2017/05/19) ArrayTableModel をDataModel に変更｡

  - ### setRtnMap

    protected final void setRtnMap(String key, String val)
    変数に関連付けた値を､返します｡ これは､BizLogicから､呼び出し元のJSPに､RETURN 変数以外の {@XXXX} ﾊﾟﾗﾒｰﾀを返します｡ 既存のｱﾄﾘﾋﾞｭｰﾄがあれば､上書きされます｡
    パラメータ:
      `key` - ｷｰ
      `val` - 値
    変更履歴:
      6.9.9.0 (2018/08/20) 戻り値を返せるようにします｡

  - ### getReturnMap

    protected final Map<String,String> getReturnMap()
    変数に関連付けた値を､返します｡ これは､BizLogicから､呼び出し元のJSPに､RETURN 変数以外の {@XXXX} ﾊﾟﾗﾒｰﾀを返します｡ 既存のｱﾄﾘﾋﾞｭｰﾄがあれば､上書きされます｡
    戻り値:
      内部ﾏｯﾌﾟｵﾌﾞｼﾞｪｸﾄ
    変更履歴:
      6.9.9.0 (2018/08/20) 戻り値を返せるようにします｡