使用宣言

このセクションでは、まず使用宣言について説明し、その後で使用宣言の書き方についての詳細を説明します。

背景

使用宣言を行うと、個別に生成される、パーツ内のデータ域および関数を簡単に参照することができます。例えば、プログラムで使用宣言を発行すると、データ・テーブル、ライブラリー、または書式グループを簡単に参照することができます。ただし、これは、そのようなパーツがプログラム・パーツに対して可視になっている場合だけです。可視性についての詳細は、『パーツの参照』を参照してください。

ほとんどの場合、使用宣言が行われている、いないに関係なく、データ域および機能は別のパーツから参照することができます。例えば、作成しているプログラムで myLib というライブラリー・パーツに対して使用宣言をしていなくても、次のようにすると myVar というライブラリー変数にアクセスできます。
  myLib.myVar
しかし、使用宣言にライブラリー名を組み込んでいれば、この変数は次のように参照することができます。
  myVar

前の短い書式の参照は、シンボル myVar がプログラムに対してグローバルな、すべての変数および構造体項目に対して一意である場合だけ有効になります。 (シンボルが一意でない場合は、エラーが発生します。) また、シンボル myVar は、ローカル変数またはパラメーターが同じ名前を持たない場合だけ、ライブラリー内の項目を参照します。(ローカル・データ域は、同じ名前で、プログラムでグローバルになっているデータ域よりも優先されます。)

使用宣言が必要になるのは、以下の状態の場合です。
  • ある与えられた formGroup パーツ内のいずれかの書式を使用するプログラムまたはライブラリーで、その formGroup パーツに対して使用宣言を行う必要がある。
  • プログラムまたはライブラリーに必要ではあるけれども、formGroup パーツに組み込まれていない書式に対して、formGroup パーツで使用宣言を行う必要がある。
  • 関数をコンテナー (プログラム、PageHandler、またはライブラリー) の物理的な内部でなく、EGL ソース・ファイルのトップレベルで宣言した場合、その関数がライブラリー関数を呼び出すことができるのは、 以下の状態の場合だけです。
    • コンテナーに、ライブラリーを参照する use 文が含まれている
    • 呼び出し側関数内で、containerContextDependent プロパティーが yes に設定されている

使用宣言で指定されている各名前は、パッケージ名、ライブラリー名、またはその両方で修飾することができます。

プログラムまたはライブラリー・パーツ内

プログラムまたはライブラリー内の各使用宣言は、すべての関数の外側になければなりません。 使用宣言の構文は、以下のとおりです。


プログラムまたはライブラリー・パーツ内の使用宣言の構文図
dataTablePartName
プログラムまたはライブラリーに対して可視になっている dataTable パーツ名。

プログラム・プロパティー msgTablePrefix で参照されている dataTable パーツに対しては、使用宣言内での参照は不要です。

使用宣言内では、dataTable パーツのプロパティーをオーバーライドすることはできません。

dataTable パーツの概要については、『DataTable パーツ』を参照してください。

libraryPartName
プログラムまたはライブラリーに対して可視になっているライブラリー・パーツ名。

使用宣言内では、ライブラリー・パーツのプロパティーをオーバーライドすることはできません。

ライブラリー・パーツの概要については、『basicLibrary 型のライブラリー・パーツ』および『nativeLibrary 型のライブラリー・パーツ』を参照してください。

formGroupPartName
プログラムまたはライブラリーに対して可視になっている formGroup パーツ名。書式グループの概要については、『FormGroup パーツ』を参照してください。

ある指定された formGroup パーツ内のいずれかの書式を使用するプログラムでは、その formGroup パーツに対して使用宣言を行う必要があります。

書式レベルのプロパティーでは、オーバーライドは発生しません。 例えば、validationBypassKeys のようなプロパティーが書式内で指定された場合、その書式内の値は、実行時に有効になります。しかし、書式レベルのプロパティーが書式で指定されない場合は、以下のような状態になります。
  • EGL ランタイムでは、プログラムの使用宣言の値が使用されます。
  • プログラムの使用宣言内に値が指定されていなければ、ランタイムは書式グループ内の値を使用する (そのような値がある場合)。

その後に指定するプロパティーで、特定のプログラムが書式グループにアクセスしたときの振る舞いを変更することができます。

helpGroup = no, helpGroup = yes
formGroup パーツをヘルプ・グループとして使用するかどうかを指定します。デフォルトは no です。
validationBypassKeys = [bypassKeyValue]
EGL ランタイムに入力フィールドの検証をスキップさせるユーザーのキー・ストロークを示します。このプロパティーは、プログラムを即座に終了させるキー・ストロークを予約するときに便利です。各 bypassKeyValue オプションは以下のとおりです。
pfn
F または PF キーの名前。1 から 24 の数を含みます (両端を含む)。
注: PC キーボードのファンクション・キーは、F1 などのように F キーの場合もありますが、EGL では IBM® PF 用語を使用し、例えば、F1 は PF1 と呼ばれます。

複数のキーを指定する場合、キーを 1 つずつコンマで区切ってください。

helpKey = "helpKeyValue"
EGL ランタイムにヘルプ書式をユーザーに表示させる、ユーザー・キー・ストロークを示します。helpKeyValue オプションは以下のとおりです。
pfn
F または PF キーの名前。1 から 24 の数を含みます (両端を含む)。
注: PC キーボードのファンクション・キーは、F1 などのように F キーの場合もありますが、EGL では IBM PF 用語を使用し、例えば、F1 は PF1 と呼ばれます。
pfKeyEquate = yes, pfKeyEquate = no
ユーザーが大きな番号のファンクション・キー (PF13 から PF24) を押したときに登録されるキー・ストロークが、ユーザーがそのキーよりも 12 だけ小さなファンクション・キーを押したときに登録されるキー・ストロークと同じであるかどうかを指定します。デフォルトは、yes です。詳細については、『pfKeyEquate』を参照してください。

formGroup パーツ内

formGroup パーツでは、使用宣言は書式グループの外側で指定された書式を参照します。この種の宣言を使用すると、複数の書式グループで同一の書式を共有することができます。

formGroup パーツにおける使用宣言の構文は、以下のとおりです。


formGroup パーツにおける使用宣言の構文図
formPartName
書式グループに対して可視になっている書式の名前。書式の概要については、『Form パーツ』を参照してください。

formGroup パーツ内の使用宣言の書式パーツのプロパティーは、オーバーライドできません。

pageHandler パーツ内

pageHandler パーツ内の各使用宣言は、すべての関数の外側になければなりません。 使用宣言の構文は、以下のとおりです。


pageHandler パーツにおける使用宣言の構文図
dataTablePartName
pageHandler パーツに対して可視になっている dataTable パーツ名。

使用宣言内では、dataTable パーツのプロパティーをオーバーライドすることはできません。

dataTable パーツの概要については、『DataTable パーツ』を参照してください。

libraryPartName
pageHandler パーツに対して可視になっているライブラリー・パーツ名。

使用宣言内では、ライブラリー・パーツのプロパティーをオーバーライドすることはできません。

ライブラリー・パーツの概要については、『Library パーツ』を参照してください。

関連する参照項目
pfKeyEquate

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