パッケージ org.opengion.hayabusa.db
クラス DBColumn
- java.lang.Object
-
- org.opengion.hayabusa.db.DBColumn
-
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 DBColumn(String lang, ColumnData clmData, LabelData lblData, CodeData cdData)DBColumnConfig オブジェクトより作成されるコンストラクター すべての情報は、インスタンス作成時に設定します。DBColumn(DBColumnConfig config)DBColumnConfig オブジェクトより作成されるコンストラクター すべての情報は、インスタンス作成時に設定します。
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 StringgetAddKeyLabel()セレクトメニューの場合、キー:ラベル形式で表示するかどうか[true/false/null]を返します。StringgetClassName()カラムのクラスを文字列にした名称を返します。CodeDatagetCodeData()カラムのコードデータオブジェクトを返します。DBColumnConfiggetConfig()内部の設定情報オブジェクトを返します。StringgetDbid()接続先IDを返します。StringgetDbType()文字種別名を返します。StringgetDbTypeParam()データタイプのパラメータを取得します。StringgetDefault()そのカラムの,デフォルト値の値を返します。StringgetDescription()カラムの概要説明を返します。StringgetEditor()データの編集用エディターを返します。AttributesgetEditorAttributes()編集用エディター用の追加属性を返します。StringgetEditorParam()編集用エディターのパラメータを取得します。StringgetEditorValue(int row, String value)データ編集用のHTML文字列を作成します。StringgetEditorValue(String value)データ編集用のHTML文字列を作成します。StringgetEventColumn()イベントカラム(親カラム)。StringgetEventColumnTag(String tag, String initVal, boolean writable)引数のタグ文字列に対して、イベントカラムの実行に必要なspanタグを付加した 文字列を返します。StringgetEventColumnTag(String tag, String initVal, int row, boolean writable)引数のタグ文字列に対して、イベントカラムの実行に必要なspanタグを付加した 文字列を返します。StringgetEventURL()eventColumn利用時にJSで利用するURL。StringgetEventValue()イベントカラムの子カラムの値を出力するためのSQL文を返します。StringgetFieldSize()フィールドの入力枠サイズを返します。intgetFieldSize(int maxlength)引数の最大入力サイズより、実際のフィールドのサイズを求めます。StringgetFixedValue(String value, String encode)データ出力用の固定長文字列を作成します。StringgetLabel()カラムのラベル名を返します。LabelDatagetLabelData()カラムのラベルデータオブジェクトを返します。StringgetLang()言語を返します。StringgetLongLabel()カラムのラベル名を返します。StringgetMaxlength()フィールドの使用桁数を返します。StringgetName()カラム名を返します。NativeTypegetNativeType()データのNATIVEの型の識別コードを返します。StringgetNoDisplayVal()非表示文字列を返します。StringgetRawEditParam(){@XXXX}を変換していない状態の編集パラメータを返します。StringgetRawRendParam(){@XXXX}を変換していない状態の編集パラメータを返します。StringgetReaderValue(String value)データ入力用の文字列を作成します。StringgetRenderer()データの表示用レンデラーを返します。AttributesgetRendererAttributes()表示用レンデラーの追加属性を返します。StringgetRendererParam()表示用レンデラーのパラメータを取得します。StringgetRendererValue(int row, String value)データ表示用のHTML文字列を作成します。StringgetRendererValue(int row, String value, String param)データ表示用のHTML文字列を作成します。StringgetRendererValue(String value)データの値そのものではなく、その値のラベル文字を返します。RoleModegetRoleMode()カラムオブジェクトのロールモードを返します。StringgetRoles()カラムロールを取得します。StringgetShortLabel()カラムのラベル名を返します。intgetSizeX()フィールドの整数部のデータ長を返します。intgetSizeY()フィールドの小数部のデータ長を返します。intgetTotalSize()フィールドのデータ長を返します。StringgetUseSLabel()ラベル短ベースのメニューにするかどうか。StringgetViewLength()カラムの表示桁数を返します。StringgetWriteValue(String value)データ出力用の文字列を作成します。booleanisAddNoValue()メニューに空の選択リストを追加するかどうかを取得します。booleanisDateType()このカラムが、日付型かどうかを返します。booleanisNeedsParamParse()セットされている表示パラメータ、編集パラメータに"{@XXXX}"が含まれているか(パラメーターのパースが必要か)を 返します。booleanisNumberType()このカラムが、数値型かどうかを返します。booleanisOfficial()このカラムオブジェクトがカラムリソースより正式に作られたかどうかを取得します。booleanisStringOutput()レンデラー利用ファイル出力時に数値等も文字タイプに固定するかどうか (初期値:USE_STRING_EXCEL_OUTPUT[=])。booleanisWritable()カラムが書き込み可能かどうかを返します。booleanisWriteKeyLabel()セレクトメニューの場合、キーとラベルを分けて出力するかどうか[true/false]を取得します。StringtoString()オブジェクトの文字列表現を返します。StringvalueAction(String action, String oldValue, String newValue)action で指定されたコマンドを実行して、値の変換を行います。StringvalueAdd(String value, String add)String引数の文字列を+1した文字列を返します。ErrorMessagevalueCheck(String value)データが登録可能かどうかをチェックします。ErrorMessagevalueCheck(String value, boolean isStrict)データが登録可能かどうかをチェックします。StringvalueSet(String value)エディターで編集されたデータを登録する場合に、データそのものを 変換して、実登録データを作成します。
-
-
-
コンストラクタの詳細
-
DBColumn
public DBColumn(String lang, ColumnData clmData, LabelData lblData, CodeData cdData)
DBColumnConfig オブジェクトより作成されるコンストラクター すべての情報は、インスタンス作成時に設定します。 このオブジェクトは、1度作成されると変更されることはありません。- パラメータ:
lang- 言語clmData- カラムデータオブジェクトlblData- ラベルデータオブジェクトcdData- コードデータオブジェクト
-
DBColumn
public DBColumn(DBColumnConfig config)
DBColumnConfig オブジェクトより作成されるコンストラクター すべての情報は、インスタンス作成時に設定します。 このオブジェクトは、1度作成されると変更されることはありません。- パラメータ:
config- DBColumnConfigオブジェクト
-
-
メソッドの詳細
-
getShortLabel
public String getShortLabel()
カラムのラベル名を返します。- 戻り値:
- カラムのラベル名(名前(短))
-
getLongLabel
public String getLongLabel()
カラムのラベル名を返します。- 戻り値:
- カラムのラベル名(名前(長))
-
getDescription
public String getDescription()
カラムの概要説明を返します。- 戻り値:
- カラムの概要説明
-
isNumberType
public boolean isNumberType()
このカラムが、数値型かどうかを返します。 ColumnDataのgetClassName() の値が、"NUMBER" , "INTEGER" , "DECIMAL" , "INT64" の場合、true:数値型 を返します。- 戻り値:
- カラムが、数値型かどうか
-
isDateType
public boolean isDateType()
このカラムが、日付型かどうかを返します。 ColumnDataのgetClassName() の値が、"DATE" , "TIMESTAMP" の場合、true:数値型 を返します。- 戻り値:
- カラムが、日付型かどうか
-
getClassName
public String getClassName()
カラムのクラスを文字列にした名称を返します。 内容的には、カラムの className の値と、dbTypeの値をマージした値になります。 さらに、editorAttributesの "class"キーワードの値もマージします。 ただし、この値には、must属性も設定されているため、それだけは除外します。 各種スタイルを表現するのに使用します。- 戻り値:
- カラムのクラスを文字列にした名称(X9,X,など)
- 関連項目:
getDbType()
-
getTotalSize
public int getTotalSize()
フィールドのデータ長を返します。 通常は、整数型の文字列とデータ長は同じですが,小数点を表すデータ長は x,y 形式の場合、x + 2 桁で表されます。(マイナス記号と小数点記号) 7,3 は、 xxxx,yyy のフォーマットで、データ長は、9 になります。- 戻り値:
- データ長定義文字列
-
getMaxlength
public String getMaxlength()
フィールドの使用桁数を返します。 小数指定の場合は、"7,3" のようなカンマで整数部、小数部を区切った書式になります。 7,3 は、 xxxx,yyy のフォーマットで、整数部4桁、小数部3桁を意味します。- 戻り値:
- 使用桁数
-
getSizeX
public int getSizeX()
フィールドの整数部のデータ長を返します。 通常は、整数型の文字列とデータ長は同じですが,小数点を表すデータ長は x,y 形式の場合、x - y 桁で表されます。(マイナス記号含まず) 7,3 は、 xxxx,yyy のフォーマットで、データ長は、4 になります。- 戻り値:
- データ長定義文字列
-
getSizeY
public int getSizeY()
フィールドの小数部のデータ長を返します。 通常は、整数型の文字列では、0 になりますが,小数点を表すデータ長は x,y 形式の場合、y 桁で表されます。 7,3 は、 xxxx,yyy のフォーマットで、データ長は、3 になります。- 戻り値:
- データ長定義文字列
-
getViewLength
public String getViewLength()
カラムの表示桁数を返します。 viewLength は、設定した場合のみ、使用できます。通常は、null が返ります。- 戻り値:
- カラムの文字桁数
-
isWritable
public boolean isWritable()
カラムが書き込み可能かどうかを返します。- 戻り値:
- カラムが書き込み可能かどうか
-
getRendererValue
public String getRendererValue(String value)
データの値そのものではなく、その値のラベル文字を返します。- パラメータ:
value- 入力値- 戻り値:
- データ表示用の文字列
-
getRendererValue
public String getRendererValue(int row, String value)
データ表示用のHTML文字列を作成します。 行番号毎に異なる値を返すことの出来る DBCellRenderer を使用することが出来ます。- パラメータ:
row- 行番号value- 入力値- 戻り値:
- データ編集用の文字列
-
getRendererValue
public String getRendererValue(int row, String value, String param)
データ表示用のHTML文字列を作成します。 行番号毎に異なる値を返すことの出来る DBCellRenderer を使用することが出来ます。 第3引数に、パラメータを渡すことが出来ます。これは、viewMarker で [$XXXX param] 形式を渡すことで、行単位に表示形式を変更できます。 AbstractRenderer では、#getValue( String ) を呼び出しています。- パラメータ:
row- 行番号value- 入力値param- パラメータ- 戻り値:
- データ編集用の文字列
-
getWriteValue
public String getWriteValue(String value)
データ出力用の文字列を作成します。 ファイル等に出力する形式を想定しますので、HTMLタグを含まない データを返します。 writeKeyLabel == true かつ addKeyLabel == "true" の場合は、":" で分離して、 ラベルのみを返します。 IO側で、カラムを分けて出力するので、VAL:LBL ではなく、LBL だけ出力します。 7.0.1.5 (2018/12/10)- パラメータ:
value- 入力値- 戻り値:
- データ出力用の文字列
-
getReaderValue
public String getReaderValue(String value)
データ入力用の文字列を作成します。 ファイル等から、読み取る場合に、このメソッド経由で、必要な形式変換を行います。 現時点では、KEY:VAL形式の Selection オブジェクト経由でデータを取り込む場合、 KEY に分解処理します。- パラメータ:
value- 入力値- 戻り値:
- データ入力用の文字列
-
getEditorValue
public String getEditorValue(String value)
データ編集用のHTML文字列を作成します。- パラメータ:
value- 入力値- 戻り値:
- データ編集用の文字列
-
getEditorValue
public String getEditorValue(int row, String value)
データ編集用のHTML文字列を作成します。 行番号付の編集データを作成します。名前_行番号 で登録する為、 リクエスト情報を1つ毎のフィールドで処理できます。- パラメータ:
row- 行番号value- 入力値- 戻り値:
- データ編集用の文字列
-
getFixedValue
public String getFixedValue(String value, String encode)
データ出力用の固定長文字列を作成します。 HOST送信用桁数がセットされていれば、そちらを優先します。- パラメータ:
value- 対象の値encode- 固定長で変換する文字エンコード- 戻り値:
- データ編集用の文字列
-
getRenderer
public String getRenderer()
データの表示用レンデラーを返します。- 戻り値:
- データの表示用レンデラー
-
getDbType
public String getDbType()
文字種別名を返します。 カラムの文字種別名名称を返します。 これは,HTML上の各種タグに,データベース定義に応じたクラスを セットし,CSS(Cascading Style Sheet)の class="xxxxx" とする事により 各種スタイルを表現するのに使用します。 ここでは, カラムリソースの DBTYPE 属性で指定の文字列(X,S9,KXなど)を返します。- 戻り値:
- データの文字種別(X,KX,S9 など)
-
getNativeType
public NativeType getNativeType()
データのNATIVEの型の識別コードを返します。- 戻り値:
- NATIVEの型の識別コード(DBType で規定)
- 関連項目:
NativeType
-
getDefault
public String getDefault()
そのカラムの,デフォルト値の値を返します。 カラムリソースに デフォルト情報が登録されている場合は,その値を返します。 デフォルト値が設定されていない場合は, null を返します。- 戻り値:
- デフォルト値(無ければ null)
-
getRendererParam
public String getRendererParam()
表示用レンデラーのパラメータを取得します。- 戻り値:
- 表示用レンデラーのパラメータ
-
getEditorParam
public String getEditorParam()
編集用エディターのパラメータを取得します。- 戻り値:
- 編集用エディターのパラメータ
-
getDbTypeParam
public String getDbTypeParam()
データタイプのパラメータを取得します。- 戻り値:
- データタイプのパラメータ
-
getRoleMode
public RoleMode getRoleMode()
カラムオブジェクトのロールモードを返します。- 戻り値:
- カラムオブジェクトのロールモード
-
valueAdd
public String valueAdd(String value, String add)
String引数の文字列を+1した文字列を返します。 これは、英字の場合(A,B,C など)は、B,C,D のように,最終桁の文字コードを +1 します。 文字列が数字タイプの場合は, 数字に変換して、+1 します。(桁上がりもあり) 混在タイプの場合は,最後の桁だけを確認して +1します。 引数が null の場合と、ゼロ文字列("")の場合は,引数を,そのまま返します。 ※ 機能拡張:第2引数に指定の文字列(数字、日付等)を指定する事で、 引数の文字列に、任意の値を加算できるようにします。 ただし、すべての DBTypeではなく、ある程度特定します。 対象外の DBTypeで、第2引数が null 出ない場合は、Exception を Throwsします。 第2引数が、null の場合は、従来と同じ+1します。- パラメータ:
value- 引数の文字列add- 加算する文字列(null の場合は、従来と同じ、+1 します。)- 戻り値:
- 引数の文字列を+1した文字列。または、任意の値を加算した文字列。
-
valueCheck
public ErrorMessage valueCheck(String value)
データが登録可能かどうかをチェックします。 データがエラーの場合は、そのエラー内容を返します。- パラメータ:
value- チェック対象の値- 戻り値:
- エラー内容 正常時は null
- 関連項目:
valueCheck( String , boolean )
-
valueCheck
public ErrorMessage valueCheck(String value, boolean isStrict)
データが登録可能かどうかをチェックします。 データがエラーの場合は、そのエラー内容を返します。- パラメータ:
value- チェック対象の値isStrict- 厳密にチェック(isStrict=true)するかどうか- 戻り値:
- エラー内容 正常時は null
-
valueSet
public String valueSet(String value)
エディターで編集されたデータを登録する場合に、データそのものを 変換して、実登録データを作成します。 例えば,大文字のみのフィールドなら、大文字化します。 実登録データの作成は、DBType オブジェクトを利用しますので, これと DBCellEditor とがアンマッチの場合は、うまくデータ変換 されない可能性がありますので、注意願います。- パラメータ:
value- 一般に編集データとして登録されたデータ- 戻り値:
- 修正後の文字列(一般にデータベースに登録するデータ)
-
valueAction
public String valueAction(String action, String oldValue, String newValue)
action で指定されたコマンドを実行して、値の変換を行います。 oldValue(旧データ)は、元のDBTableModelに設定されていた値です。通常は、 この値を使用してカラム毎に変換を行います。newValue(新データ)は、引数で 指定された新しい値です。この値には、パラメータを指定して変換方法を 制御することも可能です。 指定のアクションがカラムで処理できない場合は、エラーになります。- パラメータ:
action- アクションコマンドoldValue- 入力データ(旧データ)newValue- 入力データ(新データ)- 戻り値:
- 実行後のデータ
-
getConfig
public DBColumnConfig getConfig()
内部の設定情報オブジェクトを返します。 このオブジェクトを ローカルで書き換えて、DBColumn を作るようにします。- 戻り値:
- 設定情報オブジェクト
-
getRendererAttributes
public Attributes getRendererAttributes()
表示用レンデラーの追加属性を返します。- 戻り値:
- 属性リスト
-
getEditorAttributes
public Attributes getEditorAttributes()
編集用エディター用の追加属性を返します。- 戻り値:
- 属性リスト
-
isAddNoValue
public boolean isAddNoValue()
メニューに空の選択リストを追加するかどうかを取得します。- 戻り値:
- 空の選択リストを追加するかどうか(true:追加する/false:追加しない)
-
getAddKeyLabel
public String getAddKeyLabel()
セレクトメニューの場合、キー:ラベル形式で表示するかどうか[true/false/null]を返します。 これは、上位入れ子のタグの OptionTag で、addKeyLabel を取り出して、 true であれば、キー:ラベル形式 のオプションを、#addOption( String ) で 登録させます。- 戻り値:
- true:キー:ラベル形式/false:ラベルのみ/null:指定通り
-
isWriteKeyLabel
public boolean isWriteKeyLabel()
セレクトメニューの場合、キーとラベルを分けて出力するかどうか[true/false]を取得します。 カラムがプルダウンメニュー形式の場合、ファイル出力時に、キーとラベルを分離して出力する事ができます。 この属性と、addKeyLabel とは、微妙に関連していて、addKeyLabel="true" のみの場合は、 キー:ラベル形式で、出力されますが、writeKeyLabel="true" も指定されている場合は、こちらが優先されます。 なお、この指定が有効なのは、セレクトメニューのカラムのみです。- 戻り値:
- キー/ラベル分離出力するかどうか[true:分離出力/false:通常]
-
isOfficial
public boolean isOfficial()
このカラムオブジェクトがカラムリソースより正式に作られたかどうかを取得します。 カラムリソースが無い場合は、仮オブジェクトかデータベースメタデータより作成されます。 その場合は、チェック機能が緩くなるため、正式なカラムオブジェクトと区別する為に この属性を持ちます。- 戻り値:
- 正式に作られたかどうか(true:正式/false:暫定)
-
getLabelData
public LabelData getLabelData()
カラムのラベルデータオブジェクトを返します。- 戻り値:
- カラムのラベルデータオブジェクト
-
getCodeData
public CodeData getCodeData()
カラムのコードデータオブジェクトを返します。 コードデータが存在しない場合は、null を返します。 受け取り側で、null かどうか判定してから使用してください。- 戻り値:
- カラムのコードデータオブジェクト
-
getFieldSize
public String getFieldSize()
フィールドの入力枠サイズを返します。 これは、設定された値そのものを返しますので、未設定の時は、null が返ります。 テキストフィールドのサイズに該当します。 何も指定しない場合は、null が返ります。 その場合の、入力枠サイズは、maxlength が使用されます。 ただし、桁数が大きい場合は、システム定数の HTML_COLUMNS_MAXSIZE や、 HTML_VIEW_COLUMNS_MAXSIZE で指定された値が使われます。 それらの値よりも、ここで取得 した fieldSize が優先されます。- 戻り値:
- 入力枠サイズ
-
getFieldSize
public int getFieldSize(int maxlength)
引数の最大入力サイズより、実際のフィールドのサイズを求めます。 計算方法 ① fieldSize があれば、その値を返します。 ② ColumnData#getTotalSize() を求め、あれば、その値を返す。 ③ totalSizeが、引数の最大入力サイズより大きい場合は、引数の最大入力サイズを返す。 各呼び出すメソッドは、引数の最大入力サイズ のみ指定します。それ以外の値は、内部の値を使います。 最大入力サイズは、システム定数の、HTML_COLUMNS_MAXSIZE か、HTML_VIEW_COLUMNS_MAXSIZE が 一般的です。- パラメータ:
maxlength- 最大入力サイズ- 戻り値:
- 表示すべきサイズ
- 関連項目:
getFieldSize()
-
getEventColumn
public String getEventColumn()
イベントカラム(親カラム)。- 戻り値:
- イベントカラム
-
getEventValue
public String getEventValue()
イベントカラムの子カラムの値を出力するためのSQL文を返します。- 戻り値:
- イベントカラムの値SQL文
-
getRawEditParam
public String getRawEditParam()
{@XXXX}を変換していない状態の編集パラメータを返します。- 戻り値:
- 生編集パラメータ
-
getRawRendParam
public String getRawRendParam()
{@XXXX}を変換していない状態の編集パラメータを返します。- 戻り値:
- 生表示パラメータ
-
getEventURL
public String getEventURL()
eventColumn利用時にJSで利用するURL。- 戻り値:
- イベントURL
-
getEventColumnTag
public String getEventColumnTag(String tag, String initVal, boolean writable)
引数のタグ文字列に対して、イベントカラムの実行に必要なspanタグを付加した 文字列を返します。- パラメータ:
tag- タグ文字列initVal- 子カラムの初期値writable- タグの要素が書き込み可能かどうか- 戻り値:
- spanタグを付加したタグ文字列
-
getEventColumnTag
public String getEventColumnTag(String tag, String initVal, int row, boolean writable)
引数のタグ文字列に対して、イベントカラムの実行に必要なspanタグを付加した 文字列を返します。- パラメータ:
tag- タグ文字列initVal- 子カラムの初期値row- 行番号writable- タグの要素が書き込み可能かどうか- 戻り値:
- spanタグを付加したタグ文字列
-
isNeedsParamParse
public boolean isNeedsParamParse()
セットされている表示パラメータ、編集パラメータに"{@XXXX}"が含まれているか(パラメーターのパースが必要か)を 返します。- 戻り値:
- "{@XXXX}"が含まれているか(含まれている場合true)
-
getUseSLabel
public String getUseSLabel()
ラベル短ベースのメニューにするかどうか。- 戻り値:
- イベントカラム
-
getNoDisplayVal
public String getNoDisplayVal()
非表示文字列を返します。 これは、例えば、数字型の場合は、0 がデフォルトなどの場合、 あえて表示したくないなどのケースに使います。 そのような状況が設定されていない場合は、null が返されます。- 戻り値:
- 非表示文字
-
isStringOutput
public boolean isStringOutput()
レンデラー利用ファイル出力時に数値等も文字タイプに固定するかどうか (初期値:USE_STRING_EXCEL_OUTPUT[=])。 これは、レンデラーでのExcel出力時のセルタイプに影響します。 trueの場合は数値も全て文字として出力します。 falseの場合はDBTYPEに従った出力になりるため、数値型の DBTYPE では、doubleに一度変換されます。 (初期値:USE_STRING_EXCEL_OUTPUT[=])。- 戻り値:
- レンデラー利用時の出力方法 (true:String出力/false:DBTYPEに従う)
-
-