LoginSignup
0
0

More than 1 year has passed since last update.

【クエリビルダ:拡張表現】スライサーを作ってみる

Last updated at Posted at 2022-09-20

今回は、Sharperlightの拡張表現を使って、下記のようなスライサーを作成してみます。
image.png

年度スライサーの作成

Sharperlightアプリケーションメニューからパブリッシャーを起動し、新規のレポートを作成します。クエリを編集でクエリビルダを起動し、下図のようなクエリを作成します。
過去十年 DATE -10y から来年 DATE 1y までの年度を返すクエリです。
年度は降順ソートを指定します。
image.png
出力領域の右クリックから拡張表現を追加を選択します。
拡張表現タブの関数一覧から、スライサー -> Checkbox Filter Slicer -Multiple Filter values as URL parameters を選びます。
テンプレートが構文エディタに表示されるので、編集を行います。
image.png
今回は、年度フィルターのみにするので、下図のように編集します。
image.png
編集結果はこうなります。
image.png
この拡張表現の説明は、年度とします。
image.png
次に、全ての年度を指定できるように、全てチェックボックスを上記クエリ結果に追加します。
再度出力領域の右クリックから拡張表現を追加を選択します。
編集エディタ領域に下図のような構文を記述します。これは、レポートの最初の行を処理する時点で、一列目に全てというチェックボックスを作成する構文です。またこの拡張表現は内部的に処理されるので非表示にします。
image.png

RowHeader( StartOfReport, "Col:1",
"<input type='checkbox' select='allY' id='CVAll" + DataRowCount() + "'"
+ " value='" 
+ "&fltYear=" + UrlEncode("<ALL>")
+ "'>"
+ "<label for='CVAll" + DataRowCount() + "'>"
+ HtmlEncode("全て")
+ "</label>"
,"")

これで出力領域の設定はこのようになります。
image.png
早速プレビューでクエリに異常がないかチェックしてみます。エラーはなさそうです。
image.png
OKボタンでクエリを保存し、さらに適用ボタンでレポートを保存します。
ビューボタンでレポートを表示してみます。Sharperlightサービスが開始されていることが前提ですね。このような結果になります。
image.png

連動させるレポートの作成

SAP Business Oneデータモデルを使用してレポートを作成し、先ほど作成したスライサーと連動させてみます。
パブリッシャーで新規ボタンを選びレポートの作成を開始します。
クエリを編集ボタンでクエリビルダを起動します。
モードには概要レポート製品にはSAP Bisiness OneCompanyにはOEC Computers Australia、そしてテーブルにはG/L Transactionsを指定します。
image.png
その他のフィルターで注目すべきものは、Posting Date - Yearです。これにスライサーを連動させます。オプションをこのように設定します。
image.png
このYearという名前がスライサーのここと連動しています。
image.png
OKボタンでクエリを保存、レポートのグループやコード等必要な項目を記入して保存します。

スライサーとレポートの配置

スライサーとそれに連動させるレポートが出来たので、その二つを組み合わせます。
パブリッシャーで新しいレポートを作成します。
オプションタブの配置オプションを有効にします。編集ボタンで配置ダイアログを開きます。
image.png
配置ダイアログでは2列表示を指定し、作成したスライサーと連動したレポートを指定します。
image.png
配置ダイアログを閉じて、レポートを保存します。

検証

スライサーと連動レポートを配置したレポートをブラウザで開きます。
このようにスライサーが左側、連動したレポートが右側に表示されます。
image.png
2013のチェックボックスにチェックを入れてみます。連動したレポートが更新され、2013年のデータのみが表示されます。
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