title: RDB:Module Constants
author: YOSHIDA Kazuhiro
mailto: moriq@moriq.com

1. RDB:module constants

RDB module で定義される定数は次のとおり。

: DataSetState
  データセットコンポーネントの現在の操作モードを示します。

  : DS_INACTIVE
    データセットが閉じられているため，データは使用できない
  : DS_BROWSE
    データは表示できるが，変更できない。これは，オープンしているデータセットのデフォルトの状態である
  : DS_EDIT
    アクティブなレコードを変更できる
  : DS_INSERT
    アクティブなレコードは，登録されていない新たに挿入されたバッファである。このレコードは変更してから登録または廃棄できる
  : DS_SET_KEY
    Table および ClientDataSet のみ。レコード検索が使用可能の状態か，または set_range 操作が進行中である。データのセットを一部表示できるが，データの編集または挿入はできない
  : DS_CALC_FIELDS
    on_calc_fields イベントが進行中である。計算されていない項目は編集できず，新しいレコードは挿入できない
  : DS_FILTER
    on_filter_record イベントが進行中である。データのセットを一部表示できるが，データの編集または挿入はできない
  : DS_NEW_VALUE
    項目コンポーネントの new_value プロパティにアクセスしていることを示すために内部で使用される一時的な状態
  : DS_OLD_VALUE
    項目コンポーネントの old_value プロパティにアクセスしていることを示すために内部で使用される一時的な状態
  : DS_CUR_VALUE
    項目コンポーネントの cur_value プロパティにアクセスしていることを示すために内部で使用される一時的な状態
  : DS_BLOCK_READ
    カーソルが移動する (next が呼び出される ) ときは，データベース対応コントロールは更新されず，イベントは発生しない
  : DS_INTERNAL_CALC
    FK_INTERNAL_CALC の FieldKind を持つ項目で値を計算する必要があることを示すために内部で使用される一時的な状態
  : DS_OPENING
    DataSet が開く途上にあってまだ開ききっていない。この状態が発生するのは，データセットが非同期フェッチのために開かれたとき

: DataAction
  データベースのエラーにアプリケーションがどのように対処するかを示すのに使います。

  : DA_FAIL
    エラーの原因となった操作を中止して，エラーメッセージを表示する
  : DA_ABORT
    メッセージを表示せずに，エラーの原因となった操作を中止する
  : DA_RETRY
    エラーの原因となった操作を繰り返す。この値を返す前に，エラーの原因をイベントハンドラ内で修正する必要がある

: FieldType
  テーブル内の項目のデータ型に一致する一連の値です。

  FieldType 型は， Field#type の項目オブジェクト，項目定義オブジェクト，パラメータオブジェクトの一連の値です。 FieldType 値を使うクラスは， Field( およびその下位オブジェクト ) ， FieldDef ， Param ， Parameter ， Aggregate を含みます。 FieldType 値は， FieldDefs#add など項目関連の関数やメソッドでも使われます。

  : FT_UNKNOWN
    未知または未定
  : FT_STRING
    文字または文字列項目
  : FT_SMALLINT
    16 ビット整数項目
  : FT_INTEGER
    32 ビット整数項目
  : FT_WORD
    16 ビット符号なし整数項目
  : FT_BOOLEAN
    論理型項目
  : FT_FLOAT
    浮動小数点数値型項目
  : FT_CURRENCY
    金額型項目
  : FT_BCD
    2 進化 10 進数型項目
  : FT_DATE
    日付型項目
  : FT_TIME
    時刻型項目
  : FT_DATE_TIME
    日付／時刻型項目
  : FT_BYTES
    固定長バイト型項目 ( バイナリ格納 )
  : FT_VAR_BYTES
    可変長バイト型項目 ( バイナリ格納 )
  : FT_AUTO_INC
    自動インクリメント 32 ビット整数カウンタ型項目
  : FT_BLOB
    バイナリ大規模オブジェクト型項目
  : FT_MEMO
    テキストメモ項目
  : FT_GRAPHIC
    ビットマップ項目
  : FT_FMT_MEMO
    書式付きメモ項目
  : FT_PARADOX_OLE
    Paradox OLE 項目
  : FT_DBASE_OLE
    dBASE OLE 項目
  : FT_TYPED_BINARY
    型付きバイナリ項目
  : FT_CURSOR
    Oracle ストアドプロシージャの出力カーソル (Param のみ )
  : FT_FIXED_CHAR
    固定長文字型項目
  : FT_WIDE_STRING
    ワイド文字項目
  : FT_LARGE_INT
    32 ビット整数項目
  : FT_ADT
    抽象データ型項目
  : FT_ARRAY
    配列項目
  : FT_REFERENCE
    参照項目
  : FT_DATA_SET
    データセット項目
  : FT_ORA_BLOB
    Oracle 8 テーブルの BLOB 項目
  : FT_ORA_CLOB
    Oracle 8 テーブルの CLOB 項目
  : FT_VARIANT
    未定義または確定していない型のデータ
  : FT_INTERFACE
    インターフェース (IUnknown) への参照
  : FT_IDISPATCH
    IDispatch インターフェースへの参照
  : FT_GUID
    GUID (Globally Unique Identifier) 値

: FieldKind
  項目がデータセット内の列を表しているのか，それとも計算項目や参照項目であるのかを示します。

  FieldKind を使うと，項目がデータ項目であるのか，あるいは計算項目や参照項目であるのかを判別できます。 FieldKind の値はプログラムで変更できますが，実際には，項目およびその子項目の FieldKind は，設計時に項目エディタを使って項目コンポーネントを作成するときに自動的に設定されます。

  : FK_DATA
    項目はデータベーステーブルの物理項目を表す
  : FK_CALCULATED
    項目は on_calc_fields で計算される
  : FK_LOOKUP
    項目は参照項目である
  : FK_INTERNAL_CALC
    項目は計算されるが，値はデータセットに格納される
  : FK_AGGREGATE
    項目は集合体項目である
