set

以下のセクションでは、EGL set 文の効果について説明しています。

レコード (または固定レコード) 全体に与える影響

次の表は、レコード全体、固定レコード全体、またはレコードの配列に影響を及ぼす set 文について説明しています。

set 文の形式 結果
set record empty 各基本フィールドを空にします。レコードの場合、各従属レコードが空になり、それらの従属レコードの各従属も空になり、以下同様です。固定レコード (固定レコード自体がレコード内に含まれている場合があります) の場合、基本フィールドは固定構造の最下位レベルにあります。
各基本フィールドに与える影響は、 そのフィールドのプリミティブ型によって以下のように異なります。
  • ANY 型フィールドの場合、set 文により、そのフィールドの現行型に基づいてフィールドが初期化されます。そのフィールドが ANY 型で、他の型を持たない場合、set 文は影響を与えません。
  • その他の型の詳細については、『データの初期化』を参照してください。
set record initial 開発時に value プロパティーによって指定された値に、フィールド値を初期化します。これは、pageHandler または書式内で宣言されたレコードまたは固定レコードの場合、可能です。代入によって設定された値は、復元されません。

value プロパティーが値を持たないか、レコードが pageHandler または書式内にない場合、set record initial の結果は set record empty の結果と同じですが、1 つだけ例外があります。それはフィールドが ANY 型の場合、set 文により、ANY 以外のすべての型指定が除去されてしまうことです。

set record position 索引付きレコード型の固定レコードに関連付けられた VSAM ファイル内の位置を設定します。詳細については後述します。

この set 文の形式は、配列に対しては使用不可です。

オプションの間にコンマを挿入して区切ることで、文形式を結合できます。レコードの場合、各オプションは set 文内で指定された順序で効力を生じます。また、複数のレコードを指定することもでき、その場合は、コンマを挿入してレコード同士を区切ります。

構文図は以下のとおりです。


レコード全体に影響を及ぼす set 文の構文図
record name
任意型のレコード名または固定レコード名。 配列を指定できます。
indexed record name
索引付きレコード型の固定レコードの名前。配列を指定できるのは、 set record position を組み込まない場合だけです。
empty
前の表で説明されています。
initial
前の表で説明されています。
position
set value に基づいてファイル位置を設定します。この値は、索引付きレコード内の キー値です。 全体的な効果は、以下のように、同じ索引付きレコードに対してコードが実行する次の入出力操作によって異なります。
  • 次の操作が EGL get next 文の場合、その文は、キー値が set value と等しいかより大きい最初のファイル・レコードを読み取る。そのようなレコードが存在しない場合は、get next 文の結果は endOfFile になります。
  • set record position の後ろにある次の操作が EGL get previous 文の場合、その文は、キー値が set value と等しいかより小さい最初のファイル・レコードを読み取る。 そのようなレコードが存在しない場合は、get previous の結果は endOfFile になります。
  • set record position の後ろにある他のすべての操作は、ファイル位置をリセットする。 このとき、set record position の効果はなくなります。
set value が 16 進数 FF 値で埋められている場合、以下のようになります。
  • set record position は、ファイル内の最後のレコードの後ろにファイル位置を設定する
  • 次の操作が get previous 文の場合、ファイル内の最後のレコードが検索される

書式全体への影響

次の表は、書式全体に影響を及ぼす set 文について説明しています。

set 文の形式 結果
set form alarm テキスト書式の場合にのみ、converse 文により次回書式が出力されたときにアラームが通知されます。
set form empty 書式内の各フィールドの値を空にし、すべての内容を消去します。特定のフィールドへの影響は、次のようにプリミティブ型によって異なります。
  • ANY 型フィールドの場合、set 文により、そのフィールドの現行型に基づいてフィールドが初期化されます。そのフィールドが ANY 型で、他の型を持たない場合、set 文は影響を与えません。
  • その他の型の詳細については、『データの初期化』を参照してください。
set form initial 各書式フィールドを、書式宣言で表されている、 最初に定義された状態に再設定します。 プログラムによって行われた変更は取り消されます。 ANY 型のフィールドの場合、set 文により、ANY 以外のすべての型指定は除去されます。
set form initialAttributes 各書式フィールドを、書式宣言で表されている、 最初に定義された状態に再設定します。 このフィールドの値は影響を受けず、また (ANY 型のフィールドの場合) 型も影響を受けません。

empty および alarm などのオプションの間にコンマを挿入して区切ることで、文形式を結合できます。また、複数の書式を指定することもでき、その場合は、コンマを挿入して書式同士を区切ります。

次の形式の 1 つを選択するか、まったく選択しないことができます。
  • set form empty
  • set form initial
次の形式の 1 つ、または両方を選択するか、まったく選択しないことができます。
  • set form alarm (テキスト書式でのみ使用可能)
  • set form initialAttributes

構文図は以下のとおりです。


書式全体に影響を及ぼす set 文の構文図
form name
text または print タイプの書式の名前。これについては、『書式パーツ』で説明されています。
text form name
text タイプの書式の名前。これについては、『書式パーツ』で説明されています。

オプションについては、前の表で説明されています。

コンテキスト内のフィールドへの影響

次の表は、コンテキスト内のフィールドに影響を及ぼす set 文の形式について説明しています。

set 文の形式 結果
set field empty フィールドを空にし、(副構造を持つ定数フィールドの場合) すべての従属フィールド、基本フィールドを空にします。
影響は、フィールドのプリミティブ型によって以下のように異なります。
  • ANY 型フィールドの場合、set 文により、そのフィールドの現行型に基づいてフィールドが初期化されます。そのフィールドが ANY 型で、他の型を持たない場合、set 文は影響を与えません。
  • その他の型の詳細については、『データの初期化』を参照してください。
set field null フィールドを Null にすることが有効な場合、フィールドを NULL に設定します。この操作が有効な場合について詳しくは、『itemsNullable』を参照してください。SQL レコードでの NULL 処理の詳細については、『SQL 項目のプロパティー』を参照してください。

構文図は以下のとおりです。


非書式項目または配列に影響を及ぼす set 文の構文図
field name
フィールドの名前。

どちらか一方のオプションを選択できます。各オプションについては、前述の表を参照してください。

テキスト書式のフィールドへの影響

次の表は、テキスト書式のフィールドまたはフィールドの配列に影響を及ぼす set 文について説明しています。後で説明されているように、特定の方法の組み合わせでのみ、 特定の set オプションにより文を結合できます。

注: 説明されている動作の多くは、テキスト書式が表示される装置に 依存します。 サポートしている各装置上で、出力のテストを行うことをお勧めします。

set 文の形式 結果
set field blink テキストの点滅を繰り返します。このオプションを使用できるのは、COBOL プログラムに限られます。
set field bold テキストをボールド体で表示します。
set field cursor 指定されたフィールドにカーソルを置きます。

フィールドが配列であると識別され、occurs 値を持たない場合、カーソルは、デフォルトで最初の配列エレメントに置かれます。

プログラムにより、set field cursor 形式の複数の文が実行される場合、最後の文は、 converse 文が実行されたときに有効になります。

set field defaultColor フィールド固有の color プロパティーを defaultColor に設定します。これは、他の条件により表示色が決定されることを意味します。 詳細については、『フィールド表示プロパティー』を参照してください。
set field dim フィールドを通常より低い輝度で表示します。この効果は、フィールド内容の強調解除に使用します。

このオプションは、z/OS® では無効です。

set field empty フィールドの値を初期化し、すべての内容を消去します。特定のフィールドへの影響は、『データの初期化』で説明されているように、 プリミティブ型によって異なります。
set field full 書式が表示される前に、空、ブランク、または NULL のフィールドに、 次のような一連の同一文字を設定します。
  • フィールド・プロパティー fillCharacter が次の値の場合、文字はアスタリスク (*) です。また、次の値は fillCharacter のデフォルト値でもあります。
    • HEX 型のフィールドの場合は 0
    • 数値型のフィールドの場合はスペース
    • その他のフィールドの場合は空ストリング
  • fillCharacter が上記のように設定されていない場合、文字は fillCharacter の値と同一に設定されます。

変更データ・タグとプロパティー』で説明されているように、フィールドに変更データ・タグが設定されている場合にのみ、 書式上の文字がプログラムに戻されます。ユーザーがフィールドを変更した場合は、プログラムにフィールド上の文字が戻されないように、それらの 文字をすべて除去する必要があります。

書式グループが、 ビルド記述子オプション setFormItemFull で生成された場合にのみ、set field full の使用が 有効になります。

MBCHAR 型のフィールドは、そこにすべて単一バイト・スペースが 含まれている場合、空であるとみなされます。 そのようなフィールドに対して、set field full により一連の単一バイト文字が割り当てられます。

set field initial プログラムにより行われた変更とは関係なく、フィールドを最初に定義された状態に再設定します。
set field initialAttributes value プロパティー (フィールドの現行内容を指定するプロパティー) を使用せずに、フィールドを最初に定義した状態にリセットします。
set field invisible フィールド・テキストを不可視にします。
set field masked パスワード・フィールドに使用。Java™ プログラムによってテキスト書式が提示される場合に、ユーザーが入力フィールドに入力した非ブランク文字の代わりにアスタリスクが表示されます。 ただし、このオプションは、テキスト書式が COBOL プログラムによって提示される場合は効果がありません。テキスト書式が COBOL プログラムによって提示される場合、このオプションはフィールド・テキストを不可視にします。
set field modified 変更データ・タグとプロパティー』で説明されているように、 変更データ・タグを設定します。
set field noHighlight 点滅、反転、およびアンダースコアーの特殊効果を除去します。
set field normal 以下の形式に関連する説明のとおり、フィールドを再設定します。
  • Set field normalIntensity
  • Set field unmodified
  • Set field unprotected

詳細については、次の表を参照してください。

set field normalIntensity フィールドを太文字を使用せずに表示します。
set field protect ユーザーがフィールドの値を上書きできないよう設定します。『set field skip』も参照してください。
set field reverse テキストおよび背景色を反転し、 (例えば) 濃い背景色に淡色文字を表示した場合に背景色を明るくしてテキストを濃い色にします。
set field selectedColor フィールド固有の color プロパティーを 指定した値に設定します。 selectedColor の有効な値は以下のとおりです。
  • black
  • blue
  • green
  • pink
  • red
  • torquoise
  • white
  • yellow
set field skip ユーザーがフィールドの値を上書きできないよう設定します。また、次のいずれかの場合には、カーソルがフィールドをスキップします。
  • ユーザーがタブ順序の直前のフィールドを操作しているときに、 Tab を押したか、そのフィールドに内容を入力した場合。または、
  • ユーザーがタブ順序の次のフィールドを操作していて、Shift + Tab を押した場合。
set field underline フィールドの下部にアンダーラインを配置します。
set field unprotect ユーザーがフィールドの値を上書きできるよう設定します。
次の 3 つの方法により、cursor および full などのオプションの間にコンマを挿入して区切ることで、文形式を結合できます。
  1. set 文は以下のように構成できます。
    • 次のフィールド属性形式の 1 つを選択するか、または選択しない。
      • set field initialAttributes
      • set field normal
    • 任意の数の以下の形式を選択する。
      • set field cursor
      • set field empty
      • set field full
  2. 次に、任意の数の以下の形式から set 文を構成することができます。
    • set field cursor
    • set field full
    • set field initial または set field initialAttributes
  3. 最後に、次のように set 文を構成できます。
    • 任意の数の以下の形式を選択する。
      • set field cursor
      • set field full
      • set field modified
    • カラー形式を 1 つ選択するか、選択しない。
      • set field defaultColor
      • set field selectedColor
    • 強調表示形式を 1 つ選択するか、選択しない。
      • set field blink
      • set field reverse
      • set field underline
      • set field noHighlight
    • 輝度形式を 1 つ選択するか、選択しない。
      • set field bold
      • set field dim
      • set field invisible
      • set field masked
      • set field normalIntensity
    • 保護形式を 1 つ選択するか、選択しない。
      • set field protect
      • set field skip
      • set field unprotect

構文図は以下のとおりです。


テキスト・フィールドに影響を及ぼす set 文の構文図
field name
テキスト書式のフィールドの名前名前はフィールドの配列を参照できます。

オプションについては、前の表で説明されています。

ご利用条件 | フィードバック
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.
(C) Copyright IBM Japan 2005.