【パブリッシャー】SharperlightでWEBレポートを作ってみる

記事：[Sharperlightをお手持ちのデータベースに繋ぐ](https://qiita.com/Miki_Yokohata/items/f7973bbc0e9fc65a7416)で作成し保存したクエリをブラウザで拝見できるレポートにしてみます。

## WEBレポートの設計
Sharperlightアプリケーションメニューから「パブリッシャー」を選択します。
![Qiita 2022-02-23 Publisher 1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/605364e4-0f87-c800-c4ae-f73e99a6e810.png)
”パブリッシャー”ダイログが表示されたら、”新規”ボタンをクリックします。
![Qiita 2022-02-23 Publisher 2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/c470248f-106e-479e-77bf-dc7ee6c25d0f.png)
”クエリーの公開”ダイログが表示されます。ここでWEBレポートの設計を行います。
WEBレポートはクエリが定義されていることが前提となるので、”クエリーを編集”ボタンでクエリの作成を最初に行います。
![Qiita 2022-02-23 Publisher 3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/cb6ea340-a565-45e1-599d-9f1a35671d34.png)
[前回の記事](https://qiita.com/Miki_Yokohata/items/f7973bbc0e9fc65a7416)で見た”クエリビルダ”が開きます。[前回の記事](https://qiita.com/Miki_Yokohata/items/f7973bbc0e9fc65a7416)で作成したクエリがファイルとして保存してあるなら、それをインポートします。
フィルター領域で右クリックメニューを開き、クエリーのインポート、ファイルを選択します。
![Qiita 2022-02-23 Publisher 4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/c3ba98e3-2cd1-5e75-ab4c-dd242d32303c.png)
ファイルエクスプローラが表示されるので、前回保存したクエリファイル xxxxx.qry を選択しインポートします。
保存したクエリが無い場合は、下図を参考に作成します。
![Qiita 2022-02-23 Publisher 5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/7b17934c-9ea9-62df-45d5-e6178dcc6998.png)
プレビューボタンで動作を確認後、OKボタンで終了し”クエリーの公開”ダイアログに戻ります。
”オプション”タブへ移動して、”既定の出力形式”がTableとなっていることを確認。
![Qiita 2022-02-23 Publisher 6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/fe2154d9-88a7-1980-2afa-3c34d7c1bc5c.png)
”一般”タブに戻り”コード”、”グループ”、”タイトル”、”レポートのタイトル”を設定します。
最後はOKを押して保存します。
![Qiita 2022-02-23 Publisher 7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/0653c3b9-d108-13f9-92c8-450a9939b133.png)
![Qiita 2022-02-23 Publisher 8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/bff6e76c-dff5-8f98-65c8-ff24b437fcca.png)

## Sharperlightサービスの開始
WEBレポートの作成が済んだら、WEBレポートを公開（今回はローカルでのみ）するためにSharperlightサービスを起動します。
二通りのタイプがあり、ひとつはアプリケーションとしてサービスを開始する方法、もうひとつはWindowsサービスとして開始する方法です。
今回は前者にしてみましょう。
Sharperlightアップリケーションメニューから「サービス」を選択します。
![Qiita 2022-02-23 Publisher 9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/377dc72f-cdf2-c5fd-7ca8-8fdeeee7caaf.png)
Windowsのユーザーアカウントコントロールメッセージが表示されるので、はい(Yes)を押して次に進みます。
このようにサービスアプリケーションが起動します。
![Qiita 2022-02-23 Publisher 10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/8abcf4cb-83d1-ae6d-2ea0-ae855123bc18.png)
## 作成したWEBレポートへのアクセス
サービスダイアログ下部のURLリンクが、サービスのエントリポイントとなります。クリックしてみましょう。
お手元のブラウザにインデックスページがこのように表示されると思います。
![Qiita 2022-02-23 Publisher 11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/4863eef7-0a80-3fcd-05c1-4ebdcd0a897c.png)
左側のメニューから”レポート”->”リスト”を選択します。
「パブリッシャー」で作成されたWEBレポートの一覧が表示されるはずです。先ほど作成したレポートのみが表示されている場合は、下図の5番が示すアイコンをクリックしてレポートを表示します。
多数のレポートが既に存在している場合は、”グループ”フィールドを利用してレポートの一覧を絞り込むことができます。
![Qiita 2022-02-23 Publisher 12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/ef858fda-79a0-3ace-818c-f45567aac14d.png)
作成したWEBレポートは、このように表示されます。
レポート上部に赤字で **’Unlicensed’** (ライセンス無)と表示されています。通常Sharperlightはライセンスを購入して使用しますが、ライセンスが無くても一部のアプリケーションとクエリ抽出行制限が99行ということ以外は、なんら制限はありません。ほとんどの機能を試すことができます。
![Qiita 2022-02-23 Publisher 13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/925ee460-c2a7-79eb-97c9-b36672d32fa9.png)
WEBレポートは、グループとコードを利用し一意のキーを生成します。よってSharperlightサービスURLを利用し、以下のようにレポートURLを生成できます。
http://(あなたのサーバー名)/mdService1Rest/Report?query=**QiitaSample.ProductsList**
このURLを使用して、直接WEBレポートにアクセスできます。
また、WEBレポートは、このようにパブリッシャーから開くことも可能です。
![Qiita 2022-02-23 Publisher 14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/74464348-aadc-3c78-51fd-080a57b3f80d.png)