付録B.1 COBOLの場合
概算式で使用する用語について説明します。
- 全角/半角切り替わり回数
-
WRITE文で出力する行データ項目ごとに,半角文字から全角文字に切り替わる回数,および全角文字から半角文字に切り替わる回数を数えます。このとき,全角空白は半角空白2バイトに置き換えて数えます。
例えば,行データが「123あい う」の場合,「3」のあと,「い」のあとおよび,「う」の前で切り替わりが発生するので,切り替わり回数は3回となります。
- 文字サイズ/字間値/書体/横倍の切り替わり回数
-
POINT/INTERVAL/FORMAT/WIDE の属性ごとに属性の切り替わり回数を数えます。属性値が同じ値の場合は,切り替わりが発生しません。属性の指定が省略されている場合は,デフォルト(ドローの書式定義で指定した値)に切り替わるものとして数えます。
例えば,次に示す例の場合,文字サイズ切り替わり回数は2回,字間値切り替わり回数は2回となります。
03 DATA1 PIC X(5). …切り替わりなし 03 DATA2 PIC X(5) POINT-9 INTERVAL-0. …文字サイズ9ポ,字間値0ポに切り替わる 03 DATA3 PIC X(5) POINT-9 INTERVAL-0. …切り替わりなし 03 DATA4 PIC X(5) POINT-9. …字間値がデフォルトに切り替わる 03 DATA5 PIC X(5). …文字サイズがデフォルトに切り替わる 03 DATA6 PIC X(5). …切り替わりなし
- 〈この項の構成〉
(1) 「WRITE 行データFROM データ1」形式の処理で,CHARACTER TYPE句指定なしの場合
- COBOL記述例
-
- 定義部
01 行データ. 02 項目A PIC X(10). 02 項目B PIC X(10). 01 データ1. 02 項目1 PIC X(10). 02 項目2 PIC X(5). 02 項目3 PIC X(5).
- 処理部
WRITE 行データ FROM データ1.
- 概算式
-
1ページデータ量の上限
- 印刷ドキュメント名を指定していない場合
-
32767≧行データの和※+62
- 印刷ドキュメント名を指定している場合
-
32767≧行データの和※+ 印刷ドキュメント名の長さ + 70
- 注※
-
行データの和={行データの領域長+(データ中の平均全角/半角切り替わり回数×2)+10}×行数
(2) 「WRITE 行データFROM データ1」形式の処理で,データ1にCHARACTER TYPE句指定ありの場合
- COBOL記述例
-
- 定義部
01 行データ. 02 項目A PIC X(10). 02 項目B PIC X(10). 01 データ1. 02 項目1 PIC X(10) CHARACTER TYPE POINT-9 INTERVAL-0. 02 項目2 PIC X(5). 02 項目3 PIC X(5).
- 処理部
WRITE 行データ FROM データ1.
- 概算式
-
1ページデータ量の上限
- 印刷ドキュメント名を指定していない場合
-
32767≧行データの和※+62
- 印刷ドキュメント名を指定している場合
-
32767≧行データの和※+ 印刷ドキュメント名の長さ + 70
- 注※
-
行データの和={データ1の各項目の長さの和
+(データ1の各項目内での平均全角/半角切り替わり回数の和×2)
+(データ1の各項目への平均文字サイズ切り替わり回数の和×3)
+(データ1の各項目への平均字間値切り替わり回数の和×3)
+(データ1の各項目への平均書体切り替わり回数の和×3)
+(データ1の各項目への平均横倍切り替わり回数の和×4)
+(データ1の項目の数×2)
+8}×行数
(3) 「WRITE 行データ」形式の処理で,CHARACTER TYPE句指定なしの場合
- COBOL記述例
-
- 定義部
01 行データ. 02 項目1 PIC X(10). 02 項目2 PIC X(5). 02 項目3 PIC X(5).
- 処理部
WRITE 行データ.
- 概算式
-
1ページデータ量の上限
- 印刷ドキュメント名を指定していない場合
-
32767≧行データの和※+62
- 印刷ドキュメント名を指定している場合
-
32767≧行データの和※+ 印刷ドキュメント名の長さ + 70
- 注※
-
行データの和={行データの領域長+(データ中の平均全角/半角切り替わり回数×2)+10}×行数
(4) 「WRITE 行データ」形式の処理で,CHARACTER TYPE句指定ありの場合
- COBOL記述例
-
- 定義部
01 行データ. 02 項目1 PIC X(10) CHARACTER TYPE POINT-9 INTERVAL-0. 02 項目2 PIC X(5). 02 項目3 PIC X(5).
- 処理部
WRITE 行データ.
- 概算式
-
1ページデータ量の上限
- 印刷ドキュメント名を指定していない場合
-
32767≧行データの和※+62
- 印刷ドキュメント名を指定している場合
-
32767≧行データの和※+ 印刷ドキュメント名の長さ + 70
- 注※
-
行データの和={行データの各項目の長さの和
+(行データの各項目内での平均全角/半角切り替わり回数の和×2)
+(行データの各項目への平均文字サイズ指定回数の和×3)
+(行データの各項目への平均字間値切り替わり回数の和×3)
+(行データの各項目への平均書体切り替わり回数の和×3)
+(行データの各項目への平均横倍切り替わり回数の和×4)
+(行データの項目の数×2)
+8}×行数