バージョン 4.2.5
 —  オペレーション  —

パラメータ値の割り当て

このドキュメントでは、プロファイルパラメータに値をスタティックに、ダイナミックに、およびランタイム時に割り当てる方法について説明します。

以下のトピックについて説明します。

プロファイルパラメータの詳細については、『パラメータリファレンス』ドキュメントを参照してください。


パラメータ値の割り当てのソース

プロファイルパラメータの値は以下の 3 つのソースから取得されます。

  1. スタティックな割り当て
    マクロ NTPRM および Natural パラメータソースモジュール(NATPARM)内の他のマクロによって指定されたプロファイルパラメータ。 これらのマクロはその後、Natural ニュークリアスでアセンブルおよびリンクされます。 指定されないすべてのパラメータには、デフォルト値が割り当てられます。

  2. ダイナミックな割り当て
    Natural セッションの実行に対して指定されたパラメータ。 これらのパラメータはスタティックな割り当てより優先され、現在の Natural セッションに有効です。 ダイナミックパラメータは、フロントエンドプログラム、パラメータデータセット(CMPRMIN)、セッション初期化 JCL、端末入力、または Natural Security から渡すことができます。 また、特定のパラメータを Natural プログラムステートメントで上書きすることもできます。

  3. セッションパラメータ
    現在の Natural セッション内でシステムコマンド GLOBALS(またはレポーティングモードで SET GLOBALS ステートメント)によって指定されたパラメータ。 このパラメータは、スタティックおよびダイナミックな割り当てを上書きします。

Natural パラメータ割り当ての図:

Top of page

パラメータ値のスタティックな割り当て

Natural パラメータモジュール NATPARM を使用して、すべての Natural 環境のプロファイルパラメータをスタティックに割り当てます。

パラメータモジュールで、マクロ NTPRM および他のいくつかのマクロを使用して、パラメータを指定します。

パラメータモジュールで行われたすべてのパラメータ設定(パラメータ CSTATIC を除く)は、Natural セッションの開始時にダイナミックに上書きできます。

技術的な理由から、一部のプロファイルパラメータには、対応するマクロがパラメータモジュールでのスタティックな割り当てに使用されます。 そのため、スタティックな指定とダイナミックな指定の構文は若干異なり、一般形式は以下のようになります。

スタティック:
MACRO-NAME KEYWORD1=value1,KEYWORD2=value2,...
ダイナミック:
PARAMETER-NAME=(KEYWORD1=value1,KEYWORD2=value2,...)

例:

プロファイルパラメータに対応するマクロがある場合は、パラメータの説明に示されています。

スタティックな割り当ての詳細については、「Natural パラメータモジュールの使用」を参照してください。

一部の Natural サブ製品(Natural for DL/INatural for DB2 など)では、追加のパラメータモジュールが使用されます。 これらのモジュールについては、該当のサブ製品のドキュメントを参照してください。

Top of page

パラメータ値のダイナミックな割り当て

Natural セッションの開始時にプロファイルパラメータをダイナミックに指定し、単一の Natural セッション中に Natural パラメータモジュール NATPARM の各プロファイルパラメータ設定を上書きできます。

例:

NUCNAME='NATNUC#5',IM=D,INTENS=1,DU=OFF,FUSER=(10,32),PROGRAM=' ',
WORK=((1),AM=STD,DEST=WORK1,OPEN=INIT),PS=60,LS=120

Natural パラメータモジュールでスタティックにのみ指定できる CSTATIC を除いて、すべてのプロファイルパラメータはダイナミックに指定できます。

ダイナミックパラメータの割り当ては、コンマまたは空白で区切ります。 ダイナミックパラメータの値に英数字以外の文字や特殊文字が含まれる場合は、値を一重引用符で囲んで指定する必要があります。 NATCONFG の文字テーブルマクロ NTSCTAB で定義される特殊文字については、「Natural コンフィグレーションテーブル」を参照してください。

ダイナミックパラメータの使用は、マクロ NTDYNP または対応するダイナミックプロファイルパラメータ DYNPARM で有効または無効にできます。

一連のダイナミックパラメータをより簡単に指定するには、プロファイルパラメータ PROFILE または SYS を使用します。 また、Natural Security では多数のダイナミックパラメータを設定できます。

ダイナミックパラメータ内にコメント文字列を挿入できます。 コメントは "/*" で開始し "*/" で終了します。 コメント文字列の終了デリミタがない場合は、セッション初期化時にエラーメッセージが発行されます。

例:

PARM=MYPARMS /* my comment */ ADANAME=ADALNKR,PROFILE=MYPROF 

ダイナミックパラメータ設定は、セッション開始時に Natural に渡されます。 パラメータ値を Natural に渡すメソッドは環境によって異なります。

バッチモードの z/OS の例:

z/VSE 環境でのダイナミックパラメータの指定

ダイナミックパラメータは、以下のように、JCL EXEC ステートメントで PARM 指定を使用して直接渡すことができます。

// EXEC NATBATCH,PARM='dynamic parameters...',SIZE=...

または、以下のように、PARM='SYSRDR' を指定して、Natural が SYSRDR からダイナミックパラメータを読み取るようにすることができます。

// EXEC NATBATCH,SIZE=...,PARM='SYSRDR'
dynamic parameters
...
/* END OF DYNAMIC PARAMETERS

PARM キーワードが JCL EXEC ステートメントで指定されていない場合は、以下のように、互換性保持のために JCL OPTION ステートメントの SYSPARM パラメータがチェックされます。

...
// OPTION SYSPARM='SYSRDR'
// EXEC NATBATCH,SIZE=...
dynamic parameters
...
/* END OF DYNAMIC PARAMETERS

Top of page

パラメータ値のランタイム割り当て用のセッションパラメータ

一部のプロファイルパラメータには、対応するセッションパラメータを使用して、ランタイム時に Natural セッション内で値を割り当てることができます。 セッションパラメータ値により、プロファイルパラメータ値が上書きされます。

プロファイルパラメータに対応するセッションパラメータがある場合は、プロファイルパラメータの説明に示されています。

セッションパラメータはシステムコマンド GLOBALS で指定されます。 セッションパラメータの詳細については、『パラメータリファレンス』ドキュメントを参照してください。 システムコマンドの詳細については、『コマンドリファレンス』ドキュメントを参照してください。

例:

GLOBALS SA=ON,IM=D

レポーティングモードでは、セッションパラメータをプログラムの SET GLOBALS ステートメントで指定することもできます。

一部のプロファイルパラメータは、端末コマンドを使用して Natural セッション内で上書きすることもできます。 プロファイルパラメータに対応する端末コマンドがある場合は、プロファイルパラメータの説明に示されています。 端末コマンドについては、『端末コマンド』ドキュメントを参照してください。

例:

SET CONTROL 'T=3279'

プロファイルパラメータ TTYPE の値が上書きされます。

Top of page