パッケージ org.opengion.hayabusa.db

クラス DBEditConfig

java.lang.Object
org.opengion.hayabusa.db.DBEditConfig

public class DBEditConfig extends Object
編集設定情報を管理するためのデータ管理クラスです。 ここで管理される各パラメーターの意味は以下の通りです。 (各インデックス番号は、内部的に管理されているインデックス番号を意味します) ・0:編集名 この編集設定オブジェクトの名称です。 ・1:表示カラム 表示対象となるカラム一覧です。CSV形式で指定します。 この一覧には、非表示のカラムも合わせて管理され、非表示カラムについては、 カラム名の先頭に"!"をつけます。 例) AAA,!BBB,CCC ⇒ AAA,CCCの順に表示(BBBは非表示) ・2:集計カラム 各値をSUMする対象となるカラムです。(CSV形式で複数指定が可能) ここで指定されたカラムは数値型である必要があります。 SQL構文における、SUM関数の引数として指定するカラムに相当します。 ・3:グループカラム 集計カラムの各値をグルーピングするためのカラムです。(CSV形式で複数指定が可能) SQL構文における、GROUP BYに指定するカラムに相当します。 ・4:小計カラム 集計カラムの各値に対し、小計行を付加するためのブレイクキーを指定します。(CSV形式で複数指定が可能) ・5:合計カラム 集計カラムの各値に対し、合計行を付加するためのブレイクキーを指定します。(CSV形式で複数指定が可能) ・6:総合計フラグ 集計カラムの各値に対し、総合計行を付加するかどうかを指定します。(0以外:追加する 0:追加しない) ・7:表示順カラム データの表示順をその順番にCSV形式で指定します。 カラム名の先頭に"!"をつけた場合は、そのカラムは降順で表示されます。 SQL構文における、orderby句に相当します。 ・8:共通フラグ この編集設定オブジェクトが、共通(全ユーザー公開)編集かどうかを 指定します。(0以外:共通 0:個人のみ)
変更履歴:
5.3.6.0 (2011/06/01) 新規追加
導入されたバージョン:
JDK6.0,
  • コンストラクタの概要

    コンストラクタ
    コンストラクタ
    説明
    コンストラクタ 空の編集設定オブジェクトを構築します。
    DBEditConfig(String[] editVals)
    コンストラクタ 各種パラメーターを配列で指定して編集設定オブジェクトを構築します。
    DBEditConfig(String editName, String viewClms, String sumClms, String groupClms, String subTotalClms, String totalClms, String useGrandTotal, String useFirstTotal, String orderByClms, String isCommon)
    コンストラクタ 各種パラメーターを指定して編集設定オブジェクトを構築します。
  • メソッドの概要

    修飾子とタイプ
    メソッド
    説明
    void
    画面IDに対応した、内部のキーと値の各要素に対して指定されたアクションを実行します。
    static String[]
    getEditKeys(String guikey, String editName)
    画面ID、編集名をキーに、編集設定オブジェクトの各設定値の管理キーを指定します。
    編集名を返します。
    編集設定オブジェクトの各設定値を配列にして返します。
    int
    グループカラムのカラム数を返します。
    グループカラムの一覧をCSV形式で返します。
    指定されたカラムの表示順の優先番号を返します。
    表示順カラムをCSV形式で返します。
    int
    小計カラムのカラム数を返します。
    小計カラムの一覧をCSV形式で返します。
    int
    集計カラムのカラム数を返します。
    集計カラムの一覧をCSV形式で返します。
    int
    合計カラムのカラム数を返します。
    合計カラムの一覧をCSV形式で返します。
    表示カラム名の一覧をCSV形式で返します。
    表示カラム(CSV形式)をチェックし、変更があれば、反映したカラムを作成します。
    boolean
    この編集設定オブジェクトが、共通(全ユーザー公開)編集か どうかを返します。
    boolean
    指定されたカラムがグループ対象のカラムかどうかを返します。
    boolean
    指定されたカラムの表示順指定が降順であるかどうかを返します。
    boolean
    指定されたカラムが小計対象のカラムかどうかを返します。
    boolean
    指定されたカラムが集計対象のカラムかどうかを返します。
    boolean
    指定されたカラムが合計対象のカラムかどうかを返します。
    boolean
    書き込み許可するかどうかを決める為の情報を返します。
    boolean
    総合計を最初の行に追加するかどうかを返します。
    boolean
    総合計行を付加するかどうかを返します。
    boolean
    グループ処理を行うかどうかを返します。
    boolean
    並び替え処理を行うかどうかを返します。
    boolean
    小計処理を行うかどうかを返します。
    boolean
    集計処理を行うかどうかを返します。
    boolean
    合計処理を行うかどうかを返します。

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

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • DBEditConfig

      public DBEditConfig()
      コンストラクタ 空の編集設定オブジェクトを構築します。
    • DBEditConfig

      public DBEditConfig(String editName, String viewClms, String sumClms, String groupClms, String subTotalClms, String totalClms, String useGrandTotal, String useFirstTotal, String orderByClms, String isCommon)
      コンストラクタ 各種パラメーターを指定して編集設定オブジェクトを構築します。
      パラメータ:
      editName - 編集名称
      viewClms - 画面表示カラム
      sumClms - 集計カラム
      groupClms - グループカラム
      subTotalClms - 小計カラム
      totalClms - 合計カラム
      useGrandTotal - 総合計行を追加するか(1:追加する 1以外:追加しない)
      useFirstTotal - 総合計行を追加するか(1:追加する 1以外:追加しない)
      orderByClms - 表示順
      isCommon - 共通編集かどうか(1:共通 1以外:個人のみ)
      変更履歴:
      6.1.1.0 (2015/01/17) 総合計を最初の行に追加するかどうか(FirstTotal)の属性を追加
    • DBEditConfig

      public DBEditConfig(String[] editVals)
      コンストラクタ 各種パラメーターを配列で指定して編集設定オブジェクトを構築します。 各パラメータの配列インデックスは、getEditKeys(String,String)で返される キー一覧の配列インデックスと一致します。 各パラメーターの意味については、クラスのJavadocDBEditConfigを参照して下さい。
      パラメータ:
      editVals - 設定値(配列)
  • メソッドの詳細

    • getEditKeys

      public static String[] getEditKeys(String guikey, String editName)
      画面ID、編集名をキーに、編集設定オブジェクトの各設定値の管理キーを指定します。 編集設定オブジェクトで管理される各キーに対して、 "EDIT_[KEY]_(画面ID)_(編集名)"というキーを生成し、これを配列にして返します。
      パラメータ:
      guikey - 画面ID
      editName - 編集名
      戻り値:
      編集設定を管理するためのキー一覧
      変更履歴:
      6.0.2.2 (2014/10/03) 新規追加。DBEditConfig から、移動, 6.3.9.1 (2015/11/27) DBEditConfigManager から、移動。
    • getEditVals

      public String[] getEditVals()
      編集設定オブジェクトの各設定値を配列にして返します。 配列のインデックス番号は、getEditKeys(String,String)で生成されるキーの インデックス番号と一致します。
      戻り値:
      編集設定オブジェクトの設定値一覧(配列)
    • getEditName

      public String getEditName()
      編集名を返します。
      戻り値:
      編集名
    • useEditName

      public boolean useEditName()
      書き込み許可するかどうかを決める為の情報を返します。 EDITNAME利用時は、writeCheckタグ内で書き込み許可判定を行っています。(ROLE制御は別) USE_EDIT_WITH_EDITNAME か、writeCheckタグのuseEditをtrueにすれば、書き込み許可となり USE_EDIT_WITH_NAME_SEQ が true の場合は、このメソッドの戻り値がtrue なら書き込み許可となります。 成立条件: EDIT_KEY_NAME に、非表示(!カラム)がなく、集計カラム,グループカラム,小計カラム,合計カラム,総合計行 も 未使用の場合は、true を、それ以外は、false を返します。 要するに、列の並び替えと、表示順、(降順)指定のみの場合だけ、書き込み許可します。
      戻り値:
      編集名
      変更履歴:
      7.2.9.1 (2020/10/23) writeCheckタグ内で書き込み許可するかどうかを決める為の情報
    • getViewClms

      public String getViewClms()
      表示カラム名の一覧をCSV形式で返します。 非表示カラムについては、カラム名の先頭に"!"をつけて返されます。 例) AAA,!BBB,CCC ⇒ AAA,CCCの順に表示(BBBは非表示)
      戻り値:
      表示カラム名一覧(CSV形式)
    • getViewClms

      public String getViewClms(String orgClms)
      表示カラム(CSV形式)をチェックし、変更があれば、反映したカラムを作成します。 表示カラムは、並び順や非表示マーカー(!)などが加味され、ユーザー、画面ごとに データベースに記録されています。JSPソースを修正した場合、データベースに 書き込まれた表示カラムは、反映されないため、カラム選択画面等に表示されません。 そこで、オリジナルのカラムに追加された場合は、カラムを比較することで、 追加分のカラムを、非表示カラムとして、後ろに追記します。 削除された場合は、ViewForm で警告表示することで、ユーザーに変更を促します。
      パラメータ:
      orgClms - オリジナルのカラム(CSV形式)
      戻り値:
      変更後の表示カラム(CSV形式)
      変更履歴:
      6.0.2.4 (2014/10/17) JSP修正時の追加カラム対応, 5.9.32.0 (2018/05/02) spritView使用時の対応
    • getSumClms

      public String getSumClms()
      集計カラムの一覧をCSV形式で返します。
      戻り値:
      集計カラムの一覧(CSV形式)
    • useSum

      public boolean useSum()
      集計処理を行うかどうかを返します。 これは、集計カラムが指定されているか、と同じ意味です。
      戻り値:
      true:対象 false:非対象
    • isSumClm

      public boolean isSumClm(String clm)
      指定されたカラムが集計対象のカラムかどうかを返します。
      パラメータ:
      clm - カラム
      戻り値:
      true:対象 false:非対象
    • getSumClmCount

      public int getSumClmCount()
      集計カラムのカラム数を返します。
      戻り値:
      集計カラムのカラム数
    • getGroupClms

      public String getGroupClms()
      グループカラムの一覧をCSV形式で返します。
      戻り値:
      グループカラムの一覧(CSV形式)
    • useGroup

      public boolean useGroup()
      グループ処理を行うかどうかを返します。 これは、グループカラムが指定されているか、と同じ意味です。
      戻り値:
      true:対象 false:非対象
    • isGroupClm

      public boolean isGroupClm(String clm)
      指定されたカラムがグループ対象のカラムかどうかを返します。
      パラメータ:
      clm - カラム
      戻り値:
      true:対象 false:非対象
    • getGroupClmCount

      public int getGroupClmCount()
      グループカラムのカラム数を返します。
      戻り値:
      グループカラムのカラム数
    • getSubTotalClms

      小計カラムの一覧をCSV形式で返します。
      戻り値:
      小計カラムの一覧(CSV形式)
    • useSubTotal

      public boolean useSubTotal()
      小計処理を行うかどうかを返します。 これは、小計カラムが指定されているか、と同じ意味です。
      戻り値:
      true:対象 false:非対象
    • isSubTotalClm

      public boolean isSubTotalClm(String clm)
      指定されたカラムが小計対象のカラムかどうかを返します。
      パラメータ:
      clm - カラム
      戻り値:
      true:対象 false:非対象
    • getSubTotalClmCount

      public int getSubTotalClmCount()
      小計カラムのカラム数を返します。
      戻り値:
      グループカラムのカラム数
    • getTotalClms

      public String getTotalClms()
      合計カラムの一覧をCSV形式で返します。
      戻り値:
      合計カラムの一覧(CSV形式)
    • useTotal

      public boolean useTotal()
      合計処理を行うかどうかを返します。 これは、合計カラムが指定されているか、と同じ意味です。
      戻り値:
      true:対象 false:非対象
    • isTotalClm

      public boolean isTotalClm(String clm)
      指定されたカラムが合計対象のカラムかどうかを返します。
      パラメータ:
      clm - カラム
      戻り値:
      true:対象 false:非対象
    • getTotalClmCount

      public int getTotalClmCount()
      合計カラムのカラム数を返します。
      戻り値:
      グループカラムのカラム数
    • useGrandTotal

      public boolean useGrandTotal()
      総合計行を付加するかどうかを返します。
      戻り値:
      true:対象 false:非対象
    • useFirstTotal

      public boolean useFirstTotal()
      総合計を最初の行に追加するかどうかを返します。
      戻り値:
      true:対象 false:非対象
      変更履歴:
      6.1.1.0 (2015/01/17) 総合計を最初の行に追加するかどうか(FirstTotal)の属性を追加
    • getOrderByClms

      表示順カラムをCSV形式で返します。 カラムの並び順が表示順としての優先順になります。 また、降順で表示するカラムについては、カラム名の先頭に"!"が付加されます。
      戻り値:
      標準順カラムの一覧(CSV形式)
    • getOrder

      public String getOrder(String clm)
      指定されたカラムの表示順の優先番号を返します。 指定カラムが標準として指定されていない場合は、""(ゼロストリング)を返します。
      パラメータ:
      clm - カラム
      戻り値:
      表示順の優先番号
      変更履歴:
      6.4.3.1 (2016/02/12) PMD refactoring. HashMap → ConcurrentHashMap に置き換え。
      このメソッドは、nullを返しません
    • isOrderByDesc

      public boolean isOrderByDesc(String clm)
      指定されたカラムの表示順指定が降順であるかどうかを返します。 標準と指定されていない場合は、falseを返します。
      パラメータ:
      clm - カラム
      戻り値:
      true:降順 false:昇順
    • useOrderBy

      public boolean useOrderBy()
      並び替え処理を行うかどうかを返します。 これは、表示順カラムが指定されているか、と同じ意味です。
      戻り値:
      true:対象 false:非対象
    • isCommon

      public boolean isCommon()
      この編集設定オブジェクトが、共通(全ユーザー公開)編集か どうかを返します。
      戻り値:
      0以外:共通 0:個人のみ
    • forEach

      public void forEach(String guikey, BiConsumer<String,String> action)
      画面IDに対応した、内部のキーと値の各要素に対して指定されたアクションを実行します。 getEditKeys(String,String) で得られるキーの文字列配列と、getEditVals()で得られる値の文字列配列 を、順次、action メソッドに渡していきます。 キーの文字列配列の作成時の編集名は、このオブジェクトの編集名を使用します。
      パラメータ:
      guikey - 画面ID
      action - 各要素に対して実行される関数型インタフェース( editKey、editVal )
      変更履歴:
      6.4.5.0 (2016/04/08) UserInfo のEditConfig関連機能を、DBEditConfigManagerに移植します。新規追加