LoginSignup
0
0

More than 1 year has passed since last update.

【クエリビルダ:拡張表現】RowSkipWhereSubTotalsOverOneRow文を使ってみる

Posted at

この記事では、小計行を出力するクエリに関する拡張表現関数を使用してみます。
この関数を利用すると、小計行に対する詳細行が1つしかない場合、その小計行をスキップすることができます。
小計行を出すようクエリを設計した場合、小計行は、それに対する詳細行が1つしかない場合でも作成されます。 そのような場合、レポートは非常に見づらくなってしまいます。 この関数を使用することで、詳細行を1つしかもたない小計行を抑制することができます。

では元となるクエリを準備します。SAP Business Oneを利用してこのようなクエリを作成します。
image.png
実行結果はこうなります。
image.png
伝票集計年に対して、グループオプションを使用してクエリ結果に小計行を追加します。
出力領域の右クリックメニューからオプションを選択します。
並び替えとグループ化タブに移動します。
伝票集計年並び替えなし領域から並び替えあり領域へ移動させます。そしてグループ化オプション基本を選択します。
image.png
ではプレビューしてみましょう。
image.png
小計行に対してその詳細行が複数存在する場合は、見た目も良いですが、このように詳細行が一つしか存在しない場合は小計する必要もなく、またそういった行が連続すると見づらくなってしまうケースもあります。
image.png
そこで今回ご紹介する関数でこの問題を解決します。
出力領域の右クリックから拡張表現を追加を選択します。出力オプションダイアログが開いたら、関数一覧よりRowSkipWhereSubTotalsOverOneRow文を探し、ダブルクリックで上部エディタ領域にテンプレートを転送します。
image.png
一般タブに移動して以下のように編集を行います。説明はあくまでも参考です。ここで大事なのは、この関数はそれ自体が出力結果にはなんら関係がないので非表示にすることです。
image.png
クエリ結果はこのようになります。
image.png
場合によっては、詳細行が一行のみでも小計を出したい場合もあるでしょうから、ここではこのような動作をする関数もありますよということだけご理解頂ければ幸いです。

では、失礼します。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0