Page History
[ |../../index.htm#lansa/space_operation.htm]
現在地:
...
9.198 SPACE_OPERATION
| Note |
|---|
注意 |
...
: 9.1 |
...
その他のスペース・オブジェクト操作を要求します。 その他のスペース・オブジェクト操作を要求します。
引数
番号 | タイプ | 必須/任意 | 記述 | 最小長 | 最大長 | 最小小数桁数 | 最大小数桁数 |
|---|---|---|---|---|---|---|---|
1 | A | 必須 | スペース名 | 1 | 256 |
2 | A | 必須 | 要求された操作 | 1 | 256 |
3-20 | X | 任意 | 操作に依存する追加の引数を指定するフィールド | 1 | 無制限 | 0 | 無制限 |
戻り値
番号 | タイプ | 必須/任意 | 記述 | 最小長 | 最大長 | 最小小数桁数 | 最大小数桁数 |
|---|---|---|---|---|---|---|---|
1 | A | 任意 | 標準戻りコード ER = |
要求に失敗した。発行されるメッセージに失敗の原因が示される その他の戻りコードの値は、要求される操作によって異なります。詳細については、各操作の説明を参照してください。 | 2 | 2 |
2-20 | X | 任意 | 操作に依存する追加の戻り値を指定するフィールド | 1 | 無制限 | 0 | 無制限 |
CheckExistence操作
CheckExistence操作を使用して、現在のオペレーティング・システムのプロセス(またはジョブ)内にスペース・オブジェクトが存在するかどうかをチェックすることができます。 次の例では、TestSpaceという名前のスペースの有無がチェックされます。
Use Builtin
次の例では、TestSpaceという名前のスペースの有無がチェックされます。
Use Builtin(SPACE_OPERATION)
...
With_Args('TestSpace'...
CHECKEXISTENCE)...
To_Get(#SPACERC)...
有効なCheckExistence要求によって戻される戻りコードは、"OK"(スペース・オブジェクトが存在する)または"NR"(スペース・オブジェクトが存在しない)だけです。 だけです。 SetCursor操作
SetCursor操作
SetCursor操作を使用して、組み込み関数SELECT_IN_SPACEまたはSELECTNEXT_IN_SPACEの後続呼び出しすべてに対してカーソルを設定することができます。これは、スペース・オブジェクトに固有の操作ではありません。カーソルを2に設定すると、スペース・オブジェクトに対する後続のSELECT... BIFはすべて、設定が変更されるまでカーソル2を使用します。デフォルトのカーソルは、1です。スペース・オブジェクトごとに最大4個のカーソルを指定することができます。カーソルの数値が1から4の間であることについてのみチェックが行われます。 BIFはすべて、設定が変更されるまでカーソル2を使用します。デフォルトのカーソルは、1です。スペース・オブジェクトごとに最大4個のカーソルを指定することができます。カーソルの数値が1から4の間であることについてのみチェックが行われます。 例:
Use Builtin
例:
Use Builtin(SPACE_OPERATION)
...
With_Args('TestSpace'
...
SETCURSOR 2) To_Get(#SPACERC)
...
有効なSetCursor要求によって戻される戻りコードは、"OK"(スペース・オブジェクトが存在する)または"NR"(カーソルの数値が無効)だけです。 だけです。
この操作によって、同じスペース・オブジェクトに対するSELECT_IN_SPACE要求をネストすることができます。効率的に使用するには、組み込み関数SELECT_IN_SPACEまたはSELECTNEXT_IN_SPACEを使用する直前にSetCursor操作を呼び出し、正しいカーソルが確実に使用されるようにします。これは、LEAVEコマンドが内側のループから発行されたなどの理由で不適切なカーソルを使用することによって、好ましくない副次的作用が発生するのを防ぐためのSetCursor操作の一般的な使用法です。
Use BuiltinSPACEを使用する直前にSetCursor操作を呼び出し、正しいカーソルが確実に使用されるようにします。これは、LEAVEコマンドが内側のループから発行されたなどの理由で不適切なカーソルを使用することによって、好ましくない副次的作用が発生するのを防ぐためのSetCursor操作の一般的な使用法です。
Use Builtin(SPACE_OPERATION)
...
With_Args(#AR_
...
SPACE SetCursor 1) To_Get(#SPACERC)
...
Use Builtin(SELECT_IN_SPACE)
...
With_Args(#AR_SPACE)
...
To_Get(
...
#SPACERC #XG_AR)
...
Dowhile Cond(*SPACEOK)
...
Use Builtin(SPACE_OPERATION)
...
With_Args(#AR_
...
SPACE SetCursor 2) To_Get(#SPACERC)
...
* Note the use of a different set of fields to hold the data - #XG_AR2
Use Builtin(SELECT_IN_SPACE)
...
With_Args(#AR_SPACE)
...
To_Get(
...
#SPACERC #XG_AR2)
...
Dowhile Cond(*SPACEOK)
* Do something with the data here
Use Builtin(SPACE_OPERATION)
...
With_Args(#AR_
...
SPACE SetCursor 2) To_Get(#SPACERC)
...
Use Builtin(SELECTNEXT_IN_SPACE)
...
With_Args(#AR_SPACE)
...
To_Get(
...
#SPACERC #XG_AR2)
...
Endwhile
Use Builtin(SPACE_OPERATION)
...
With_Args(#AR_
...
SPACE SetCursor 1) To_Get(#SPACERC)
...
Use Builtin(SELECTNEXT_IN_SPACE)
...
With_Args(#AR_SPACE)
...
To_Get(
...
#SPACERC #XG_AR)
Endwhile
...
* Set the cursor back to the default for any further SELECT...
...
BIF calls.
Use Builtin(SPACE_OPERATION)
...
With_Args(#AR_
...
SPACE SetCursor 1) To_Get(#SPACERC)
...