2020年02月13日
【ABAP】WRITE命令
WRITE命令の構文ルール、利用方法、各種オプションについて解説しています。
WRITE命令は、内容自体は理解しやすく構文も簡単ですが、出力位置の指定方法などに独特なコツとツボが存在します。
また、WRITE命令1つで一覧画面を作ることができる分、出力位置の指定や書式の設定方法など、かなり詳細なプログラミング知識が必要になってきます。
「WRITE命令の基本」に観点を絞って整理していきたいと思います。
目次
1 構文ルール:WRITE命令
2 WRITE AT
3 WRITE /
1 構文ルール:WRITE命令
2 WRITE AT
3 WRITE /
1 構文ルール:WRITE命令
WRITE (データオブジェクト or リテラル).
もっとも基本的な形です。
WRITE命令は、(データオブジェクト or リテラル)の内容を、一覧ページに書き込みます。
ここで指定するデータオブジェクトは基本どのデータ型でもOKです。
フィールドシンボルも指定することができます。
重要なのは、WRITE命令をこれから解説するオプションを利用しない場合(デフォルトで利用する場合)、出力形式や表示位置が自動的に指定されてしまうという点です。
したがって、実際のプログラムでWRITE命令がオプションなしで利用されるのはかなりのレアケースといっても過言ではないでしょう。
2 WRITE AT
WRITE AT 位置(長さ) データオブジェクト.
「AT」オプションにより、出力位置を指定することができます。
どこから、どれぐらいの桁長で出力するかを指定します。
WRITE AT命令では、この位置を探すのが結構難しいのです。
帳票系のプログラムは、この点に気を付けて細かくテストしてあげるのが重要であるといえます。
3 WRITE /
WRITE /(データオブジェクト).
WRITEの直後にスラッシュ "/" を入れると、次の行に出力されます。
改行前が空白文字の場合
"/" を用いる場合の注意点は、改行をする前の行がブランクの場合です。
改行をする前の行がブランクの場合は、"/" を記述しても改行されません。
"/" は、「改行する」というよりも「ブランクの行に出力する」という意味でとらえておくとよいでしょう。
タグ:ABAP
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/9630429
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック