Sequence number

4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次

version 2004.1 (Modified)


Sequence number {(aTable)} 数値

引数説明
aTableテーブルシーケンス番号を求めるテーブル, または
省略時、デフォルトテーブル
戻り値数値シーケンス番号

説明

Sequence numberは、aTableの次のシーケンス番号を返します。シーケンス番号は、各テーブルにおいて固有のものです。この番号は、aTableに対して新しいレコードが追加されるたびに加算される、決して重複することのない番号です。番号は1から始まります。SET DATABASE PARAMETERコマンドを使用して、番号を変更することができます。

Sequence numberが有効なケース:

・番号の増分値に1以上の数を使用する必要がある場合

・シーケンス番号を他のコードの一部に使用する場合(部品コードの一部に使用する場合等)

メソッドを使用してシーケンス番号を各レコードに格納するには、テーブル上に倍長整数型のフィールドを作成し、そのフィールドにシーケンス番号を代入します。

このコマンドから返されるtableのシーケンス番号は、ストラクチャインスペクタを使用してテーブルフィールドの自動インクリメントをチェックしたとき、あるいはフォームのフィールドにデフォルト値として#N記号を設定した場合に得られる番号と同じです。詳細は4D Design Referenceマニュアルを参照してください。

Note: 自動インクリメントはSQLのAUTO_INCREMENT属性で設定することもできます。

シーケンス番号が1以外の数値から始まる必要がある場合には、Sequence numberに対してその差を加算するだけで構いません。例えば、番号が1000から始まる必要がある場合には、以下のようなステートメントを使用します:

   [Table1]SeqField := Sequence number ([Table1]) + 999

例題

以下の例は、フォームメソッドの一部です。このステートメントは、まずレコードが新しいものかどうか検査(請求書番号が空の文字列であるかどうかで判断)します。新しいレコードであれば、請求書番号を設定します。この請求書番号は、2つの情報から成り立っています。それは、シーケンス番号号とデータベースを開くときに入力された操作番号です。シーケンス番号を、5桁の文字列として扱います:

      ` 請求番号が空なら新たに作成する
   If ([Invoices]Invoice No = "")
         ` 請求番号は5桁のシーケンス番号とオペレータIDからなる
      [Invoices]Invoice No:=String(Sequence number;"00000")+[Invoices]OpID 
   End if

参照

Record number, Selected record number, レコード番号について.


4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次