!--a11y-->

ABAP プログラムでは、常に ABAP システム項目を使用することができます。実行システムでは、コンテキストにしたがって ABAP システム項目に値が挿入されます。プログラム内で ABAP システム項目を使用して、システムステータスを問い合わせることが可能です。システム項目の値は可変的なものですが、必ず定数のように使用し、読み込み専用の値として使用します。ABAP システム項目の値を変更すると、プログラムのフローに関する重要な情報が失われることがあります。例外的な状況において、システムを制御するために、ABAP プログラムでシステム項目が上書きされる場合があります。たとえば、詳細一覧にナビゲートするために、SY-LSIND を変更する場合です。
特例 として、システム項目の名前とデータ型は、ABAP ディクショナリにSYST 構造で格納され、ABAP プログラムでは、あらかじめ定義されている構造 SY のコンポーネントとして認識されます。
システム項目 SY-REPID は、SYST または SY には定義されていません。代わりに、すべてのプログラムには、事前に定義された定数 SY-REPID および SYST-REPID が含まれています。これらの値には、対応するプログラムの名前が含まれています。また、事前に定義された、同じ名前のデータ型SY-REPID と SYST-REPID があります。
すべてのシステム項目は、SYST の項目名を使用している SY の項目名およびデータ型によって処理されます。
次の表は、ABAP ディクショナリの SYST 構造の定義をアルファベット順に並べたものです。最初の列の記号は、ABAP プログラム内で対応するシステム項目をどのように使用できるかを示しています。名前はコンポーネントの名前、 データ型はディクショナリのデータ型、長さは、ディクショナリで定義されている項目長を表しています。 用途は、システム項目がどのような環境で設定されるかを表しています。説明は、システム項目の内容を示しています。
|
|
名前 |
データ型 |
長さ |
用途 |
説明 |
|
|
ABCDE |
CHAR |
26 |
定数 |
アルファベット (A 、B 、C 、...) |
|
|
APPLI |
RAW |
2 |
|
|
|
|
BATCH |
CHAR |
1 |
バックグラウンド処理 |
|
|
|
BATZD |
CHAR |
1 |
|
|
|
|
BATZM |
CHAR |
1 |
無効 |
|
|
|
BATZO |
CHAR |
1 |
無効 |
|
|
|
BATZS |
CHAR |
1 |
|
|
|
|
BATZW |
CHAR |
1 |
無効 |
|
|
|
BINPT |
CHAR |
1 |
バッチインプット |
|
|
|
BREP4 |
CHAR |
4 |
無効 |
|
|
|
BSPLD |
CHAR |
1 |
無効 |
|
|
|
CALLD |
CHAR |
1 |
ABAP プログラム |
ABAP プログラムのコールモード |
|
|
CALLR |
CHAR |
8 |
一覧印刷 |
印刷ダイアログ関数の ID |
|
|
CCURS |
DEC |
9 |
|
|
|
|
CCURT |
DEC |
9 |
無効 |
|
|
|
CDATE |
DATS |
8 |
無効 |
|
|
|
CFWAE |
CUKY |
5 |
|
|
|
|
CHWAE |
CUKY |
5 |
内部 |
|
|
|
COLNO |
INT4 |
10 |
一覧の作成 |
|
|
|
CPAGE |
INT4 |
10 |
一覧の処理 |
|
|
|
CPROG |
CHAR |
40 |
ABAP プログラム |
|
|
|
CTABL |
CHAR |
4 |
無効 |
|
|
|
CTYPE |
CHAR |
1 |
無効 |
|
|
|
CUCOL |
INT4 |
10 |
画面 |
PAI における水平のカーソル位置 |
|
|
CUROW |
INT4 |
10 |
画面 |
PAI における垂直のカーソル位置 |
|
|
DATAR |
CHAR |
1 |
画面 |
|
|
|
DATLO |
DATS |
8 |
日付と時刻 |
ユーザのローカル日付 |
|
|
DATUM |
DATS |
8 |
日付と時刻 |
現在の ( アプリケーションサーバの) 日付 |
|
|
DAYST |
CHAR |
1 |
日付と時刻 |
|
|
|
DBCNT |
INT4 |
10 |
データベースアクセス |
|
|
|
DBNAM |
CHAR |
20 |
ABAP プログラム |
|
|
|
DBSYS |
CHAR |
10 |
R/3 システム |
|
|
|
DCSYS |
CHAR |
4 |
|
|
|
|
DEBUG |
CHAR |
1 |
|
|
|
|
DSNAM |
CHAR |
8 |
|
|
|
|
DYNGR |
CHAR |
4 |
ABAP プログラム |
現在の画面の Dynpro グループ |
|
|
DYNNR |
CHAR |
4 |
ABAP プログラム |
現在の画面の Dynpro 番号 |
|
|
ENTRY |
CHAR |
72 |
|
|
|
|
FDAYW |
INT1 |
3 |
日付と時刻 |
|
|
|
FDPOS |
INT4 |
10 |
文字列 |
|
|
|
FFILE |
CHAR |
8 |
|
|
|
|
FLENG |
INT4 |
10 |
内部 |
|
|
|
FMKEY |
CHAR |
3 |
|
|
|
|
FODEC |
INT4 |
10 |
内部 |
|
|
|
FOLEN |
INT4 |
10 |
内部 |
|
|
|
FTYPE |
CHAR |
1 |
内部 |
|
|
|
GROUP |
CHAR |
1 |
|
|
|
|
HOST |
CHAR |
8 |
R/3 システム |
|
|
|
INDEX |
INT4 |
10 |
ループ |
|
|
|
INPUT |
CHAR |
1 |
内部 |
|
|
|
LANGU |
LANG |
1 |
R/3 システム |
|
|
|
LDBPG |
CHAR |
40 |
ABAP プログラム |
|
|
|
LILLI |
INT4 |
10 |
一覧の処理 |
|
|
|
LINCT |
INT4 |
10 |
一覧の作成 |
|
|
|
LINNO |
INT4 |
10 |
一覧の作成 |
|
|
|
LINSZ |
INT4 |
10 |
一覧の作成 |
|
|
|
LISEL |
CHAR |
255 |
一覧の処理 |
|
|
|
LISTI |
INT4 |
10 |
一覧の処理 |
|
|
|
LOCDB |
CHAR |
1 |
|
|
|
|
LOCOP |
CHAR |
1 |
無効 |
|
|
|
LOOPC |
INT4 |
10 |
画面 |
|
|
|
LPASS |
CHAR |
4 |
|
|
|
|
LSIND |
INT4 |
10 |
一覧の処理 |
|
|
|
LSTAT |
CHAR |
16 |
一覧の処理 |
一覧レベルの ID |
|
|
MACDB |
CHAR |
4 |
|
|
|
|
MACOL |
INT4 |
10 |
一覧印刷 |
SET MARGIN 命令のカラム |
|
|
MANDT |
CLNT |
3 |
R/3 システム |
|
|
|
MARKY |
CHAR |
1 |
|
|
|
|
MAROW |
INT4 |
10 |
一覧印刷 |
SET MARGIN 命令の行 |
|
|
MODNO |
CHAR |
1 |
R/3 システム |
|
|
|
MSGID |
CHAR |
20 |
メッセージ |
メッセー ジクラス |
|
|
MSGLI |
CHAR |
60 |
メッセージ |
|
|
|
MSGNO |
NUMC |
3 |
メッセージ |
|
|
|
MSGTY |
CHAR |
1 |
メッセージ |
|
|
|
MSGV1 |
CHAR |
50 |
メッセージ |
|
|
|
MSGV2 |
CHAR |
50 |
メッセージ |
メッセージ変数 |
|
|
MSGV3 |
CHAR |
50 |
メッセージ |
メッセージ変数 |
|
|
MSGV4 |
CHAR |
50 |
メッセージ |
メッセージ変数 |
|
|
NEWPA |
CHAR |
1 |
|
|
|
|
NRPAG |
CHAR |
1 |
内部 |
|
|
|
ONCOM |
CHAR |
1 |
|
|
|
|
OPSYS |
CHAR |
10 |
R/3 システム |
アプリケーションサーバの OS |
|
|
PAART |
CHAR |
16 |
印刷パラメータ |
|
|
|
PAGCT |
INT4 |
10 |
|
|
|
|
PAGNO |
INT4 |
10 |
一覧の作成 |
|
|
|
PAUTH |
NUMC |
2 |
内部 |
|
|
|
PDEST |
CHAR |
4 |
印刷パラメータ |
|
|
|
PEXPI |
NUMC |
1 |
印刷パラメータ |
保有期間 |
|
|
PFKEY |
CHAR |
20 |
画面 |
現在の GUI ステータス |
|
|
PLAYO |
CHAR |
5 |
|
|
|
|
PLAYP |
CHAR |
1 |
内部 |
|
|
|
PLIST |
CHAR |
12 |
印刷パラメータ |
|
|
|
PNWPA |
CHAR |
1 |
|
|
|
|
PRABT |
CHAR |
12 |
印刷パラメータ
|
|
|
|
PRBIG |
CHAR |
1 |
印刷パラメータ |
表紙の選択 |
|
|
PRCOP |
NUMC |
3 |
印刷パラメータ |
|
|
|
PRDSN |
CHAR |
6 |
印刷パラメータ |
スプールデータセットの名前 |
|
|
PREFX |
CHAR |
3 |
|
|
|
|
PRI40 |
CHAR |
1 |
内部 |
|
|
|
PRIMM |
CHAR |
1 |
印刷パラメータ |
|
|
|
PRINI |
NUMC |
1 |
内部 |
|
|
|
PRLOG |
CHAR |
1 |
内部 |
|
|
|
PRNEW |
CHAR |
1 |
印刷パラメータ |
新しいスプール依頼 |
|
|
PRREC |
CHAR |
12 |
印刷パラメータ |
受信者 |
|
|
PRREL |
CHAR |
1 |
印刷パラメータ |
印刷後に削除 |
|
|
PRTXT |
CHAR |
68 |
印刷パラメータ |
|
|
|
REPI2 |
CHAR |
40 |
|
|
|
|
REPID |
CHAR |
40 |
ABAP プログラム |
|
|
|
RSTRT |
CHAR |
1 |
内部 |
|
|
|
RTITL |
CHAR |
70 |
印刷パラメータ |
印刷するプログラムのタイトル |
|
|
SAPRL |
CHAR |
4 |
R/3 システム |
R/3 システムのリリースステータス |
|
|
SCOLS |
INT4 |
10 |
画面 |
|
|
|
SFNAM |
CHAR |
30 |
無効 |
|
|
|
SFOFF |
INT4 |
10 |
内部 |
|
|
|
SLSET |
CHAR |
14 |
選択画面 |
|
|
|
SPONO |
NUMC |
10 |
一覧印刷 |
|
|
|
SPONR |
NUMC |
10 |
無効 |
|
|
|
SROWS |
INT4 |
10 |
画面 |
|
|
|
STACO |
INT4 |
10 |
一覧の処理 |
|
|
|
INT4 |
10 |
一覧の処理 |
最上位に表示されている行 |
|
|
|
STEPL |
INT4 |
10 |
画面 |
|
|
|
SUBCS |
CHAR |
1 |
内部 |
|
|
|
SUBRC |
INT4 |
10 |
リターンコード |
ABAP 命令で返されるリターンコード |
|
|
SUBTY |
RAW |
1 |
|
|
|
|
SYSID |
CHAR |
8 |
R/3 システム |
R/3 システムの名称 |
|
|
TABID |
CHAR |
8 |
|
|
|
|
TABIX |
INT4 |
10 |
内部テーブル |
|
|
|
TCODE |
CHAR |
20 |
ABAP プログラム |
|
|
|
TFDSN |
CHAR |
8 |
|
|
|
|
TFILL |
INT4 |
10 |
内部テーブル |
|
|
|
TIMLO |
TIMS |
6 |
日付と時刻 |
|
|
|
TITLE |
CHAR |
70 |
画面 |
|
|
|
TLENG |
INT4 |
10 |
内部テーブル |
|
|
|
TLOPC |
INT4 |
10 |
内部 |
|
|
|
TMAXL |
INT4 |
10 |
|
|
|
|
TNAME |
CHAR |
30 |
|
|
|
|
TOCCU |
INT4 |
10 |
|
|
|
|
TPAGI |
INT4 |
10 |
|
|
|
|
TSTIS |
INT4 |
10 |
内部 |
|
|
|
TTABC |
INT4 |
10 |
|
|
|
|
TTABI |
INT4 |
10 |
|
|
|
|
TVAR0 |
CHAR |
20 |
一覧の作成 |
ヘッダのテキスト変数 |
|
|
TVAR1 |
CHAR |
20 |
一覧の作成 |
ヘッダのテキスト変数 |
|
|
TVAR2 |
CHAR |
20 |
一覧の作成 |
ヘッダのテキスト変数 |
|
|
TVAR3 |
CHAR |
20 |
一覧の作成 |
ヘッダのテキスト変数 |
|
|
TVAR4 |
CHAR |
20 |
一覧の作成 |
ヘッダのテキスト変数 |
|
|
TVAR5 |
CHAR |
20 |
一覧の作成 |
ヘッダのテキスト変数 |
|
|
TVAR6 |
CHAR |
20 |
一覧の作成 |
ヘッダのテキスト変数 |
|
|
TVAR7 |
CHAR |
20 |
一覧の作成 |
|
|
|
TVAR8 |
CHAR |
20 |
一覧の作成 |
ヘッダのテキスト変数 |
|
|
TVAR9 |
CHAR |
20 |
一覧の作成 |
ヘッダのテキスト変数 |
|
|
TZONE |
INT4 |
10 |
日付と時刻 |
|
|
|
UCOMM |
CHAR |
70 |
画面 |
PAI をトリガした機能コード |
|
|
ULINE |
CHAR |
255 |
定数 |
長さ 255 の水平行 |
|
|
UNAME |
CHAR |
12 |
R/3 システム |
|
|
|
UZEIT |
TIMS |
6 |
日付と時刻 |
現在の ( アプリケーションサーバの) 時刻 |
|
|
VLINE |
CHAR |
1 |
定数 |
|
|
|
WAERS |
CUKY |
5 |
|
|
|
|
WILLI |
INT4 |
10 |
|
|
|
|
WINCO |
INT4 |
10 |
無効 |
|
|
|
WINDI |
INT4 |
10 |
無効 |
|
|
|
WINRO |
INT4 |
10 |
無効 |
|
|
|
WINSL |
CHAR |
79 |
無効 |
|
|
|
WINX1 |
INT4 |
10 |
|
|
|
|
WINX2 |
INT4 |
10 |
無効 |
|
|
|
WINY1 |
INT4 |
10 |
無効 |
|
|
|
WINY2 |
INT4 |
10 |
無効 |
|
|
|
WTITL |
CHAR |
1 |
一覧の作成 |
|
|
|
XCODE |
CHAR |
70 |
|
|
|
|
XFORM |
CHAR |
30 |
内部 |
|
|
|
XPROG |
CHAR |
40 |
内部 |
|
|
|
ZONLO |
CHAR |
6 |
日付と時刻 |
|
|
このシステム項目は実行時環境によって設定されます。内容は ABAP プログラムで評価できますが、変更することはできません。 |
|
|
このシステム項目は実行時環境によって設定されます。システム項目の内容を ABAP プログラムで変更して、実行時環境に反映させることができます。 |
|
|
このシステム項目は、ABAP プログラムで設定する必要があります。設定した後で、実行時環境またはプログラムによって評価することができます。 |
|
|
このシステム項目は内部使用のみで、ABAP プログラムで使用することはできません。 |
|
|
このシステム項目は廃止されており、内容は設定されていません。ABAP プログラムで使用することはできません。 |
次に、システム項目のテーマ別の概要、およびその使用に関する注意事項について説明します。
キ 現在の R/3 システムの情報
キ 現在の ABAP プログラムの情報
ABAP プログラム
キ 文字列
キ 内部テーブル
画面
キ 画面
廃止されたシステム項目
現在のデータベースシステム (INFORMIX 、ORACLE など)
アプリケーションサーバ (HS0333 、PAWDF087 など)
アプリケーションサーバの OS (HP-UX 、SINIX など)
R/3 システムのリリースステータス (30D 、46A など)
R/3 システムの名称 (B20 、I47 など)
1 桁の言語キー (D 、E 、F など) 。ユーザのログオン言語、または SET LOCALE LANGUAGE 命令を使用して設定された言語が使用されます。
ユーザがログオンしたクライアント番号
(000
、400
など)
。
オープン SQL
を使用してデータベースにアクセスする場合は、SY-MANDT
は WHERE
句の最初のキー項目として使用されます。
外部モードの索引。最初のモードの索引は 0 になっています。モードの作成機能を使用して、または /o を使用してトランザクションをコールすることによってオープンされた新しいモードでは、索引は 1 になります。前のモードが削除されていた場合は、空いている番号が最初に使用されます。CALL TRANSACTION … STARTING NEW TASK を使用してオープンされたモードは、索引が 0 になります。
ユーザのログオン名 (KELLERH 、BC400-01 など)
次のシステム項目は、常に自動的に設定されます。必要な場合は、GET TIME 命令を使用して、アプリケーションサーバの時刻と、データベースサーバの時刻を合わせて、システム項目 SY-UZEIT にその時刻を書き込みます。SY-DATUM 、およびローカルなタイムゾーンに対するシステム項目(SY-TIMLO 、SY-DATLO 、SY-ZONLO) もリセットされます。
ユーザのローカル日付 (19981129 、19990628 など)
現在の ( アプリケーションサーバの) 日付 (19981130 、19990627 など)
夏時間調整中の時間の場合は X 、それ以外の場合は空白となります。
1 週間の稼動日カレンダ ( 土曜日は 0 、… 日曜日は 6)
ユーザのローカル時刻 (154353 、225312 など)
秒数で表したグリニッジ標準時 (UTC) との時差 (3600 、10800 など)
現在の ( アプリケーションサーバの) 時刻 (164353 、215312 など)
ユーザのタイムゾーン (CET 、UTC など)
プログラムが最初のもので、コールチェーンに 1 つのプログラムのみが含まれている場合は、SY-CALLD は SPACE になります。コールチェーン内でコールされたプログラムの場合は、SY_CALLD の内容は X となります (ABAP のコール概要 を参照) 。
キ CALL TRANSACTION, CALL DIALOG 、または SUBMIT … AND RETURN を使用してコールされたプログラムでは、SY-CALLD はX に設定されます。
キ LEAVE TO TRANSACTION を使用した、画面でトランザクションコードを入力した、およびバッチインプットフォルダを処理したことによってコールされたプログラムでは、SY-CALLD は SPACE が設定されます。
キ SUBMIT を使用した場合 (RETURN を使用しない場合) は、SY-CALLD は前の値のままになります。
外部でコールされたプロシージャでは、呼出元プログラムの名前になり、その他の場合は、現在のプログラムの名前になります。外部でコールされたプロシージャが、別の外部プロシージャをコールした場合は、SY-CPROG では、最初のメインプログラムの名前を保持し、以降の呼出元のメインプログラムの名前は 設定されません。
実行可能プログラムでは、論理データベースにリンクされます。
現在の画面の Dynpro グループ。1 つの Dynpro グループに対して複数の画面を割り当てることができます。このシステム項目は、グループ内のすべての画面を同じように修正する場合などに使用できます。
現在の画面の Dynpro 番号。選択画面の処理中は、現在の選択画面の Dynpro 番号となります。一覧の処理中は、コンテナ画面の Dynpro 番号となります。従属画面の処理中は、従属画面の Dynpro 番号となります。これは、タブストリップにも適用されます。
実行可能プログラムでは、リンクされている論理データベースのデータベースプログラムとなります。
現在の ABAP プログラムの名称。外部でコールされたプロシージャでは、そのプロシージャのメインプログラムの名前になります。
リリース 6.10 以前は、SY-REPID が実際のパラメータとして外部プロシージャに送信されると、仮パラメータには呼出元の名前が設定されず、プロシージャのメインプログラムの名前が設定されていました。SY-REID は、コールの前に補助変数に送信するか、または SY-PROG を使用する必要がありました。
リリース 6.10 以降の SY-REPID は、SYST または SY の構造の一部ではなく別の定数となり、外部のプロシージャに直接送信できるようになりました。
現在のトランザクションコードの名前
バックグラウンドで実行されている ABAP プログラムの場合は、X が設定されます。それ以外の場合は空白になります。
バッチインプットフォルダの処理中、および CALL TRANSACTION USING を使用してコールされたABAP プログラムでは X が設定されます。それ以外の場合は空白になります。
キ CALL TRANSACTION USING 命令の OPTIONS FROM で、プログラム全体の実行、および BDC データの終了時にSY-BINPT が空白になるように設定することができます。
キ CATT プロシージャでは、SY-BINPT は常に空白になります。
アルファベットが含まれます。このシステム項目を使用し、オフセットを指定することによって、コードページの個別の文字にアクセスすることができます。
255 文字の水平行が含まれています。一覧を作成するときに使用します。
垂直線(|) が含まれています。一覧を作成するときに使用します。
( 現在のループパスも含めた) DO およびWHILE ループのループパスの数が設定されます。
文字型の項目の操作で使用される場所を表します。
キ 比較において演算子 CO 、CN 、CA 、NA 、CS 、NS 、CP 、NP が使用される場合は、SY-FDPOS は、比較結果に応じてオフセットの値が割り当てられます。
キ SEARCH … FOR … を使用すると、SY-FDPOS には、検出された検索文字列のオフセットが設定されます。
内部テーブルの現在の行が設定されます。次の命令では、SY-TABIX は索引テーブルに対して設定されます。ハッシュテーブルでは、SY-TABIX には値が設定されないか、または 0 に設定されます。
キ APPEND では、テーブルの最終行の索引が設定されます。つまり、ターゲットテーブルのエントリの総数を表します。
キ COLLECT では、現在のテーブル行、または追加されたテーブル行の索引が設定されます。ハッシュテーブルでは、0 が設定されます。
キ LOOP AT では、それぞれのループパスの最初における現在のテーブル行の索引が設定されます。ループが終了すると、SY-TABIX には、ループに入る前の値が設定されます。ハッシュテーブルでは、0 が設定されます。
キ READ TABLE では、読み込まれたテーブル行の索引が設定されます。読み込み中にバイナリ検索で行が検出されなかった場合は、1 つ上位の行の索引、または行の総数 + 1 が SY-TABIX に設定されます。読み込み中に線形検索で行が検出されなかった場合は、SY-TABIX は定義されません。
キ SEARCH <itab> FOR では、検索文字列が見つかったテーブル行の索引が設定されます。
命令 DESCRIBE TABLE 、LOOP AT 、および READ TABLE を使用すると、SY-TFILL には、処理された内部テーブルの行番号が設定されます。
命令DESCRIBE TABLE 、LOOP AT 、およびREAD TABLE を使用すると、SY-TLENG には、処理された内部テーブルの行サイズが設定されます。
SQL 文では、SY-DBCNT の内容に、処理されたデータベースの行数が設定されます。オープン SQL の SELECT ループでは、SY-DBCNT はENDSELECT 命令の後に設定されます。Native SQL では、SY-DBCNT は ENDEXEC 命令の後に設定されます。
キ DELETE では、削除された行数が設定されます。
キ FETCH では、現在のカーソルによってすでに読み込まれた行数が設定されます。
キ INSERT では、挿入された行数が設定されます。
キ MODIFY では、処理された行数が設定されます。
キ UPDATE では、変更された行数が設定されます。
次の ABAP 命令によって設定されるリターンコードです。通常、0 は、命令が正常に実行されたことを表します。
キ ASSIGN では、フィールドシンボルに対する割当が可能な場合は 0 が設定され、その他の場合は4 が設定されます。
キ ASSIGN <dref>->* では、デリファレンスが可能な場合は 0 が設定され、その他の場合は4 が設定されます。
キ AUTHORITY-CHECK では、ユーザが必要な権限を持っている場合は 0 が設定され、その他の場合は原因に応じて4 、8 、12 、16 、24 、28 、32 、または 36 が設定されます。
キ CALL DIALOG 命令で USING を指定すると、処理が正常に終了した場合は 0 が設定され、その他の場合は0 以外が設定されます。
キ CALL FUNCTION では、例外処理にしたがって値が設定されます。
キ CALL METHOD では、例外処理にしたがって値が設定されます。
キ CALL SELECTION-SCREEN では、ユーザが 入力 または 実行 を選択した場合は 0 が設定され、 中止 を選択した場合は 4 が設定されます。
キ CALL TRANSACTION 命令で USING を指定すると、処理が正常に終了した場合は 0 が設定され、その他の場合は0 以外が設定されます。
キ CATCH SYSTEM-EXCEPTIONS では、実行時エラーが発生した場合に ENDCATCH 命令の後で特定の値が設定されます この値はプログラムで指定されます。
キ COMMIT WORK では 0 が設定されます。
キ COMMIT WORK AND WAIT では、更新が正常に終了した場合は 0 が設定され、その他の場合は0 以外が設定されます。
キ COMMUNICATION INIT DESTINATION … RETURNCODE では、指定したとおりの値が設定されます。
キ CONCATENATE では、結果がターゲット変数に適している場合は 0 が設定され、その他の場合は4 が設定されます。
キ CREATE OBJECT では、インスタンスコンストラクタの例外が処理されるかどうかが設定されます。
キ OLE2 で CREATE OBJECT を指定すると、外部オブジェクトが作成された場合には 0 が設定され、その他の場合は原因に応じて 1 、2 、3 のいずれかが設定されます。
キ DELETE では、処理が正常に終了した場合は 0 が設定され、その他の場合は、原因に応じて 4 、または 0 以外の値が設定されます。
キ DEMAND … MESSAGES INTO では、メッセージテーブルが空の場合は 0 が設定され、その他の場合は 0 以外が設定されます。
キ DESCRIBE LIST では、行または一覧が存在する場合は 0 が設定され、その他の場合は4 または 8 が設定されます。
キ EXEC SQL - ENDEXEC では、ほとんどすべての場合に 0 が設定されます。FETCH を指定して何も読み込めなかった場合のみ、4 が設定されます。
キ FETCH では、少なくとも 1 行が読み込めた場合には 0 が設定され、その他の場合は 4 が設定されます。
キ GENERATE SUBROUTINE POOL では、生成が正常に終了すると 0 が設定され、その他の場合は8 が設定されます。
キ GET CURSOR では、カーソルが正しく位置付けされた場合は 0 が設定され、その他の場合は4 が設定されます。
キ GET PARAMETER では、値が SAP メモリにある場合は 0 が設定され、その他の場合は 4 が設定されます。
キ IMPORT では、データオブジェクトのインポートが正常に終了した場合は 0 が設定され、その他の場合は4 が設定されます。
キ LOAD REPORT では、処理が正常に終了した場合は 0 が設定され、その他の場合は、原因に応じて 4 、または 8 が設定されます。
キ LOOP では、抽出のすべての要素で少なくとも 1 回ループが処理された場合は 0 が設定され、その他の場合は 4 が設定されます。
キ LOOP AT では、内部テーブル内のすべての要素で少なくとも 1 回ループが処理された場合は0 が設定され、その他の場合は 4 が設定されます。
キ MODIFY では、処理が正常に終了すると 0 が設定され、その他の場合は 4 が設定されます。
キ MODIFY LINE では、行が変更された場合は 0 が設定され、その他の場合は 0 以外が設定されます。
キ OLE2 にバンドルされている自動化コマンドでは、すべての処理が正常に終了した場合は 0 が設定され、その他の場合は原因に応じて 1 、2 、3 、4 が設定されます。
キ OPEN DATASET では、ファイルがオープンした場合は 0 が設定され、その他の場合は8 が設定されます。
キ オープン SQL 命令では、処理が正常に終了した場合は 0 が設定され、その他の場合は0 以外が設定されます。
キ OVERLAY では、少なくとも 1 つの文字が上書きされた場合には 0 が設定され、その他の場合は4 が設定されます。
キ READ DATASET では、読み込み処理が正常に終了した場合は 0 が設定され、その他の場合は、原因に応じて 4 、または 8 が設定されます。
キ READ LINE では、一覧の行が存在する場合は 0 が設定され、その他の場合は0 以外が設定されます。
キ READ TABLE では、テーブルの行が見つかった場合に 0 が設定され、その他の場合は原因に応じて 2 、4 、8 が設定されます。
キ REPLACE では、検索文字列を置き換えできる場合に 0 が設定され、その他の場合は 0 以外が設定されます。
キ ROLLBACK WORK では必ず 0 が設定されます。
キ SCROLL では、一覧のスクロールが正常に終了した場合は 0 が設定され、その他の場合は原因に応じて 4 または 8 が設定されます。
キ SEARCH では、検索文字列が見つかった場合に 0 が設定され、その他の場合は 4 が設定されます。
キ FETCH では、少なくとも 1 行が読み込めた場合には 0 が設定され、その他の場合は 4 が設定されます。
キ SET COUNTRY では、テーブル T005X で 国 ID が検出された場合は 0 が設定され、その他の場合は 4 が設定されます。
キ SET BIT では、ビットが設定された場合に 0 が設定され、その他の場合は0 以外が設定されます。
キ SET TITLEBAR では、タイトルが存在する場合は 0 が設定され、その他の場合は4 が設定されます。
キ SHIFT … UP TO では、文字列の中にポジションが見つかった場合は 0 が設定され、その他の場合は 4 が設定されます。
キ SPLIT では、対象項目のサイズが十分である場合に 0 が設定され、その他の場合は4 が設定されます。
キ UPDATE では、処理が正常に終了すると 0 が設定され、その他の場合は 4 が設定されます。
キ WRITE … TO では、割当が正常に終了すると 0 が設定され、その他の場合は 4 が設定されます。
システム項目は、すべての画面の PAI イベントで設定されます。SY-DATAR 、SY-LOOPC 、および SY-STEPL を除いて、これらのシステム項目は、インタラクティブな一覧処理で使用することもできます。
カーソルの水平位置で、2 カラムから始まります。
カーソルの垂直位置で、1 行目から始まります。
ユーザまたは他のデータ転送によって、少なくとも 1 つの画面入力項目が変更された場合は、PAI イベントで X が設定され、その他の場合は空白になります。
画面のテーブル ( テーブルコントロール) に表示されている行数
現在の画面の GUI ステータス。SET PF-STATUS を使用して PBO イベントで設定することができます。
現在の画面の列数
現在の画面の行数
画面のテーブル ( テーブルコントロール) の現在行の索引。それぞれのループパスで設定されます。テーブル行の POV イベントなど、ループの範囲外では、SY-STEPL は正しく設定されません。
画面のタイトルバーに表示されるテキスト。選択画面および一覧の場合は、プログラム名が設定され、その他の場合は SAP R/3 となります。SET TITLEBAR を使用して PBO イベントで設定することができます。
PAI イベントをトリガする機能コード。PAI イベントをトリガするすべてのユーザアクションは、一意の機能コードに割り当てられます。ただし例外として、 入力を選択して PAI がトリガされた場合は、SY-UCOMM に対して次のような機能コードを転送することができます。
キ 標準ツールバーのコマンドフィールドに値が入力された場合は、その値が機能コードとして SY-UCOMM に転送されます。
キ 標準ツールバーのコマンドフィールドに値が入力されず、ENTER キーに対して機能コードが割り当てられている場合は、その機能コードが SY-UCOMM に転送されます。
キ コマンドフィールドに値が入力されず、ENTER キーに機能コードが割り当てられていない場合は、SY-UCOMM は空白になり、内容は影響を受けません。
選択画面に値を挿入するためのバリアント
一覧を作成する場合には、以下のシステム項目を使用してナビゲートすることができます。これらのシステム項目を使用すると、出力命令によって既存の出力が上書きされることがなく、一覧の範囲外に書き込みが行われることがありません。あるタイミングでの出力位置は、常にシステム項目SY-COLNO および SY-LINNO に保有されており、その内容は出力命令ごとにリセットされます。残りのシステム項目には、一覧を作成するための他の値が含まれています。
一覧作成時の現在の列。カウントは 1 から始めます。SY-COLNO は次の出力命令によって設定されます。
キ WRITE 、ULINE 、SKIP では、SY-COLNO は次の出力位置に設定されます。
キ BACK では、SY-COLNO に 1 が設定されます。
キ POSITION <col> では、SY-COLNO に<col> が設定されます。<col> がページの範囲外にある場合は、以降の出力命令は無効になります。
キ NEW-LINE では、SY-COLNO に 1 が設定されます。
キ NEW-PAGE では、SY-COLNO に 1 が設定されます。
一覧のページ長。任意の長さの標準一覧の場合は、SY-LINCT は 0 となり、ページ長が固定である一覧の場合は、0 以外の値が設定されます。
キ REPORT 、PROGRAM 、およびFUNCTION POOL の LINE-COUNT では、現在のプログラムに対してSY-LINCT を設定します。
キ SUBMIT の LINE-COUNT では、呼出先プログラムに対して SY-LINCT を設定します。
一覧作成時の現在の行。カウントは 1 から始め、ページヘッダも含まれます。SY-LINNO は、以下の出力命令によって設定されます。
キ WRITE 、ULINE 、および SKIP では、改行した場合にSY-LINNO に 1 が加算されます。
キ BACK では、SY-LINNO に、ページヘッダ後の先頭行が設定されます。BACK と RESERVE を組み合わせて使用すると、SY-LINNO には、行ブロックの先頭行が設定されます。
キ NEW-LINE では、SY-LINNO に 1 が加算されます。
キ SKIP TO LINE <lin> では、SY-LINNO に <lin> が設定されます。<lin> が 1 と ページ長の範囲内にない場合は、この命令は無効になります。
一覧に含まれる 1 行の幅。特に指定されない場合は、これが標準のウィンドウ幅になります。SY-SCOLS >= 84 の場合はSY-LINSZ = SY-SCOLS 、SY-SCOLS < 84 の場合は SY-LINSZ = 84 となります。
出力一覧の幅を変更するには、REPORT または NEWPAGE 命令のLINE-SIZE オプションを使用します。
キ REPORT 、PROGRAM 、およびFUNCTION POOL の LINE-SIZE では、現在のプログラムに対してSY-LINSZ を設定します。
キ SUBMIT の LINE-SIZE では、呼出先プログラムに対して SY-LINSZ を設定します。
一覧作成時の現在のページ
キ WRITE 、ULINE 、および SKIP では、改行した場合にSY-PAGNO に 1 が加算されます。
キ NEW-PAGE では、SY-PAGNO に1 が加算されます。ただし、これは現在のページおよび NEW-PAGE 命令の後に少なくとも 1 つの出力がある場合に限定されます。
キ NEW-PAGE PRINT ON 命令の NEW-SECTION では、SY-PAGNO に 1 が設定されます。
プログラムで、これらのシステム項目に値を割り当てることができます。TOP-OF-PAGE イベントでは、プログラムの一覧のプレースホルダと列ヘッダが、システム項目SY-TVAR0 から SYTVAR9 の内容で置き換えられます。
REPORT 、PROGRAM 、および FUNCTION-POOL 命令で NO STANDARD PAGE HEADING オプションを使用した場合は、N が設定され、その他の場合は空白になります。NEW-PAGE では、SY-WTITL に値が設定されません。
インタラクティブな一覧のイベント、および READ-LINE に関するイベントが発生するたびに、以下のシステム項目が自動的に設定されます。
イベントがトリガされた一覧で、最初に表示されるページのページ番号。カウントは 1 から始まります。
イベントがトリガされた行。カウントは 1 から始め、ページヘッダも含まれます。
イベントがトリガされた行の内容
イベントがトリガされた行の索引
作成中の一覧の索引 ( 基本一覧の場合は 0 、詳細一覧の場合は >0) 。インタラクティブな一覧のイベントが発生するたびに、SY-LSIND は自動的に 1 が加算されます。SY-LSIND は、ABAP プログラムで変更して、複数の詳細一覧をナビゲートできるようにすることができます。SY-LSIND に対する変更は、一覧のイベントが終了するまで反映されません。したがって、SY-LISND の実際の操作は、処理ブロックの最後のコマンドによって完了します。
プログラム内の一覧レベルの ID 。SY-LSTAT には、一覧の作成時に ABAP プログラムで値を設定することができます。一覧の作成が完了したときに有効な値が、一覧に保存されます。インタラクティブな一覧のイベントでは、イベントの発生元である一覧に対して ( 一覧の作成時に) 割り当てられていた値がSY-LSTAT に設定されます。SY-LSTAT はこれ以降に更新されることはないため、使用されません。
イベントがトリガされた一覧で、最初に表示されるページの列番号。カウントは 1 から始まります。
イベントがトリガされた一覧で、先頭ページの最初に表示される行の番号。カウントは 1 から始め、ページヘッダは含みません。
一覧の印刷時には、スプールおよび実行時システムで内部情報が必要になります。この情報は、以下のシステム項目で使用することが可能で、印刷処理が行われるときに設定されます。
印刷をどこから開始するかを示す値が含まれています。たとえば、プログラムで制御された印刷の場合はNEW-PAGE 、選択画面から印刷する場合は RSDBRUNT で使用することができます。
印刷時のスプールファイルの名前が含まれています。
SET MARGIN 命令によって、システム項目 SY-MAROW および SY-MACOL に値が設定されます。これらの値によって、印刷時の上部余白の行数、および左側余白の列数を設定します。
印刷パラメータは、実行時システムによって、スプールシステムに転送され、ディクショナリの中のPRI_PARAMS 型の構造として格納されます。この構造が使用される前は、システム項目がこの目的のために使用されていました。現在も印刷が有効になっているときに、PRI_PARAMS 構造のサブセットは、同じ名前でシステム項目に書き込まれています。この情報は冗長で、使用されていません。
MESSAGE 命令を実行すると、以下のシステム項目が設定されます。汎用モジュールおよびメソッドで MESSAGE … RAISING 命令を実行すると、これらの項目は、( 呼出元で例外を処理している場合は) 呼出元プログラムでも設定されます。
メッセージ ID が含まれています。
メッセージ番号が含まれています。
メッセージタイプが含まれています。
メッセージのプレースホルダに対して使用される項目の内容が含まれています。
キ 汎用モジュール ENQUEUE を使用してデータベースロックを要求した場合は、FOREIGN_LOCK 例外でロックを保持しているユーザの名前が、項目 SY-MSGV1 に設定されます。
キ CALL TRANSACTION または CALL DIALOG で USING オプションを使用した場合は、呼び出された画面順序に表示されるメッセージは、項目SY-MSGID 、SY-MSGTY 、SY-MSGNO 、およびSY-MSGV1 、... 、SY-MSGV4 へ返されます。
キ リモートファクションコール (RFC) では、リモートシステムから呼出元システムへエラーメッセージが転送され、SY-MSGID 、SY-MSGTY 、SY-MSGNO 、SY-MSGV1 、SY-MSGV2 、SY-MSGV3 、およびSY-MSGV4 が設定されます。ショートダンプまたはタイプ X のメッセージが発生した場合は、システムからもこの項目に値が設定されます。
内部システム項目は、ABAP の実行時環境における内部使用のみを目的としたもので、カーネルで定義されています。どのような場合でも ABAP プログラムで上書きすることはできず、読み込む ( 処理する) こともできません。
文書化されていません。
文書化されていません。
文書化されていません。
スプール出力ファイルの名前
文書化されていません。
フラットファイル (USING/GENERATING DATASET)
項目の長さ
項目の小数点以下桁数
項目の出力長
列のデータ型
バンドリング
文書化されていません。
文書化されていません。
文書化されていません。
文書化されていません。
オンコミットフラグ。このシステム項目には、ABAP プログラムのコールステータスによってさまざまな値が設定されます。これらの値の中では、'P' の値のみ保証されています。'P' の値の場合は、SY-ONCOM は 'P' に対してのみ問い合わせされます。
'P' は、プログラムで、PERFORM … ON COMMIT を使用して開始されたサブルーチンをすでに実行しているため、これ以降に PERFORM ... ON COMMIT を使用してサブルーチンをコールすると、実行時エラーになることを意味します。
文書化されていません。
文書化されていません。
文書化されていません。
文書化されていません。
文書化されていません。
文書化されていません。
文書化されていません。
文書化されていません。
文書化されていません。
文書化されていません。
実行可能プログラムのコールステータス
実行可能プログラムのコールタイプ
文書化されていません。
文書化されていません。
文書化されていません。
SY-UCOMM など、一覧のユーザアクションによって拡張機能コードが挿入されます。SY-UCOMM の長さが 4 文字から 70 文字へ増える前は、SY-XCODE は、一覧の標準ツールバーのコマンドフィールドに入力された長さを評価するために内部で使用されていました。SY-UCOMM はアプリケーションプログラムで使用します。
サブルーチンの SYSTEM-EXIT
プログラムの SYSTEM-EXIT
R/2 から R/3 へ移行する際に、値が挿入されていないいくつかのシステム項目が継承されました。これらのシステム項目は無効になっており、使用することはできません。
R/2 では、SAP アプリケーションがインストールされるID を表します。R/3 では値は設定されません。
R/2 では、日時のバックグラウンドスケジュールの ID を表します。R/3 では値は設定されません。
R/2 では、月次のバックグラウンドスケジュールの ID を表します。R/3 では値は設定されません。
R/2 では、単一のバックグラウンドスケジュールの ID を表します。R/3 では値は設定されません。
R/2 では、即時のバックグラウンドスケジュールの ID を表します。R/3 では値は設定されません。
R/2 では、週次のバックグラウンドスケジュールの ID を表します。R/3 では値は設定されません。
R/2 では、バックグラウンド処理に対する要求レポートのルート名を表します。R/3 では値は設定されません。
R/2 では、バックグラウンド処理に対する即時スプール出力の ID を表します。R/3 では値は設定されません。
R/2 では、CURRENCY CONVERSION のレート指定/ 結果項目を表します。R/3 では値は設定されません。
R/2 では、CURRENCY CONVERSION のテーブルレートを表します。R/3 では値は設定されません。
R/2 では、CURRENCY CONVERSION のレート日を表します。R/3 では値は設定されません。
R/2 では、CURRENCY CONVERSION のレートテーブルを表します。R/3 では値は設定されません。
R/2 では、CURRENCY CONVERSION のレートタイプを表します。R/3 では値は設定されません。
R/2 システムのダイアログ。R/3 では値は設定されません。
以前は、現在の機能コードのメニューを表していました。R/3 では値は設定されません。
実装されないローカルデータベース操作
以前は、マッチコードアクセスに対する名前を表していました。R/3 では値は設定されません。
MARK 命令の現在行の文字を表します。ただし、言語要素 MARK は少しの間しかサポートされません。
R/2 では、一覧ごとのページの最大数を表します。R/3 では値は設定されません。
バックグラウンドジョブの ABAP 接頭辞。R/3 では値は設定されません。
文書化されていません。
R/2 では、TRANSFER 命令を使用して、SY-SPONR で設定されているスプールファイルを処理することができました。R/3 では値は設定されません。
以前は、抽出用の外部記憶域ファイルの名前を表していました。R/3 では値は設定されません。
以前は、内部テーブルの最大エントリ数を表していました。R/3 では値は設定されません。
以前は、アクセス後の内部テーブル名を表していました。R/3 では値は設定されません。
命令 DESCRIBE TABLE 、LOOP AT 、および READ TABLE を使用すると、SY-TOCCU には、処理される内部テーブルに対する最初のメインメモリの要件値が設定されていました。現在は、値は設定されません。
以前は、ページング領域に内部テーブルが格納されているかどうの区分 (ID) を表していました。R/3 では値は設定されません。
以前は、内部テーブルで最後に読み込まれた行の索引を表していました。R/3 では値は設定されません。
以前は、ロール領域における内部テーブルのオフセットを表していました。R/3 では値は設定されません。
以前は、帳簿セグメントを読み込んだ後の会社コード通貨を表していました。R/3 では値は設定されません。
R/2 では、ウィンドウの詳細一覧で、選択された一覧の行数を表していました。現在は、SY-LILLI を使用してください。
R/2 では、ウィンドウの詳細一覧におけるカーソル位置を表していました。現在は、SY-LILLI を使用してください。
R/2 では、ウィンドウの詳細一覧における一覧の索引を表していました。現在は、SY-LSIND を使用してください。
R/2 では、ウィンドウの詳細一覧におけるカーソル位置を表していました。現在は、SY-LILLI を使用してください。
R/2 では、ウィンドウの詳細一覧で、選択された一覧の内容を表していました。現在は、SY-LISEL を使用してください。
R/2 では、ウィンドウの詳細一覧におけるウィンドウの座標を表していました。R/3 では対応するものはありません。
R/2 では、ウィンドウの詳細一覧におけるウィンドウの座標を表していました。R/3 では対応するものはありません。
R/2 では、ウィンドウの詳細一覧におけるウィンドウの座標を表していました。R/3 では対応するものはありません。
R/2 では、ウィンドウの詳細一覧におけるウィンドウの座標を表していました。R/3 では対応するものはありません。