8.190 SELECT_IN_SPACE

指定されたキー値と一致するセルの最初の行を選択し、指定されたフィールドにセル値を戻します。

 

引数

番号

タイプ A/N

必須/任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

A

R

スペース名

1

256

 

 

2-20

w

O

必要な最初のセル行を検出するためのキー値を指定するフィールド

1

無制限

0

無制限

 

戻り値

番号

タイプ

必須/任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

A

O

標準戻りコード

OK = セル行が検出され、セル値が戻された

NR = 指定のキー値に一致するセル行が検出されなかった

ER = 選択が失敗した。発行されるメッセージに失敗の原因が示される

2

2

 

 

2-20

w

O

選択されたセル行のセル値を受け取るフィールド

1

無制限

0

無制限

 

技術上の注記

戻りフィールドはスペースに定義されたセルと同じ順序で指定する必要があります。セルの仕様の順番通りに一致したセルは戻り値の2 -> 20に戻されます。使用されるフィールド名はセル・マッピングのロジックに何の関係もありません。

キー値はスペースに定義されたキーの数まで指定することができます。最初に一致したセル行が戻されます。つまり、部分キーによる操作が可能です。

キー値がスペースで定義されたキー・セルの個数より多く指定された場合、超過分の値は無視されます。検索結果に影響はありません。

指定した戻りフィールド値の数が、スペース内のセルの数よりも少ない場合、未指定のセル値はフィールドに割り当てられません。

指定した戻りフィールド値の数が、スペース内のセルの数よりも多い場合、超過分のフィールド値は無視され、検索操作では何も変更されません。

指定のキー値が 256バイトを超える場合、致命的なエラーが発生します。

以下の例では名字に一致する最初のレコードを選択します。

Define Field(#SpaceRC) Type(*Char) Length(2)
Def_Cond Name(*Okay) Cond('#SpaceRC = OK')
*
Use Builtin(Select_in_Space) With_Args(TEST #SURNAME) To_Get(#SpaceRC #SURNAME #GIVENAME #EMPNO)
Dowhile (*Okay)
Add_Entry To_List(#Emplist)
Use Builtin(SelectNext_in_Space) With_Args(TEST #SURNAME) To_Get(#SpaceRC #SURNAME #GIVENAME #EMPNO)
Endwhile