一般的なコーディングの規則
注釈ステートメント、ブランク・ステートメント、および注記の使用方法については、注釈ステートメントの挿入を参照してください。DFSORT プログラム制御ステートメントおよび EXEC PARM オプションは、ユーザー定義の DD データ・セットでまとめて指定することもできます。この DD ソースに 適用される特別なコーディング規則については、DFSPARM DD ステートメントを参照してください。
その他の DFSORT 制御ステートメントはすべて、図 1 に示されるように 同じ一般形式のステートメントです。ただし、この図に示されている形式は、パラメーター・リストに指定する 制御ステートメントには 適用されません。適用される特別な規則については、プログラムからの DFSORT の呼び出しを参照してください。

- ラベル・フィールド
ラベルは、SYSIN または SORTCNTL 内の任意の制御ステートメントで指定することができます。 どの場合もラベルは必須ではありません。 ラベルを使用する場合は、1 桁目から始まっていなければならず、最初の文字はブランクまたはアスタリスク (*) 以外の文字でなければなりません。 ラベルは長さが 1 文字から 70 文字までで、ブランク文字が現れた時点で終了します。 ラベル内ではどの文字でも使用できます。 ブランクのみが含まれているラベルは、印刷はされますが、それ以外の処理は行われません。
パラメーター・リスト、DFSPARM、または継続行の中では、ラベルは指定できません。
ラベルを省略する場合は、1 桁目から始まる 1 つ以上のブランクを指定してください。
次の例は、ラベルありの場合とラベルなしの場合の制御ステートメントを示しています。OPTION EQUALS MYSORT SORT FIELDS=(5,4,CH,A) OUTREC FIELDS=(1,20,51,30) OUT_1 OUTFIL FNAMES=OUT1,INCLUDE=(5,1,CH,EQ,C'A') OUT_2 OUTFIL FNAMES=OUT2,INCLUDE=(5,1,CH,EQ,C'B') - 命令フィールド
このフィールドは、最初の行の 2 から 71 桁であればどこの位置にでも配置できます。このフィールドには、プログラムにステートメントのタイプを識別させる 語 (例えば、SORT または MERGE) が含まれます。後述の例では、命令定義子 SORT がサンプル制御ステートメントの命令フィールド内にあります。
- オペランド・フィールド
オペランド・フィールドは、コンマまたはセミコロンで区切られた 1 つ以上の オペランドで構成されます。このフィールドは命令フィールドの後に続き、フィールドとフィールドの間は少なくとも 1 つの ブランクで区切られている必要があります。パラメーター内にはブランクを入れることはできませんが、すべてのパラメーターの終わりにはブランクが 1 つ必要です。ステートメントが複数行にまたがる場合は、最初の行でオペランドが開始される必要があります。各オペランドには、オペランド定義子またはパラメーター (オペランドのタイプ を DFSORT に知らせる文字グループ) があります。1 つのパラメーターには、1 つの値または値リストを関連付けることができます。この章に示されるオペランドの 5 つの形式を以下に示します。
- parameter。例: CHALT、NOCHALT、REMOVECC
- parameter(c)。例: DATE1(/)、TIME2(:)、Y2W(-)
- parameter=value。この parameter=value 形式で示されるオペランドは、同等の形式 parameter(value) または parameter=(value) でも指定できます。 例: AVGRLEN=100、AVGRLEN(100)、および AVGRLEN=(100) が等価であり、DYNALLOC=SYSDA、 DYNALLOC(SYSDA)、および DYNALLOC=(SYSDA) が等価であり、SAMPLE=20、SAMPLE(20)、および SAMPLE=(20) が等価です。
- parameter=(list)。この parameter=(list) 形式で示されるオペランドは、同等の形式 parameter(list) でも指定できます。例: FIELDS=(21,5,CH,A) と FIELDS(21,5,CH,A) が等価であり、BUILD=(1,20,HEX) と BUILD(1,20,HEX) が等価です。
- parameter=(value)。この parameter=(value) 形式で示されるオペランドは、同等の形式 parameter(value) でも指定できます。例: DATE=(4MD/) と DATE(4MD/) が等価であり、TIMENS=(12) と TIMENS(12) が等価であり、NOMATCH=(C'***') と NOMATCH(C'***') が等価です。
形式 parameter、parameter=value、および parameter=(list) の例を次に示します。
SORT EQUALS,FORMAT=CH,FIELDS=(10,30,A),STOPAFT=1000parameter、parameter(value)、parameter(list)、および parameter=(value) 形式の例を次に示します。
SORT EQUALS,FORMAT(CH),FIELDS(10,30,A),STOPAFT=(1000)前述の 2 つの SORT ステートメントは同じ意味です。
- 注釈フィールド
このフィールドには、どのような情報でも入れることができます。このフィールドは必須ではありませんが、使用する場合は、 少なくとも 1 つのブランクで 最後のオペランド・フィールドと区切る必要があります。
- 継続表示桁 (72)
この桁にブランク以外の文字が入っていると、いまあるステートメントが次の行に継続されることを意味します。 ただし、行のオペランド・フィールドの最後の文字が、コンマまたはセミコロンであるか、あるいはブランクを伴うコロンであれば、プログラムはその次の行を継続行と見なします。72 桁目にブランク以外の文字が必要になるのは、注釈フィールドが継続される場合、またはオペランドが 71 桁目で中断される場合だけです。
- 73 から 80 桁
このフィールドはどのような目的にも使用できます。