はじめに
パブリッシュドレポート(WEBレポート)を使用してカスタムHTMLページを作成する際、クエリでいくつかの値を準備し、それらをカスタムHTMLに渡したい場合があります。
その場合、コントロールタグを使用してクエリの出力項目を参照することができます。
実践
注:このスクリプトではjQueryが使用されており、上の画像でjQueryライブラリが参照されていることがわかります。jQueryライブラリはSharperlightにバンドルされています。
ページが読み込まれると、スクリプトが実行され、クエリから渡された値がテーブルに表示されます。
赤い線で囲まれた部分が、クエリ出力項目の値が渡される場所です。
タグ: {*Row.<<出力項目の名前がここに入ります>>.text}
実行時には、これらのコントロールタグが対応する値に置き換えられることで、値がこれらのグローバル変数に渡されます。
クライアント側からページがリクエストされると、その定義されたクエリがサーバー側で実行され、出力項目の値が準備されます。
カスタムHTMLコード内で指定されているコントロールタグは全て、それらの準備された値で置き換えられ、クライアント側に戻されます。そしてスクリプトが実行される時点で、これらの変数にその値が代入されるという仕組みです。
- {*Row.URLSharperlight.text} は、「URLSharperlight」という名前の出力項目を参照します
- {*Row.TitleOfThisPost.text} は、「TitleOfThisPost」という名前の出力項目を参照します
- {*Row.Description.text} は、「Description」という名前の出力項目を参照します
- {*Row.EndpointURL.text} は、「EndpointURL」という名前の出力項目を参照します
あとがき
これは、パブリッシュドレポート(WEBレポート)のクエリからカスタムHTMLに値を渡す必要がある場合に役立ちます。
出力項目の名前はコントロールタグで使用されます。
クエリは1行のみを返すように設計する必要があることに注意してください。最初の行のみが有効と見なされます。
クエリは複数行を返すように設計できますが、そうすると最初の行のみが有効と見なされ、他の行は無視されますが、パフォーマンスが低下する可能性があります。