URL 内でレポート パラメーターを渡す

レポート パラメーターはレポート URL に含めることでレポートに渡すことができます。 このような URL パラメーターにはプレフィックスを付けません。パラメーターはレポート処理エンジンに直接渡されるためです。

Note

SharePoint と Reporting Services の統合は、SQL Server 2016 以降では使用できません。

重要

SharePoint および _vti_bin HTTP プロキシ経由で要求をルーティングする Reporting Services プロキシ構文を URL に含めることは重要です。 プロキシによって、HTTP 要求にいくつかのコンテキストが追加されます。これは、SharePoint モード レポート サーバーに対してレポートを適切に実行するために必要なコンテキストです。

プロキシ構文を含めない場合は、パラメーターの先頭に rp: を付ける必要があります。

すべてのクエリ パラメーターには、対応するレポート パラメーターを指定できます。 クエリ パラメーターをレポートに渡すには、対応するレポート パラメーターを渡します。 詳細については、「リレーショナル クエリ デザイナーでのクエリの作成 (レポート ビルダーおよび SSRS)」を参照してください。

重要

レポート パラメーターでは大文字と小文字が区別されます。

Note

レポート パラメーターでは大文字と小文字が区別され、次の特殊文字が使用されます。

  • URL 文字列では、URL エンコード規格に基づいてすべての空白文字が文字列 "%20" に置き換えられます。
  • URL のパラメーター部分にある空白文字はプラス記号 (+) に置き換えられます。
  • 文字列の任意の部分にあるセミコロンは文字列 "%3A" に置き換えられます。
  • 通常、適切な URL エンコードはブラウザーによって自動的に行われます。 これらの文字を手動でエンコードする必要はありません。

URL 内にレポート パラメーターを設定するには、次の構文を使用します。

  
parameter=value  

たとえば、レポートで定義されている "ReportMonth" と "ReportYear" の 2 つのパラメーターを指定するには、ネイティブ モードのレポート サーバーで次の URL を使用します。

https://myrshost/ReportServer?/AdventureWorks2022/Employee_Sales_Summary_2022&ReportMonth=3&ReportYear=2008  

たとえば、レポートで定義されている同じ 2 つのパラメーターを指定するには、SharePoint 統合モードのレポート サーバーで次の URL を使用します。 /_vti_binに注意してください。

https://myspsite/subsite/_vti_bin/reportserver?https://myspsite/subsite/AdventureWorks2022/Employee_Sales_Summary_2022.rdl&ReportMonth=3&ReportYear=2008  

パラメーターに NULL 値を渡すには、次の構文を使用します。

  
parameter  
:isnull=true  
  

たとえば、次のように入力します。

SalesOrderNumber:isnull=true  

Boolean 値を渡す場合、False には 0 を、True には 1 を使用します。 Float 値を渡すには、サーバー ロケールに応じた小数点の記号を指定します。

Note

既定値を持つレポート パラメーターがレポートに含まれており、 Prompt プロパティの値が false である場合 (つまりレポート マネージャーで Prompt User プロパティが選択されていない場合)、URL 内でそのレポート パラメーターに値を渡すことはできません。 管理者はこの方法を使用して、エンド ユーザーが特定のレポート パラメーターの値を追加したり変更したりすることを禁止できます。

その他の例

次の URL の例には、空白や複数のパラメーターが含まれています。

  • "SQL Server User Education Team" のフォルダー名には空白が含まれているため、各空白が "+" に置き換わります。

  • "team project report" というレポート名には空白が含まれているため、各空白が "+" に置き換わります。

  • xgroup を指定した "teamgrouping2" および値 ygroup を指定した "teamgrouping1" という 2 つのパラメーターを渡します。

https://myserver/Reportserver?/SQL+Server+User+Education+Team/_ContentTeams/folder123/team+project+report&teamgrouping2=xgroup&teamgrouping1=ygroup  

次の URL の例には、複数の値を持つパラメーター "OrderID" が含まれています。 複数の値を持つパラメーターの形式では、値ごとにパラメーター名を繰り返します。

https://myserver/Reportserver?/SQL+Server+User+Education+Team/_ContentTeams/folder123/team+project+report&teamgrouping2=xgroup&teamgrouping1=ygroup&OrderID=747&OrderID=787&OrderID=12  

次の URL の例では、"7/1/2005" という値を持つ単一のパラメーター SellStartDate を、ネイティブ モードのレポート サーバーに渡します。

https://myserver/ReportServer/Pages/ReportViewer.aspx?%2fProduct_and_Sales_Report_AdventureWorks&SellStartDate=7/1/2005