OpenMeisterEnterprise®/EF
システム基盤 Ver.4.6
APIリファレンス

jp.co.nec.ome.utility
クラス OmStringFieldAttribute

java.lang.Object
  拡張jp.co.nec.ome.utility.OmFieldAttribute
      拡張jp.co.nec.ome.utility.OmStringFieldAttribute
すべての実装インタフェース:
java.io.Serializable

public class OmStringFieldAttribute
extends OmFieldAttribute

文字列を格納するデータフィールドクラスです
内部設定値としてStringオブジェクトを持ちます。
内部設定値を設定、取得、評価するメソッドが提供されます。
OmFieldAttributeクラスから以下の属性が拡張されています。

以下の条件で内部設定値を評価します。

専用のエラーハンドラOmInvalidStringFieldValueHandlerが設定されている 場合はエラーに対応するエラーハンドラのメソッドが呼び出されます。
文字列のバイト数を計算する際は設定されているエンコーディングを用いて 行います。
エンコーディングの初期値としてシステムプロパティの ome.EncodingForStringFieldLengthCountに設定されている値を 使用しますが、設定されていないときは MS932 をデフォルトとして使用します。

JIS2004追加文字などのシフトJISで表現できない文字が設定された場合には、 システムプロパティのome.ReplaceNotSJISCharacterに 置換用文字を設定すれば自動的にその文字に置き換えて保持します。

使用方法:

 //商品コードを格納するフィールドを作成
 OmStringFieldAttribute syohincd = new OmStringFieldAttribute();
 //必須入力設定
 syohincd.setNotNull(true);
 //半角英数のみ
 syohincd.setCharacterType(OmStringFieldAttribute.TYPE_ALPHABET_NUMERIC);
 //チェックでエラーが出たときの処理を定義
 syohincd.setInvalidFieldValueHandler(new OmInvalidStringFieldValueHandler() {
   public void nullValue() {
     System.out.println("商品コードは必須入力項目です。");
   }
   public void invalidCharacterType() {
     System.out.println("使用できる文字は半角英数字のみです。");
   }
 });
 

導入されたバージョン:
OpenMeisterEnterprise/EF 2.1
関連項目:
直列化された形式

フィールドの概要
protected  int byteLength
          フィールドの文字列値のバイト数
protected  int characterType
          フィールドのキャラクタ型
static java.lang.String DEFAULT_ENCODING
          デフォルトで使用するエンコーディング
protected  java.lang.String encoding
          フィールドの文字エンコーディング
protected static int ERROR_INVALID_CHARACTER_TYPE
          文字種別が不正であることを示す内部エラーコード
protected static int ERROR_NONE
          エラーが無いことを示す内部エラーコード
protected static int ERROR_NULL_VALUE
          文字列が設定されていないことを示す内部エラーコード
protected static int ERROR_TOO_LONG
          設定された文字列が長すぎることを示す内部エラーコード
protected static int ERROR_TOO_SHORT
          設定された文字列が短すぎることを示す内部エラーコード
static java.lang.String KEY_ENCODING
          デフォルトで使用するエンコーディングを表わすシステムプロパティのキー
static java.lang.String KEY_REPLACE_CHARACTER
          Shift_JIS(MS932)で表現できない文字の置き換え文字を表わすシステムプロパティのキー
protected  boolean limitLength
          フィールドの文字列長の制限の有無
protected  int maxLength
          フィールドの最大文字数
protected  int minLength
          フィールドの最小文字数
protected static java.lang.String replaceNotSJISCharacter
          非Shift_JIS文字の置き換え用文字(列)
protected  boolean trimValue
          文字列設定時のトリム制御フラグです。
static int TYPE_ALPHABET
          文字種別半角英字
static int TYPE_ALPHABET_NUMERIC
          文字種別半角英数字
static int TYPE_ANK
          文字種別半角英数字カナ
static int TYPE_ANY
          文字種別制限なし
static int TYPE_ASCII
          文字種別ASCII文字
static int TYPE_KANA
          文字種別半角カナ
static int TYPE_NUMERIC
          文字種別半角数字
static int TYPE_SJIS
          文字種別Shift-JIS 2バイト文字
static int TYPE_SYMBOL
          文字種別半角記号
protected  java.lang.String value
          フィールドの文字列値
 
クラス jp.co.nec.ome.utility.OmFieldAttribute から継承したフィールド
invalidFieldValueHandler, notNull
 
コンストラクタの概要
OmStringFieldAttribute()
          初期値をnullとして 文字列フィールドを作成します。
OmStringFieldAttribute(java.lang.String argValue)
          初期値として文字列を設定してフィールドを作成します。
OmStringFieldAttribute(java.lang.String argValue, boolean argTrim)
          初期値として文字列とトリム制御フラグを設定してフィールドを作成します。
 
メソッドの概要
 java.lang.String formatDate()
          OmDateFormatクラスのデフォルト書式にて フォーマットした文字列を返却します。
 java.lang.String formatDate(java.lang.String argFormat)
          与えられた書式をOmDateFormatクラスに引き渡し フォーマットした文字列を返却します。
 java.lang.String formatNumber()
          OmNumberFormatクラスのデフォルト書式にて フォーマットした文字列を返却します。
 java.lang.String formatNumber(java.lang.String argFormat)
          与えられた書式をOmNumberFormatクラスに引き渡し フォーマットした文字列を返却します。
 java.lang.String formatNumber(java.lang.String argFormat, int argIntegralNumber)
          与えられた書式、桁あわせする整数桁数を OmNumberFormatクラスに引き渡しフォーマットした 文字列を返却します。
 java.lang.String formatNumber(java.lang.String argFormat, int argIntegralNumber, int argDecimalNumber)
          与えられた書式、桁あわせする整数桁数、桁あわせする小数桁数を OmNumberFormatクラスに引き渡しフォーマットした 文字列を返却します。
 java.lang.String formatNumber(java.lang.String argFormat, int argIntegralNumber, int argDecimalNumber, java.lang.String argReplaceSpace)
          与えられた書式、桁あわせする整数桁数、桁あわせする小数桁数、 桁合わせ時の余白文字をOmNumberFormatクラスに 引き渡しフォーマットした文字列を返却します。
 java.lang.String formatNumber(java.lang.String argFormat, int argIntegralNumber, java.lang.String argReplaceSpace)
          与えられた書式、桁あわせする整数桁数、桁合わせ時の余白文字を OmNumberFormatクラスに引き渡しフォーマットした 文字列を返却します。
 int getCharacterType()
          文字列に使用できる文字種別を取得します。
 java.lang.String getEncoding()
          フィールドの文字エンコーディングを取得します。
 int getMaxLength()
          文字列の長さの最大値をバイトサイズで取得します。
 int getMinLength()
          文字列の長さの最小値をバイトサイズで取得します。
protected  int getType(char argCharacter)
          与えられた文字の種別を内部コードで返します。
 java.lang.String getValue()
          文字列を取得します。
protected  int internalValidate()
          設定された値がこの属性に対して正当かを判断した内部エラーコードを 返します。
 boolean isLimitLength()
          文字列の長さが制限されているかを取得します。
protected  boolean isNotNullValue()
          このフィールドに値が設定されているかを調べます。
 boolean isTrim()
          文字列を設定するときに前後の空白を除去するかどうかを取得します。
protected  boolean isValidCharacterType()
          文字列型の内部値の文字種別のチェックを行います。
 void limitLength(int argMinLength, int argMaxLength)
          文字列の長さを制限します。
 void limitMaxLength(int argMaxLength)
          文字列の長さの最大長を制限します。
 void limitMinLength(int argMinLength)
          文字列の長さの最小長を制限します。
 void setCharacterType(int argCharacterType)
          文字列に使用できる文字種別を設定します。
 void setEncoding(java.lang.String argEncoding)
          フィールドの文字エンコーディングを設定します。
 void setTrim(boolean argTrim)
          文字列を設定するときに前後の空白を除去するかどうかを設定します。
 void setValue(java.lang.String argValue)
          文字列を設定します。
 java.lang.String toString()
          ブラウザで表示可能な文字列表現で値を取得し返却します。
 void unlimitLength()
          文字列の長さを制限しません。
 boolean validate()
          設定された値がこの属性に対して正当かを判断します。
protected  int valueByteSize()
          文字列型の内部値のバイトサイズを返します。
 
クラス jp.co.nec.ome.utility.OmFieldAttribute から継承したメソッド
getInvalidFieldValueHandler, isNotNull, setInvalidFieldValueHandler, setNotNull
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

KEY_REPLACE_CHARACTER

public static final java.lang.String KEY_REPLACE_CHARACTER
Shift_JIS(MS932)で表現できない文字の置き換え文字を表わすシステムプロパティのキー

関連項目:
定数フィールド値

DEFAULT_ENCODING

public static final java.lang.String DEFAULT_ENCODING
デフォルトで使用するエンコーディング

関連項目:
定数フィールド値

KEY_ENCODING

public static final java.lang.String KEY_ENCODING
デフォルトで使用するエンコーディングを表わすシステムプロパティのキー

関連項目:
定数フィールド値

TYPE_ANY

public static final int TYPE_ANY
文字種別制限なし

関連項目:
定数フィールド値

TYPE_ALPHABET

public static final int TYPE_ALPHABET
文字種別半角英字

関連項目:
定数フィールド値

TYPE_NUMERIC

public static final int TYPE_NUMERIC
文字種別半角数字

関連項目:
定数フィールド値

TYPE_ALPHABET_NUMERIC

public static final int TYPE_ALPHABET_NUMERIC
文字種別半角英数字

関連項目:
定数フィールド値

TYPE_KANA

public static final int TYPE_KANA
文字種別半角カナ

関連項目:
定数フィールド値

TYPE_ANK

public static final int TYPE_ANK
文字種別半角英数字カナ

関連項目:
定数フィールド値

TYPE_SJIS

public static final int TYPE_SJIS
文字種別Shift-JIS 2バイト文字

関連項目:
定数フィールド値

TYPE_SYMBOL

public static final int TYPE_SYMBOL
文字種別半角記号

関連項目:
定数フィールド値

TYPE_ASCII

public static final int TYPE_ASCII
文字種別ASCII文字

関連項目:
定数フィールド値

ERROR_NONE

protected static final int ERROR_NONE
エラーが無いことを示す内部エラーコード

関連項目:
定数フィールド値

ERROR_NULL_VALUE

protected static final int ERROR_NULL_VALUE
文字列が設定されていないことを示す内部エラーコード

関連項目:
定数フィールド値

ERROR_INVALID_CHARACTER_TYPE

protected static final int ERROR_INVALID_CHARACTER_TYPE
文字種別が不正であることを示す内部エラーコード

関連項目:
定数フィールド値

ERROR_TOO_SHORT

protected static final int ERROR_TOO_SHORT
設定された文字列が短すぎることを示す内部エラーコード

関連項目:
定数フィールド値

ERROR_TOO_LONG

protected static final int ERROR_TOO_LONG
設定された文字列が長すぎることを示す内部エラーコード

関連項目:
定数フィールド値

replaceNotSJISCharacter

protected static java.lang.String replaceNotSJISCharacter
非Shift_JIS文字の置き換え用文字(列)


characterType

protected int characterType
フィールドのキャラクタ型


limitLength

protected boolean limitLength
フィールドの文字列長の制限の有無


minLength

protected int minLength
フィールドの最小文字数


maxLength

protected int maxLength
フィールドの最大文字数


value

protected java.lang.String value
フィールドの文字列値


byteLength

protected int byteLength
フィールドの文字列値のバイト数


encoding

protected java.lang.String encoding
フィールドの文字エンコーディング


trimValue

protected boolean trimValue
文字列設定時のトリム制御フラグです。
setValue()メソッドが呼び出されて文字列が設定される際に使用されます。

コンストラクタの詳細

OmStringFieldAttribute

public OmStringFieldAttribute()
初期値をnullとして 文字列フィールドを作成します。


OmStringFieldAttribute

public OmStringFieldAttribute(java.lang.String argValue)
初期値として文字列を設定してフィールドを作成します。
トリム制御フラグはデフォルトのtrueとなり、トリム処理された文字列が設定されます。

パラメータ:
argValue - フィールドの初期文字列

OmStringFieldAttribute

public OmStringFieldAttribute(java.lang.String argValue,
                              boolean argTrim)
初期値として文字列とトリム制御フラグを設定してフィールドを作成します。

パラメータ:
argValue - フィールドの初期文字列
argTrim - トリム制御フラグ
メソッドの詳細

setCharacterType

public void setCharacterType(int argCharacterType)
文字列に使用できる文字種別を設定します。
設定できるのは以下の値、もしくは以下の値を|(OR)結合したものです。

制限なし TYPE_ANY
半角英字 TYPE_ALPHABET
半角数字 TYPE_NUMERIC
半角カナ TYPE_KANA
全角文字 TYPE_SJIS
半角英数字 TYPE_ALPHABET_NUMERIC (= TYPE_ALPHABET | TYPE_NUMERIC)
半角英数字カナTYPE_ANK (= TYPE_ALPHABET_NUMERIC | TYPE_KANA)
半角記号 TYPE_SYMBOL
ASCII文字 TYPE_ASCII (=TYPE_ALPHABET_NUMERIC | TYPE_SYMBOL)

パラメータ:
argCharacterType - 文字種別

getCharacterType

public int getCharacterType()
文字列に使用できる文字種別を取得します。

戻り値:
文字種別

isLimitLength

public boolean isLimitLength()
文字列の長さが制限されているかを取得します。

戻り値:
true:長さ制限あり
false:長さ制限なし

getMinLength

public int getMinLength()
文字列の長さの最小値をバイトサイズで取得します。

戻り値:
文字列の最小バイトサイズ

getMaxLength

public int getMaxLength()
文字列の長さの最大値をバイトサイズで取得します。

戻り値:
文字列の最大バイトサイズ

setValue

public void setValue(java.lang.String argValue)
文字列を設定します。
トリム制御フラグがtrueの場合は、トリムされた文字列が設定されます。

パラメータ:
argValue - 設定する文字列

getValue

public java.lang.String getValue()
文字列を取得します。

戻り値:
設定されている文字列

setEncoding

public void setEncoding(java.lang.String argEncoding)
フィールドの文字エンコーディングを設定します。
デフォルトは "MS932" です。 この設定はフィールドに設定された文字列のバイト数を計算する際に
用いられます。

パラメータ:
argEncoding - 文字エンコーディング

getEncoding

public java.lang.String getEncoding()
フィールドの文字エンコーディングを取得します。

戻り値:
文字エンコーディング

limitLength

public void limitLength(int argMinLength,
                        int argMaxLength)
文字列の長さを制限します。

パラメータ:
argMinLength - 文字列の最小長
argMaxLength - 文字列の最大長

limitMinLength

public void limitMinLength(int argMinLength)
文字列の長さの最小長を制限します。

パラメータ:
argMinLength - 文字列の最小長

limitMaxLength

public void limitMaxLength(int argMaxLength)
文字列の長さの最大長を制限します。

パラメータ:
argMaxLength - 文字列の最大長

unlimitLength

public void unlimitLength()
文字列の長さを制限しません。


setTrim

public void setTrim(boolean argTrim)
文字列を設定するときに前後の空白を除去するかどうかを設定します。

パラメータ:
argTrim -
true : 前後の空白を除去する
false: 前後の空白を除去しない

isTrim

public boolean isTrim()
文字列を設定するときに前後の空白を除去するかどうかを取得します。

戻り値:
true : 前後の空白を除去する
false: 前後の空白を除去しない

validate

public boolean validate()
設定された値がこの属性に対して正当かを判断します。

定義:
クラス OmFieldAttribute 内の validate
戻り値:
true:設定値が正当
false:設定値が不正

formatNumber

public java.lang.String formatNumber()
OmNumberFormatクラスのデフォルト書式にて フォーマットした文字列を返却します。

戻り値:
フォーマット処理後の文字列

formatNumber

public java.lang.String formatNumber(java.lang.String argFormat)
与えられた書式をOmNumberFormatクラスに引き渡し フォーマットした文字列を返却します。

パラメータ:
argFormat - 書式(形式はOmNumberFormat クラスを参照)
戻り値:
フォーマット処理後の文字列

formatNumber

public java.lang.String formatNumber(java.lang.String argFormat,
                                     int argIntegralNumber)
与えられた書式、桁あわせする整数桁数を OmNumberFormatクラスに引き渡しフォーマットした 文字列を返却します。

パラメータ:
argFormat - 書式(形式はOmNumberFormat クラスを参照)
argIntegralNumber - 桁あわせする整数桁数
戻り値:
フォーマット処理後の文字列

formatNumber

public java.lang.String formatNumber(java.lang.String argFormat,
                                     int argIntegralNumber,
                                     int argDecimalNumber)
与えられた書式、桁あわせする整数桁数、桁あわせする小数桁数を OmNumberFormatクラスに引き渡しフォーマットした 文字列を返却します。

パラメータ:
argFormat - 書式(形式はOmNumberFormat クラスを参照)
argIntegralNumber - 桁あわせする整数桁数
argDecimalNumber - 桁あわせする小数桁数
戻り値:
フォーマット処理後の文字列

formatNumber

public java.lang.String formatNumber(java.lang.String argFormat,
                                     int argIntegralNumber,
                                     java.lang.String argReplaceSpace)
与えられた書式、桁あわせする整数桁数、桁合わせ時の余白文字を OmNumberFormatクラスに引き渡しフォーマットした 文字列を返却します。

パラメータ:
argFormat - 書式(形式はOmNumberFormat クラスを参照)
argIntegralNumber - 桁あわせする整数桁数
argReplaceSpace - 桁あわせ時の余白文字
戻り値:
フォーマット処理後の文字列

formatNumber

public java.lang.String formatNumber(java.lang.String argFormat,
                                     int argIntegralNumber,
                                     int argDecimalNumber,
                                     java.lang.String argReplaceSpace)
与えられた書式、桁あわせする整数桁数、桁あわせする小数桁数、 桁合わせ時の余白文字をOmNumberFormatクラスに 引き渡しフォーマットした文字列を返却します。

パラメータ:
argFormat - 書式(形式はOmNumberFormat クラスを参照)
argIntegralNumber - 桁あわせする整数桁数
argDecimalNumber - 桁あわせする小数桁数
argReplaceSpace - 桁あわせ時の余白文字
戻り値:
フォーマット処理後の文字列

formatDate

public java.lang.String formatDate()
OmDateFormatクラスのデフォルト書式にて フォーマットした文字列を返却します。

戻り値:
フォーマット処理後の文字列

formatDate

public java.lang.String formatDate(java.lang.String argFormat)
与えられた書式をOmDateFormatクラスに引き渡し フォーマットした文字列を返却します。

パラメータ:
argFormat - 書式(形式はOmDateFormat クラスを参照)
戻り値:
フォーマット処理後の文字列

toString

public java.lang.String toString()
ブラウザで表示可能な文字列表現で値を取得し返却します。

戻り値:
ブラウザで表示可能な文字列表現の値

internalValidate

protected int internalValidate()
設定された値がこの属性に対して正当かを判断した内部エラーコードを 返します。

戻り値:
内部エラーコード

isValidCharacterType

protected boolean isValidCharacterType()
文字列型の内部値の文字種別のチェックを行います。
設定されている文字種別以外の文字を含む場合はエラーとします。
nullの場合は true を返却する。

戻り値:
true:チェックOK
false:チェックNG

getType

protected int getType(char argCharacter)
与えられた文字の種別を内部コードで返します。

パラメータ:
argCharacter - 調べる文字
戻り値:
キャラクターの種別

valueByteSize

protected int valueByteSize()
文字列型の内部値のバイトサイズを返します。
サイズは設定されている文字エンコーディングに依存します。
不正な文字エンコーディングが設定されている場合は0を返します。

戻り値:
バイトサイズ

isNotNullValue

protected boolean isNotNullValue()
このフィールドに値が設定されているかを調べます。

戻り値:
true:値が設定されている
false:値が設定されていない

OpenMeisterEnterprise®/EF
システム基盤 Ver.4.6
APIリファレンス

OpenMeisterEnterprise®は、NECシステムテクノロジー株式会社の登録商標です。