この記事を読むメリット
- T-CODE:SCU3 で、設定のテーブルの変更ログ(いつ・だれが・何を変えたか)を評価する方法が分かる
- 変更ログが記録される 2 つの条件(テーブルの「変更をログに記録」とプロファイルパラメータ rec/client)が分かる
- 「ログ: ステータス照会」と T-CODE:SE13 で、記録の状態を確かめる方法が分かる
会社コードや勘定設定など、カスタマイジングの設定が知らないうちに変わっていて困ることがあります。
設定のテーブルの変更は、変更ログとして記録しておけます。T-CODE:SCU3 で変更ログを評価すると、いつ・だれが・どの項目を・何から何に変えたかを確かめられます。
この記事では、次の操作を画面を 1 つずつ追って解説します。
- T-CODE:SCU3 で テーブルを指定して変更ログを評価する手順
- 変更ログが 記録される設定になっているかを確かめる手順(T-CODE:SE13 の技術設定も含む)
博士!会社コードの設定がいつの間にか変わっていたんです。だれが変えたか分かりますか?
うむ、設定のテーブルの変更はログに記録できるのじゃ。SCU3 で変更ログを評価してみるぞい!
この記事のポイント
前提
- 使うトランザクション: SCU3・SE13
- 例のデータ: テーブル T001(会社コード)の、2026/10/15 の変更ログを例にします。
- 記録の設定: 変更ログが記録されるのは、テーブルとシステムの両方で記録が有効なときだけです(下の「変更ログが記録される条件」)。
変更ログのしくみ
実務での要件の例
監査の担当から「会社コード ZZ10 の設定を、だれがいつ変えたのかを示してほしい」と頼まれた場面を考えます。この要件は、次のように分けて進めます。
| 要件の部分 | どうするか |
|---|
| 変更の記録を探す | T-CODE:SCU3 の「ログ分析」で、テーブル T001 と期間を指定して評価します |
| だれが・いつ・何を変えたかを示す | 評価の結果で、日付・ユーザ・時刻・キー(会社コード)・項目名・旧・新規を確かめます |
| そもそも記録されているかを確かめる | 「ログ: ステータス照会」で、クライアントとテーブルの記録の状態を確かめます |
| 伝票やマスタの変更履歴を見る | ここでは扱いません。この記事の環境では、会計伝票(BKPF)や品目マスタ(MARA)のテーブルは変更ログの記録の対象ではありません |
変更ログ
テーブルの変更ログは、テーブル DBTABLOG に記録されます。T-CODE:SCU3(テーブルの履歴)は、この変更ログを評価する画面です。ログはクライアントごとに記録されます。
変更ログが記録される条件
変更ログが記録されるのは、次の 2 つがそろったときだけです。
- テーブルの技術設定(T-CODE:SE13)で、「変更をログに記録」に印が付いていること
- システムのプロファイルパラメータ rec/client で、記録が有効になっていること(
ALL はすべてのクライアント、000,100 のようにクライアントを並べるとそのクライアントだけ、OFF は記録しない)
この記事の環境では、rec/client が ALL で、テーブル T001(会社コード)と T001B(転記期間)には記録の印が付いています。会計伝票の BKPF や品目マスタの MARA には付いていません。
移送で取り込んだ変更を記録するかは、移送の設定(tp のオプション RECCLIENT)で別に決まります。
テーブルの設定とシステムの設定の両方がそろったときに、変更が DBTABLOG に記録され、T-CODE:SCU3 で評価できる流れです。
関連するトランザクションコードは次のとおりです。
| T-CODE | 内容 |
|---|
| T-CODE:SCU3 | テーブルの履歴(変更ログの評価) |
| T-CODE:SPRO | IMG(各活動から変更ログを見られます) |
| T-CODE:SE13 | テーブルの技術設定(「変更をログに記録」の確認) |
| T-CODE:SM30 | テーブルの保守(設定の変更) |
変更ログを評価する(T-CODE:SCU3)
1. ログ分析を開く
コマンドフィールドに SCU3 と入力して Enter キーを押します。「変更されたカスタマイジングオブジェクトとテーブルの分析」が表示されます。
画面の見方
- ログ分析: 変更ログを評価する画面を開きます。
- ログに記録されたテーブルの一覧: 変更ログを記録するテーブルの一覧を表示します。
①「ログ分析」を押します。
2. 条件を入れる
「変更ログの評価」が表示されます。
画面の見方
- カスタマイジング Obj./テーブル: 評価するテーブル(またはカスタマイジングオブジェクト)の名前です。
- 分析期間: 変更ログを探す開始日・開始時刻と終了日・終了時刻です。画面の例では、初期値として 2026/10/11 00:00:00 〜 2026/10/17 12:00:41 が入っています。
- テーブル: ① にテーブルの名前を入れるときに選びます。カスタマイジングオブジェクトの名前を入れるときは、「カスタマイジングオブジェクト」を選びます。
- 出力オプション: 「実際の変更のみ」に印を付けると、値の変わっていないログを出しません。
- アーカイブされたログ: 印を付けると、アーカイブしたログも評価します。
この選択画面には、ユーザで絞り込む項目はありません。この例では、テーブル T001、分析期間 2026/10/15 00:00:00 〜 2026/10/15 23:59:59 にして、③「テーブル」を選び、F8 キー(右下の「実行」)を押します。
3. 変更ログを見る
評価の結果が表示されます。
画面の見方
- テーブル: 評価したテーブルの名前(会社コード)と技術名称(T001)、クライアントです。
- 日付・ユーザ: 変更した日付と、変更したユーザです。
- 変更の内容: 時刻・キー項目(この例では会社コード)・項目名・旧・新規です。
この例では、2026/10/15 01:22:17 に、ユーザ STUDENT0xx が、会社コード ZZ10 の「アドレス」を、空から 37553 に変えた記録が 1 件見つかりました。
4. 記録の状態を確かめる
結果の画面の上にある「ログ: ステータス照会」を押すと、「ログ: ステータス照会」のダイアログが表示されます。
画面の見方
- システムのログ: どのクライアントで記録が有効かです。この例では「すべてのクライアントでロギング有効」です。
- 選択したテーブルのロギング: テーブルの記録が有効かです。この例では、T001 の「有効」に印が付いています。
変更ログが見つからないときは、まずここで、記録が有効になっているかを確かめるとよいでしょう。
5. テーブルの技術設定を見る
テーブルに記録の印が付いているかは、T-CODE:SE13 で確かめられます。コマンドフィールドに SE13 と入力して Enter キーを押し、テーブル名に T001 を入れて「照会」を押すと、「ディクショナリ: 技術設定照会」が表示されます。
画面の見方
- 名称: テーブルの名前です。
- データクラス: この例では APPL2(組織およびカスタマイジング)です。
- 変更をログに記録: 印が付いていると、このテーブルの変更ログが記録されます。
この画面は照会だけにします。技術設定の変更は、テーブルの定義を変える作業です。
よくあるつまずき
- 変更ログが 1 件も出ない: 「ログ: ステータス照会」で、クライアントとテーブルの両方で記録が有効かを確かめます。記録の印が付いていないテーブルや、rec/client で記録していないクライアントの変更は、あとから評価できません。分析期間が変更した日時を含んでいるかも確かめます。
- 移送で入れた設定の変更が出ない: 移送で取り込んだ変更を記録するかは、tp のオプション RECCLIENT で決まります。rec/client だけを有効にしていると、移送の分は記録されません。
- 伝票やマスタの変更が出ない: この記事の環境では、会計伝票(BKPF)や品目マスタ(MARA)のテーブルに記録の印が付いていません。T-CODE:SCU3 で見られるのは、記録の印が付いたテーブルの変更です。
- だれが変えたかで絞り込みたい: 選択画面にユーザの項目はありません。期間とテーブルで絞り込み、結果の「ユーザ」で確かめます。
- IMG の活動から見たい: T-CODE:SPRO の IMG の活動ごとにも、変更ログを開いて、だれがいつ何を変えたかを見られます。
- 記録を全部のクライアントで有効にしたい: 記録をオンにすると、テーブルを変えるたびにログを書くので、変更の処理が遅くなります。rec/client を
ALL にすると性能を大きく落とすことがあるので、どのクライアントで記録するかは管理者と相談するとよいでしょう。
まとめ
- テーブルの変更ログは、テーブルの技術設定の「変更をログに記録」と、プロファイルパラメータ rec/client の両方で記録が有効なときに、DBTABLOG に記録されます。
- T-CODE:SCU3 の「ログ分析」で、テーブルと分析期間を指定して評価すると、日付・ユーザ・時刻・キー・項目名・旧・新規を確かめられます。
- 変更ログが見つからないときは、「ログ: ステータス照会」で記録の状態を確かめます。
うむ。ただし、テーブルの印と rec/client の両方で記録が有効でないとログは残らんのじゃ。まずは記録の状態を確かめるのじゃぞ。