1つの選択肢で複数列の表示制御を行うガイデッドレポート

2024年3月23日テクニカルメモ

ガイデッドレポートで1つの選択肢を選んだ時、複数の列を同時に出力させる方法をご紹介します。

選択項目の「パターン」が明確なときのガイデッドレポート

ガイデッドレポートは、表示項目をユーザー自らが選択できる非常に便利な機能ですが、一方でレポートの実行には選択が必要であるという意味でもあります。
業務や欲しいデータの内容によっては必要な選択項目はある程度決まっており、できるだけ操作量を少なくしてレポートを実行したいという状況もしばしば発生します。
対応策として検索画面での選択条件の保存という手段もありますが、保存値の管理が必要です。

そこで、ガイデッドレポートの選択肢を減らし、かつ同時に複数の列を選択することができるようにする設定を、
レポートとHTMLキャンバスを使って実装します。

レポートの作成

①BYまたはSUM項目のレポート変数を「静的」で作成する
通常、表示値と戻り値は1対1となるよう設定しますが、複数列を同時に出力させるようにする場合は項目種別ごとの区切り文字を使用します。

SUM/PRINT項目:半角スペース 例)項目1 項目2 項目3…
BY項目:BY 例)項目1 BY 項目2 BY 項目3…
ACROSS項目:ACROSS 例)項目1 ACROSS 項目2 ACROSS 項目3…

今回の例はSUM項目を複数表示させるため、半角スペースで区切っています。

レポート変数はBY、SUM、PRINT、ACROSSのいずれか一つの種別として呼び出されるため、戻り値には項目種別が混在しないようご注意ください。

②レポート項目、作成したレポート変数を配置する
作成したレポート変数と併せ、レポート項目として必要な列を配置します。

この状態でレポートを実行し、確認してみます。

「売上/原価」を選択すると三つの列が出力されました。

検索画面の作成

HTMLキャンバスを立ち上げ、通常の検索画面の作成と同じくレポートを読み込みコントロールを配置します。
レポートから読みだされたコントロールを確認すると、先ほどレポート内で宣言したレポート変数フィールドの内容が反映されていることが確認できます。

値フィールドを変更すると、変数にわたるパラメータを変えることができます。

実行し、単一の変数に設定した複数列が表示されることを確認します。