0

「RelativePath」という名前のフィールドを持つデータソースでローカル レポートを作成しました。私の WinForms アプリがレポートをレンダリングすると、RelativePath フィールドで指定された場所にファイルがエクスポートされます。レポート ビルダーで、Navigation|Hyperlink action|Jump to URL を "=Fields!RelativePath.Value" に設定し、レポートの EnableHyperlink プロパティを true に設定しました。ただし、アプリがレポートをレンダリングするときはいつでも、ハイパーリンクはアクティブではありません。ただし、Jump to URL を絶対パスにハードコードすると、問題なく動作します。ReportViewer は相対パスのハイパーリンクをレンダリングしませんか?

4

3 に答える 3

1

同じ問題が発生しました。これを回避するために、「AbsolutePath」というレポート パラメータを作成しました。

.rdlc ファイルのデザイン ビューに移動します。[レポート データ] タブに、[パラメーター] ノードが表示されます。それを右クリックして:

  1. パラメータを追加...
  2. [全般] タブで、[名前] プロパティに「AbsolutePath」と入力します。
  3. 「デフォルト値」をクリックします
  4. [値を指定] ラジオ ボタンを選択します。
  5. 新しい値「AbsolutePath」を追加します。

TextBox の Action Expression に、次のようなものを追加します ="javascript:void(window.open('" + Parameters!AbsolutePath.Value + "/yourpage.aspx?id=" + Fields!Id.Value + "', '_blank '))"

新しい「AbsolutPath」パラメーターを式に追加できることがわかります。

ここで、値をレポートのパラメーターに渡す必要があります。

    string baseUrl = Request.Url.GetLeftPart(UriPartial.Authority);
    var param = new ReportParameter("AbsolutePath", baseUrl);
    this.ReportViewer.LocalReport.SetParameters(param);
于 2013-07-11T19:50:47.913 に答える
0

Globals!ReportServerUrl式でグローバル変数を使用するだけです

= Globals!ReportServerUrl + "yourpath"
于 2014-10-15T18:02:56.087 に答える