この記事を読むメリット
- クイックビューアー(QuickViewer:SQVI)の基本的な使用方法を知ることができます。
博士!複数のテーブルを結合してデータを参照したいのですが、何かいい方法はないでしょうか?
OKじゃ!今回は複数テーブルを結合してデータを参照することのできるクイックビューア機能を紹介するぞい!
SAPではトランザクションコード:SQVIを用いてクイックビューア(QuickViewer)を作成することでABAPプログラミングの知識がなくとも簡易的にSAPのテーブルを参照したレポートを作成することが可能です。
本記事では、クイックビューア(QuickViewer)の基本的な使い方について説明します。
クイックビューアを他のユーザに共有する方法も解説しているので、ぜひこちらも確認してみて下さいね。
あわせて読みたい
【SAP子ワザ】クイックビューア(QuickViewer)を他のユーザに共有する方法
この記事を読むメリット クイックビューア(QuickViewer)を自分以外のユーザに共有できるようになります。 このクイックビューアをプロジェクトメンバーに共有したいので…
この記事のポイント
クイックビューア(QuickViewer:SQVI)とは?
クイックビューアは、複数のテーブルを結合してデータを参照することのできる簡易レポートツールになります。複数のテーブルを結合して、データを参照したい場合にはクイックビューアを用いることで簡単にデータを参照することができます。ただ、留意点としてはクイックビューアは移送などには対応しておらず、クライアント依存オブジェクトなので、使用する環境ごとに作成することが必要になる点に留意する必要があります。
クイックビューアは移送できない点に注意。移送が必要な場合にはSAPクエリなど代替案を検討する。
そのため、クイックビューアはあくまで複数のテーブルを結合してデータを確認したい場合の簡易的な補助ツールと捉えて利用することが一般的です。
また最近では、SE16Hでも複数テーブルの結合が可能になっているため、興味ある方は下記記事を参照してください。
あわせて読みたい
【SAP小ワザ】SE16Hの使い方を徹底解説!テーブル結合やグループ化による集計方法
この記事を読むメリット T-CODE:SE16Hを用いてテーブルの検索とグループ化による集計をすることができるようになります。 T-CODE:SE16Hを用いて複数テーブルを外部結…
クイックビューア(QuickViewer:SQVI)の作成方法
ここからは具体的なクイックビューアの作成方法についてみていきます。
クイックビューアの登録
クイックビューアはT-CODE:SQVIより作成することが可能です。それでは、実際にT-CODE:SQVIを確認してみましょう。
SQVIの画面が立ち上がったら、まずクイックビューアのIDを入力し、登録ボタンを押下します。
クイックビューアの登録ボタンを押下すると以下のようなポップアップ画面が出てきます。データソースは「テーブル結合」を選択します。
- クイックビュー:最初の画面で入力したクイックビューアのIDが表示されます。
- 表題:クイックビューアの表題になります。理解しやすい表題をつけましょう。
- コメント:何を目的として作成したのかコメントに残しておくのがおすすめです。
モードは「基本モード」を選択して、チェックボタンを押します。そうすると、テーブル結合のため編集画面が立ち上がりますので、結合したいテーブルを登録していきます。
テーブルの追加
今回は、BKPF(会計伝票ヘッダ)とBSEG(会計伝票明細)を結合してみます。
BKPFのテーブルの追加ができました。
BSEGテーブルも追加することができました。
結合条件の編集
次に結合条件がどのようになっているかを確認してみます。
BKPFとBSEGをつないでいる線が結合条件になっています。こちらはSAP標準により自動提案してくれています。上の画像の結合条件は「会社コード」「会計伝票番号」「会計年度」となっており、会計伝票の複合キーと整合していますので、今回はこちらの条件で問題ありません。
ただ、SAP標準より自動で提案された結合条件が意図しない結合条件になっている場合など、結合条件の修正が必要な場合には手動で修正する必要があります。
結合条件の修正方法は下記になります。
結合条件の削除は紐づき線上で右クリックすることにより、結合条件の削除を行うことができます。
仮に誤って、結合条件を削除してしまった場合には、以下のように紐付けたい項目をドラッグ&ドロップしてあげることで再度結合条件を設定することができます。
こちらの結合条件は内部結合(INNER JOIN)と考えておけばよいですか?
その通りじゃ!
クイックビューアの標準設定は内部結合(INNER JOIN)じゃ。
ただ、使うケースは内部結合ほど多くないじゃろうが、左外部結合(LEFT OUTER JOIN)を結合条件とすることもできるので参考までに紹介しておくぞい。
内部結合と左外部結合
クイックビューアのデフォルトの結合条件は内部結合となっていますが、左外部結合に変更することも可能です。こちら参考までにご紹介いたします。
まず内部結合と左外部結合の比較は下記の通りです。
内部結合
二つのテーブルから指定した結合条件の両者の値が一致するレコード同士のみで結合する方法
左外部結合
指定したテーブル(左側のテーブル)の全ての行を含み、結合条件を満たす行がある場合にはそれを結合する方法
クイックビューアでの左外部結合の設定方法は下記のとおりです。
クイックビューアでの設定は紐づき線上で右クリックしたうえで、左外部結合を設定することで内部結合から左外部結合に結合条件を変更することができます。
結合条件の設定終了
追加するテーブルや結合条件の設定がすべて完了したら、終了ボタンを押下します。
クイックビューア(QuickViewer:SQVI)の詳細設定
テーブルの追加と結合条件の設定が完了したら、次に実際の出力項目、ソート条件、選択項目を設定していきます。
- 一覧項目:実行結果の出力画面に表示するデータ項目を設定します
- ソート順序:実行結果のソート順序を設定します
- 選択項目:選択画面での抽出条件として使用する項目を設定します
- データソース:結合条件やテーブル追加の編集画面に移動できます
一覧項目
一覧項目では、実行結果画面に表示するデータ項目を設定します。
実行結果画面に表示する列順も一覧項目から調整することが可能です。
ソート順序
実行画面のソート順序を設定します。ただ、重要性はそこまで高くありません。理由としては、実行結果画面でもソート順の指定が可能なため、わざわざ事前にソート順序のタブで設定する必要性が薄いためです。今回は参考までにソート順序の設定の方法をご紹介します。
上記の通り、ソート順序は各データ項目ごとに昇順、降順を選択することが可能です。
選択項目
選択画面でデータを抽出する際の抽出条件として使用したい項目を選択項目で設定します。ここで選択した項目が抽出条件として使用できるため、もれなく抽出条件として使用したい項目を設定することが必要になります。
データソース
結合条件の変更や新たなテーブルの追加などを編集したい場合にデータソースタブからテーブル編集画面に移動することが可能です。
保存
一通りのクイックビューアの設定が完了したら、保存ボタンでクイックビューアの設定を保存します。
実行
最後にクイックビューアを実行してみます。実行ボタンを押下することにより、選択画面に移動します。
選択画面で抽出条件を設定し、実行することでマッチするレコードが抽出されます。
詳細設定した内容に基づいて、BKPFとBSEGの結合データが出力されていることが確認できました。
テーブルを結合してデータを参照したい場合にクイックビューアは便利ですね!
プロジェクトの様々な局面で役に立つのがクイックビューアじゃ。作成自体は難しくないのでぜひ一度自分でも手を動かして作ってみるんじゃ!