SY-SUBRCの「RC」は”Return Code”の略。

普通Boolean型はTrue/Falseのどちらかが設定されますが、SY-SUBRCの場合はもう少し細かい値(成功:0 / 失敗:4 / 特殊な失敗:8 など)が設定されます。

 

システム項目「SY-DATUM」には現在の日付が入ります。

SY-DATUMの値はサーバーの日付と一致します。

逆に言えば、サーバーの日付が実際とずれてしまっているような場合は、それに伴ってSY-DATUMの値もずれた状態となります。

 

SY-UNAMEは、ログインしているユーザIDが入ってきます。

ユーザIDに応じてデータの抽出結果を変えたい場合、帳票作成やALVを実行した人の名前を画面上に表示したい場合など。使いどころは工夫次第です。

 

SY-DBCNTは、オープンSQLでデータベースを操作した際、処理に成功したレコード数を保持するためのシステム項目です。わかりやすい例でいえば、SELECT‐SINGLE命令を発して、レコードの取得に成功した場合、SY-DBCNTには「1」が入ります。

レコード処理の成功可否については、SY-SUBRCに値が入ります。SY-DBCNTは、あくまでも「レコードの処理件数」が入ります。

 

SY-BATCHはプログラムの実行方法、すなわち今実行しているプログラムが「オンライン実行」されているのか?「バックグラウンド実行」されているのか?を判別するシステム項目です。

バックグラウンド実行の場合に「SY-BATCH」は「X」が設定されます。オンライン実行の場合はブランクです。バックグラウンド実行のみを許可しているプログラムでは、この「SY-BATCH」の値が「X」のみの場合に実行を許可する仕様にしています。

 

SY-TABIXは、現在ループしているテーブルの対象行を格納する項目です。

例えば、内部テーブルの10行目をループしている最中であれば、SY-TABIXには「10」が設定されます。LOOP A...ENDLOOPとREAD ABLEでよく使われるイメージ。

 

SY-INDEX   ループインデックス:現在のループパスを含む以前のループパスが含まれます。特にDO...ENDDOでしか使われない感じです。

SY-UCOMM  イベントPAIを発生させた機能コード

SY-UZEIT   システム時刻

コーディング時に必要となるトランザクションコード

・SE38/SE80
ABAPでのコーディング時に必須となるトランザクションコードです。SE38/SE80を入力することで、システム上でコーディングするためのABAPエディタを開くことができます。
ABAPエディタでは新規プログラムの登録や修正、作成済みプログラムの照会のほか、直接プログラムを実行することも可能です。

・SE37
SAPシステムの機能である、汎用モジュールに関する処理を行うトランザクションコードです。
汎用モジュールとはプログラム間で共通の処理をカプセル化し、任意のタイミングで呼び出せるようにしてあるパーツと考えて良いでしょう。
他言語で言うところの、メソッドや関数といったものに近いと言えます。
汎用モジュール自体もプログラムですので、独自に作成した汎用モジュールはシステム内における貴重な資産となるのです。
また、SAPに標準搭載してある機能を汎用モジュール化したBAPIも、このSE37から利用できるので是非覚えておくことをおすすめします。

・SE11
SAPシステム内で利用するテーブルの定義や、データの型を管理する「ABAPディクショナリ」にアクセスできるトランザクションコードです。
新規にテーブルやデータ型を作成して登録する際に利用します。
アドオン開発ではプログラム開発とともに新規テーブルの登録も頻繁に発生しますので、開発作業には必須となるトランザクションコードです。

 

移送時に必要となるトランザクションコード

・SE01
開発や修正作業に伴って取得した移送依頼番号を管理するためのトランザクションコードです。
自分のユーザIDで取得した移送依頼番号が一覧表示されるほか、移送依頼のステータス(リリース済み、未リリースなど)を確認できます。さらに移送依頼の名称を変更することも可能です。
SAPシステムにおいて、システムに何らかの変更を加えた場合には、必ず移送依頼番号がセットになるということを念頭に置きましょう。

いくつかの例外もありますが、基本的にはこの認識で問題ありません。
開発環境からリリースされた移送依頼番号が上位の環境(テスト環境など)に適用されることで、開発の成果がシステムに反映されることになります。

・SE09
移送依頼のうち、主にプログラミングに関するものを管理するためのトランザクションコードです。

現在ではSE01に機能が集約されていますので、あまり使用する機会は無いと言えますが、覚えておいて損はないでしょう。

・SE10
こちらはカスタマイジングに関する移送依頼を管理しています。
同様にSE01に機能が内包されるようになり、使用する機会は少なくなっていると言えます。

 

運用・保守作業で使うトランザクションコード

・SP01
SAPシステムでは夜間ジョブなどの実行結果ログがスプールとしてシステム内に保存されます。
SP01を使用することでこのスプールの内容を参照し、ジョブ実行結果やログ解析に活用することが可能です。

・ST22
ABAPプログラムから吐き出されたダンプファイルの内容を確認することができます。プログラムが実行エラーを吐き出して
処理が中断している場合は、このST22から原因を探ることになるでしょう。

・SU01

SAPシステムを利用するユーザを管理するためのトランザクションコードです。
新規ユーザの登録、ユーザデータの更新の他、共通事項を持つユーザを定義づけるユーザグループも設定可能です。

・SM37
バックグラウンドで走行するジョブの実行結果を確認するために使用されます。
毎日定刻に実行される日次ジョブの動作を確認するほか、特定のジョブのパフォーマンスが著しく低下していたり、実行後にエラーが発生したりといったイレギュラーなケースでも、SP01と組み合わせて使用することが多いでしょう。