【SAP知識】レポートペインタの作成方法を解説

SAP 技術情報・その他

SAPのレポートペインタは、主に会計領域で使用するレポート類(財務諸表や管理会計レポート)を作成するのに適した仕組を提供しており、比較的簡易的な手順でレポートを実装できる機能となっている。

簡易的な手順と言っても、機能を知らない状態だとかなり難しく、初見だとどのような構造になっているか分かりづらい。

今回はレポートペインタの基本的な仕組みと作成方法について解説する。

※あくまで基本的な解説であり動作を保証するものではありません。実装の際は十分なテストを実施してください。

レポートペインタの作成方法

レポートペインタの全体像

レポートポインタで作るレポートイメージ

レポートペインタを使うことにより、例えば以下のような貸借対照表を作成することができる。
(あくまでイメージ図)


「資産」の部の下に「流動資産⇒現金及び現金同等物⇒現金/預金」といった形で、勘定コード体系としての階層構造が表現され、最下層のノードでは勘定コードが確認できる。
それぞれの階層ごとに合計金額も表示される。

負債の部、純資産の部も同様に表現され、各ノードは必要に応じ展開・圧縮が可能なので、最も詳細な勘定コードごとの合計金額から、最も大きな括りである資産・負債・純資産のサマリまでが表示可能となっている。

更に、設定によっては前期の貸借対照表を並べて表示したり、前期との差異比較も論理式を使うことで実現することができる。

レポートペインタにおいてはこうした階層構造の表現を比較的簡単に実現でき、勘定コードが増えた場合のメンテナンスもしやすい。(レポートのレイアウト変更をする必要がない)

レポートペインタを構成する諸要素とトランザクション

レポートペインタはいくつかの要素を組み合わせて作成していく。
ここではレポートペインタで使用する諸要素とトランザクションをまとめる。

レポートペインタ作成のトランザクション
①Tr:GR21 ライブラリ登録
②Tr:GS01 セット登録
③Tr:GS11 セット変数登録
④Tr:GRR1 レポートペインタ:登録
⑤Tr:GR51 ジョブ登録

また、関連する照会系のトランザクションも以下にまとめる。

レポートペインタ照会系トランザクション
Tr:GR23 ライブラリ照会
Tr:GS03 セット照会
Tr:GS13 セット変数照会
Tr:GS33 キー数値照会
Tr:GR13 レイアウト照会
Tr:GRR3 レポートペインタ:照会
Tr:GR53 ジョブ照会

レポートペインタ作成手順

ライブラリ登録(Tr:GR21)

ライブラリは、レポートを割り当てる箱のような役割と考えてもらえば良い。
Tr:GR21から、使用するテーブルとライブラリ名称を指定して登録する。

テーブルはFI系レポートであればGLT0、GLFUNCT、FAGLFLEXTといった合計テーブルを指定する。(レポートペインタでは複数のテーブルから取得する仕組は無いので、1テーブルでGLデータが完結するテーブルである必要がある)

上記のようなテーブルであれば、取得データと適切な加工により、貸借対照表・損益計算書・株主資本等変動計算書・残高試算表といったレポートを表現できる。

次に、ライブラリの設定値として、特性、基本キー数値、キー数値が存在する
それぞれに必要な設定を行っていく。

・特性
特性は、ライブラリ登録時に指定したテーブルから読み込まれてくるテーブル項目のこと。
項目ごとにチェックボックスを持つので、使用する項目をチェックしてライブラリに割り当てる。

特性はレポート上の行(縦軸)、列(横軸)、および一般設定にて使用する。
行、列、一般設定については後述する。
ここでは、「レポート上で関わる項目(検索や抽出条件含む)は全て特性としてライブラリに割り当てておく必要がある」と理解すれば良い。

・基本キー数値、キー数値
基本キー数値およびキー数値は、標準で既に提供されているので、上記で触れたような合計テーブルを使用するのであればあまり使う必要はない。

キー数値更新を行う場合はTr:GS32から実行する。

セット登録(Tr:GS01)

レポート上に表示する資産・負債・純資産に属する勘定コード群の階層構造は、セットによって表現する。

セットを登録する時は、Tr:GS01から第一画面でセット名、テーブル、テーブル内の項目、セットタイプを指定する。
勘定コードの階層を作るのであれば、例えばテーブルはFAGLFLEXT、項目はRACCT(勘定コード)を指定すると良い。

一例として、負債の部を構成するセットを登録する場合について解説する。

・最上位のセットをまず「負債」として登録する。(セットタイプ:単一次元セット)
・負債の部には、負債の下に「流動負債」と「固定負債」の階層があるので、流動負債と固定負債のセットを登録し、これを「負債」のセットに割り当てる。
・更に、流動負債の下には「短期借入金」「支払債務」のセットをさらに割当て、その下には具体的な個別の勘定コード(買掛金、借入金、支払手形、未払金等)を割り当てていく。
・セットの登録画面では「下位セット」と「値」の設定を切り替えできるが、個別の勘定コード(値)のみを割当てる場合は、セットタイプを「基本セット」とする。

こうした階層設定を「資産の部」や「純資産の部」に該当するセットも作成していく。
・セット:ZA001 資産の部
・セット:ZL001 負債の部
・セット:ZE001 純資産の部

このように、階層の数だけセットを登録し、勘定コード体系に従って上下関係を作成していく
セットを用いることのメリットは、勘定コードが増えた場合でも、適切なセットに勘定コードを追加していくだけでレポートのメンテナンスが可能となることで、これらメンテナンス機能はユーザ開放して問題ない。

セット変数登録(Tr:GS11)

変数(セット変数)は、Tr:GS11にてテーブル、項目、および初期値セットを指定することによって登録する。
変数(Tr:GS11)に対して、前述のセット(Tr:GS01)を割り当てておくイメージ。

変数は、レポートペインタを編集する際に、特性に対して割り当てを行う。
また、この変数はレポート実行時の第一画面上に表示される選択項目ともなる
実際どのような働きをするものなのかは、次節の「レポートペインタ登録(Tr:GRR1)」にて具体的に解説するので、そちらを参照。

ここでは、冒頭で挙げたようなレポートペインタの仕様を実現するために、以下のような変数を登録する。

レポートペインタの縦列(行)の特性に割り当てる変数登録

・「資産の部」用変数
以下のように「資産の部」として登録したセットを初期セットとして割り当てる。
IDは「ZASSET」とし、変数タイプは「セット」を選択する。

・「負債の部」用変数
上記と同様に「負債の部」として登録したセットを初期セットとして割り当てる。
IDは「ZLIABLT」とする。

・「純資産の部」用変数
上記と同様に「純資産の部」として登録したセットを初期セットとして割り当てる。
IDは「ZEQUITY」とする

レポートペインタの縦列(行)の特性に割り当てる変数登録

・「会計年度」用変数
変数のIDは「ZYEAR01」
テーブルはFAGLFLEXT、項目はRYEAR
変数タイプに「値」を指定

・「前期会計年度」用変数
変数のIDは「ZYEAR02」
テーブルはFAGLFLEXT、項目はRYEAR
変数タイプに「論理式」を指定

指定する論理式は以下の通りとする。
【’ZYEAR01′ – 1】
(今回は簡易的な論理式としているが、本番実装では年度に0が指定された場合などの入力チェックも考慮すること)

・「会計期間」用変数
変数のIDは「ZMONTH1」
テーブルはFAGLFLEXT、項目はRPMAX
変数タイプに値を指定

レポートペインタ:登録(Tr:GRR1)

いよいよレポート本体の設定となるレポートペインタの登録を行う。

まずTr:GRR1にてライブラリおよび作成するレポートのIDを指定し、登録ボタンを押す。
以下のような画面が表示されるので、縦軸(行)と横軸(列)の項目設定をそれぞれ行っていく。

縦軸(行)の特性指定

縦軸上の行1にカーソルを合わせ、「要素挿入(Shift+F4)」ボタンを押下する。
要素タイプ「特性」を選び、次に進む。

画面左に「選択済特性」、画面右に「利用可能特性」とあるポップ画面が表示されるので、利用可能特性から「勘定コード」を選択し、選択済特性に読み込む。
もしここで「勘定コード」が無いのであれば、ライブラリ(Tr:GR21)登録の際に項目RACCTをチェックし忘れているので、ライブラリの修正を行う。

選択済特性の画面には「SETまたは階層ノード ON/OFF」「変数オン/オフ」の項目があるので、今回は両方にフラグを立てる。
項目「開始」に資産の部の変数として登録した「ZASSET」を割り当てる。

これを同様に負債の部、純資産の部でも割当てる。

勘定階層の展開

次に、特性の「資産」の箇所で【右クリック >展開(Shift+F9)】を押す。
「展開・個別値・展開不可」から一つ選ぶポップアップが表示されるので、「展開」を選ぶ。

すると、変数を通して割り当たっているセットの階層が読み込まれ、勘定の階層構造が展開される
同じ事を負債、純資産でも実施する。

横軸(列)の特性指定

次に列1の設定を行う。列1は当期における貸借対照表の金額を表示する列として設定する。

「要素挿入(Shift+F4)」ボタンを押下しポップアップを表示させる。
ここでは基本キー数値をまず指定する。基本キー数値は「HSL 国内通貨」を選択する。

読み込む特性は「会計年度」および「会計期間」のみ。
会計年度には変数「ZYEAR01」、会計期間には以下のように終了値として変数「ZMONTH」を割り当てる。
開始値を0としているのは、貸借対照表なので、1月~12月の期間合計だけでなく、前年度からの繰越も合計数値に反映させる必要があるため。

同じく列2は前期の数値を表示する列として使用するので、列1と同じく以下のように設定する。ただし変数はZYEAR02を割り当てているので注意。

列幅の調整

数値項目として列幅が足りない場合があるため、【書式(F) >列(C)】から列幅の数値を書き換える。

列テキストの調整

メニューから【書式(F) >行/列テキスト(T) > 列テキスト >一行のテキスト(長)を選択】とすると、3タイプのテキスト(短、中、長)のうち列テキストに長テキストが反映される。

後述するが、列テキストには変数式を使って表示を可変化するので、短・中テキストでは十分な長さが無い。このため長テキスト表示にしておく必要がある。

列ヘッダテキストの変数化

列ヘッダのテキストは、固定値でも構わないが、変数に保持している値を代入し、可変化することができる。
たとえば選択画面で「2020年12月」と条件指定したならば、レポート出力時に列ヘッダを「2020年12月」と書き換える、という具合。

具体的には、まず列1のテキスト(長)に以下を入力する。

&ZYEAR01 0期 to &ZMONTH1期

続いて列2のテキスト(長)に以下を入力する。

&ZYEAR02 0期 to &ZMONTH1期

こうすることで、レポート実行時に会計年度2020年、会計期間12月を指定した場合、結果のレポート画面は以下のように表示される。

論理式の設定

列3については、当期と前期の差を表示する列とする。
要素の追加を行う際に要素タイプ「論理式」を選択する。
横軸の特性ごとにX001、X002という論理式要素が付番されているはずなので、ここは「X001 – X002」と指定すれば良い。

一般設定

一般設定は行および列で採用しなかった特性について、検索条件(固定値)の付与や、変数の付与による選択画面への表示などを行うことができる。
今回は選択画面には出さず、固定値のみとする。
会社コード、元帳、レコードバージョン、セグメントなどの特性を読み込み、検索条件を付与する。

レポートヘッダ部分の編集

レポートの表題部分の表示内容を編集する。
画面メニューの【補足(A) >レポートテキスト(R) >ヘッダー(H)】から編集画面を呼び出す。
基本的にはレポート名や選択画面で入力した会計期間等の情報を表示する設定としておけばいい。
変数を用いて可変的に表示を変更することができる。

ジョブ登録(Tr:GR51)

ジョブはレポートを生成するのに必要となるもので、Tr:GR51から登録する。
ライブラリと、ジョブとして登録する4桁IDを指定する。
遷移後の画面で、Tr:GRR1にて登録したレポートを割り当てる。

これで保存すればTr:GRR3などからレポートを実行できるようになる。

レポートをユーザ開放する

Tr:GRR3から、作成したレポートを実行する。
第一画面にて画面メニューの【環境(V) >技術情報(T)】からプログラムIDを拾うことができるので、このプログラムIDを使ってTr:SE93からトランザクションを割当ててユーザに開放すれば良い。

ブログランキング・にほんブログ村へにほんブログ村

タイトルとURLをコピーしました