DTAARA キーワードは、独立フィールド、データ構造、データ構造サブフィールド 、またはデータ域データ構造を外部データ域と関連づけるために使用されます。 DTAARA キーワードは、*DTAARA DEFINE 命令コードと同じ機能を 持っています (*DTAARA DEFINEを参照)。
DTAARA キーワードはメイン・ソース・セクションでのみ使用することができます。 サブプロシージャーでは使用できません。
3 種類のデータ域を作成することができます。
さらに、リモート・システム上の上記の 3 つのタイプのいずれかのデータ域を 指し示す DDM データ域 (タイプ *DDM) も作成することができます。
データ域に関連付けることができるのは、文字と数値タイプ (浮動数値を除く) だけ です。 システム上の実際のデータ域は、プログラム内のフィールドと同じタイプ で、長さと小数点以下の桁数も同じでなければなりません。 標識フィールドは論理データ域または文字データ域と 関連付けることができます。 データ域に他のタイプを保管する場合、 そのデータ域のデータ構造を使用することができ、さらにポインター以外の任意のタイプのサブフィールド をコーディングすることができます。 ポインターはデータ域には保管できません。
データ域名が指定されない場合には、7 から 21 桁目に指定された名前が外部データ 域の名前にもなります。 パラメーターもデータ構造名も指定されていない場合、デフォルト の値は *LDA になります。
*VAR が指定されていない場合、データ域名パラメーターは名前またはリテラルのいずれかとすることができます。名前が指定されている場合、 DTAARA のパラメーター名はデータ域名として使用されます。 たとえば、DTAARA(MYDTA) は、 データ域 *LIBL/MYDTA が実行時に使用されることを意味します。 これは、*LDA (ローカル・データ域の場合) および *PDA (プログラム初期化パラメーター・データ域の場合) を含む有効なデータ域名でなければなりせん。 リテ ラルが指定されている場合、リテラルの値はデータ域名として使用されます。 たとえば、DTAARA('LIB/DTA') は、実行時にライブラリー LIB のデータ域 DTA を使用します。
*VAR が指定されている場合、データ域名の値はデータ域名として使用されます。 この値には、以下のものを使用できます。
値は次のいずれの形式でも指定できます。
dtaaraname libname/dtaaraname *LIBL/dtaaraname
DTAARA(*VAR) キーワードが UDS データ域に使用され、名前が変数である場合、 プログラムが開始する前にこの変数の値を設定する必要があります。 この値は、変数を初期化して入り口パラメーターとして渡すか、または IMPORT キーワードおよび EXPORT キーワードを使用して、変数を別のプログラムと共用すること で、設定することができます。
DTAARA キーワードを指定した場合には、データ域に対して IN、OUT、 および UNLOCK 命令コードを使用することができます。
(C) Copyright IBM Corporation 1992, 2006. All Rights Reserved.