STRUCT

STRUCT[(n)]

このコマンドを使用して、エディタのワークエリアに現在ある Natural オブジェクトのソースコードのインデントを実行します。

STRUCT デフォルトでは(つまり、(n) が指定されていない場合)、インデントは 2 単位の位置ずつ行われます。
STRUCT (n) パラメータ (n) を提供して、インデントに使用するスペースの数を指定できます。

設定可能値:1~9。

例:

STRUCT (5)

次のステートメントタイプが STRUCT コマンドの影響を受けます。

このドキュメントでは、次のトピックについて説明します。


ソースコード行のインデント

ソースコードの行に、プログラムの階層構造を反映したインデントを行うことができます。

注意:
レポーティングモードのプログラムに行われるインデントはストラクチャードモードのプログラムとは異なります。

部分的なインデント

特殊ステートメント /*STRUCT OFF および /*STRUCT ON を使用して構造的なインデントからプログラムソースを部分的に除外できます。このステートメントはソースコード行の先頭から入力する必要があります。この 2 つのステートメント間のソースコード行は STRUCT コマンドを発行しても元のままです。

例:

インデントする前のプログラムは次のとおりです。

DEFINE DATA LOCAL
1 EMPL VIEW OF EMPLOYEES
2 PERSONNEL-ID
2 FULL-NAME
3 FIRST-NAME
3 NAME
1 VEHI VIEW OF VEHICLES
2 PERSONNEL-ID
2 MAKE
END-DEFINE
FIND EMPL WITH NAME = 'ADKINSON'
IF NO RECORDS FOUND
WRITE 'NO RECORD FOUND'
END-NOREC
FIND (1) VEHI WITH PERSONNEL-ID = EMPL.PERSONNEL-ID
DISPLAY EMPL.PERSONNEL-ID FULL-NAME MAKE
END-FIND
END-FIND
END

同じプログラムをインデントすると、次のようになります。

DEFINE DATA LOCAL
1 EMPL VIEW OF EMPLOYEES
  2 PERSONNEL-ID
  2 FULL-NAME
    3 FIRST-NAME
    3 NAME
1 VEHI VIEW OF VEHICLES
  2 PERSONNEL-ID
  2 MAKE
END-DEFINE
FIND EMPL WITH NAME = 'ADKINSON'
  IF NO RECORDS FOUND
    WRITE 'NO RECORD FOUND'
  END-NOREC
  FIND (1) VEHI WITH PERSONNEL-ID = EMPL.PERSONNEL-ID
    DISPLAY EMPL.PERSONNEL-ID FULL-NAME MAKE
  END-FIND
END-FIND
END