レポートデザイナーのManual Linkingを使用したハイパーリンクの方法をご紹介します。
まず、ハイパーリンクを設定したいオブジェクトを選択し、
右クリックから「ハイパーリンク」を選択します。
「位置:」には「Manual Linking」を選択します。
Manual Linkingではリンク、タイトル、ウィンドウに対して、固定値、あるいはフォーミュラを使用した可変値を設定できます。
ここでは、リンクに対してフォーミュラを使用し環境変数やパラメータ変数をPathに使用してみます。
■環境変数を使用する
環境変数として「pentahoBaseURL」があります。
こちらを使用することで、ベースURLにおいて、パブリッシュ先のサーバとレポートとの間の依存関係をなくすことができます。
例えば、以下のようなパスのレポートへのリンクがあるとします。
http://localhost:8080/pentaho/api/repos/home/admin/sample.prpt/viewer
この場合、デフォルトのベースURLは「http://localhost:8080/pentaho/」のため、
=["env::pentahoBaseURL"] & "api/repos/:home:admin:sample.prpt/viewer"
というように表記できます。
なお、pentahoBaseURLの変更方法については、以下の通りです。
ツールまたはサーバを停止し、下記のファイルを編集後、再起動します。
レポート側のBaseURL
場所:design-tools\report-designer\resources
ファイル:classic-engine.properties
定義箇所:org.pentaho.reporting.engine.classic.core.environment.pentahoBaseURL
=http://localhost:8080/pentaho/
サーバー側のBaseURL
場所:server\pentaho-server\pentaho-solutions\system
ファイル:server.properties
定義箇所:fully-qualified-server-url=http://localhost:8080/pentaho/
■リンク先にパラメータを渡す
リンク先のレポートがパラメータを要求する場合は、URLにそのパラメータを追記します。
遷移元のパラメータ「AAA」と「BBB」を、遷移先のパラメータ「pAAA」と「pBBB」に渡す場合は次のようなフォーミュラになります。
=OPENINMANTLETAB(CONCATENATE(["env::pentahoBaseURL"] & "api/repos/:home:admin:sample.prpt/viewer?output-type=text/html"; "&pAAA=";TEXT([AAA]);"&pBBB=";TEXT([BBB]););"Link Report")
■Pathの一部を変数にする
Pentaho社より提供されている機能として、Pathに変数を扱える唯一方法は環境変数の「pentahoBaseURL」を使用することですが、次のような方法でPathの一部を変数にすることもできます。
=OPENINMANTLETAB(CONCATENATE(["env::pentahoBaseURL"] & ["pURL"] & "sample_JP.prpt/viewer?output-type=text/html";);"Link Report")
ここでは、「api/repos/:home:admin:」を変数「pURL」とし、
レポートに下記の"隠しパラメータ"を作成することで変数の値を設定しています。
名前:pURL
値形式:String
デフォルト値:api/repos/:home:admin:
プロンプトの表示:隠す
このようにManual Linkingを使用することで、Pathの一部を変数にすることができます。
| | | | | | | | | |
スピーチ機能は最大文字数200文字の制限があります