データ項目の定義方法(PICTURE句)

前回までの記事でCOBOLプログラム上でのデータ定義の基本について見てきました。
今回はサンプルソースとその実行結果からデータ定義について見ていきます。


データ定義はデータ部(DATA DIVISION)の作業場所節(WORKING-STORAGE SECTION)で行います。

000010 IDENTIFICATION                   DIVISION.
000020 PROGRAM-ID.                      SAMPLE-13.
000030*
000040 ENVIRONMENT                      DIVISION.
000050*
000060 DATA                             DIVISION.
000070 WORKING-STORAGE                  SECTION.
000080 01 A PICTURE 9(5).
000090 01 B PICTURE ZZZZ9.
000110 01 C PICTURE S9(5).
000120 01 D PICTURE X(5). 
000130*
000140 PROCEDURE DIVISION.
000150 MAIN.
000160     MOVE 100 TO A B C.
000170     MOVE "00100" TO D.
000180     DISPLAY "A[" A "]". 
000190     DISPLAY "B[" B "]".
000200     DISPLAY "C[" C "]".
000210     DISPLAY "D[" D "]".
000220     STOP RUN.

実行結果
A[00100]
B[  100]
C[+00100]
D[00100]

データ項目のデータ型と長さ(桁数)を指定するには、データ項目名に続けてPICTURE句で行います。


PICTURE句 書式
レベル番号 データ項目名 PICTURE 符号・データ型・長さ・小数.

・符号   数値形式で符号が必要な場合は、Sを記述。
・データ型 X、9、Nなどのタイプ識別子を指定
・長さ   タイプ識別子を桁数分続けて記述するか、タイプ名の後に括弧で括って長さを指定
・小数   数値項目で小数を扱う場合は、Vに続けて小数部の桁数を指定

※PICTUREをPICと省略して記述することもできます。


PICTURE句を使用してデータ型や長さを指定するのは「基本項目」に限ります。
集団項目には使用しません。

«  データ項目の定義方法(PICTURE句)  »