プランとコンポーネントはどちらも、手順で使用する変数を宣言できます。 コンポーネント変数は、コンポーネントのインストール時に評価、設定されます。 したがって、コンポーネント制御ブロック内の手順が、コンポーネントによって範囲指定された変数を参照している場合、使用される値はコンポーネントのインストール時の変数の値です。 プラン変数は、プランの実行ごとに評価、設定されます。 したがって、プラン内の手順がプラン変数を参照している場合、使用される値はプラン実行時に定義された値となり、実行ごとに異なる可能性があります。
プランは、パラメタと変数の両方を宣言できます。 変数の値は、他の変数と定数の値をもとに宣言時に定義されます。 パラメタは、呼び出し元が値を定義する特殊な変数です。 最上位プランの場合、呼び出し元はプランの実行を開始したユーザーです。 ユーザーは、プランの実行前にプランで宣言した各パラメタに対して値を入力します。 <execSubplan> 呼び出しによってプランが呼び出された場合、<execSubplan> 呼び出しを含むプランが、呼び出されたプランによって宣言された各パラメタに値を明示的に渡す役割を担います。
インストール、アンインストール、スナップショット、制御の各ブロックもパラメタと局所変数を宣言できます。 プランの場合と同様に、局所変数の値はローカルで定義され、パラメタの値はブロックの呼び出し元が渡した値をもとに定義されます。 どちらもプランの実行ごとに異なることがあります。
変数またはパラメタの値を再割り当てする機能はありません。