SQL Server 2005 Reporting Services における重大な変更

更新 : 2006 年 12 月 12 日

このトピックでは、カスタム アプリケーション、スクリプト、またはレポートに影響を与える Reporting Services 機能の変更について説明します。

ヘッダーまたはフッターのドリルスルー アクションやブックマーク リンクはサポートされない

SQL Server 2005 または SQL Server 2005 Service Pack 1 の Reporting Services では、ヘッダーまたはフッターのドリルスルー アクションやブックマーク リンクはサポートされません。これは、SQL Server 2000 Reporting Services で作成したレポートに関する大きな変更点です。

Service Pack 2 ではこの問題は部分的に解決されています。ページのヘッダーとフッターでのドリルスルー アクションは、要求時ベースで実行されるレポートではサポートされますが、スナップショットとして実行されるレポートではサポートされません。ヘッダーまたはフッターにドリルスルー アクションまたはブックマーク リンクを含むスナップショットは、再作成してドリルスルー機能を取り込む必要があります。

  1. レポート マネージャまたは Management Studio を起動します。
  2. レポートの場所を特定し、そのレポート用に [実行のプロパティ] ページを開きます。
  3. [このページの保存時にレポートのスナップショットを作成する] チェック ボックスをオンにします。
  4. [適用] をクリックします。
  5. スナップショットとして動作し、ヘッダーまたはフッターにドリルスルーまたはブックマーク リンクがあるすべてのレポートに対して、同じ手順を繰り返します。

SQL Server 2000 のレポート サーバー WMI プロバイダはサポートされない

Reporting Services には、レポート サーバーの実行環境をプログラムによって構成できる WMI プロバイダが含まれています。SQL Server 2005 リリースの Reporting Services に含まれる WMI プロバイダは、以前のバージョンから完全に一新されました。SQL Server 2000 で使用されていた WMI プロバイダは、SQL Server の最新リリースでサポートされていません。

データ処理拡張機能に新しい認証制約が設けられている

本リリースの Reporting Services では、一部のデータ処理拡張機能について、資格情報の処理方法に新しい制約が設けられています。

  • Analysis Services データ ソースに接続する際、データベースの資格情報を使用するように構成することはできません。ADOMD ラッパーを使用している場合、その接続は失敗します。
  • XML データ ソースに接続する際、データベースの資格情報を使用するように構成することはできません。資格情報を指定せず、自動実行用アカウントを定義していない場合、接続要求は匿名アクセスとして実行されます。
  • サード パーティの .NET データ処理拡張機能 (たとえば、DB2.NET、Oracle ODP.NET、Teradata) では、データベースの資格情報が接続文字列で引き渡され、自動実行用アカウントが設定されていない場合、データ処理が明示的に失敗します。
  • IDBConnection を実装する (ただし IDBConnectionExtension は実装しない) カスタム データ処理拡張機能では、自動実行用アカウントが構成されていない限り、すべての場合においてデータ処理が明示的に失敗します。
  • 接続要求がサービス アカウントによって行われるとき (つまり、サービス アカウントのセキュリティ コンテキストがデータ ソースへのネットワーク接続に使用されるとき) は常に、Reporting Services によって要求の送信前にサービス アカウントの管理者権限が削除されます。

自動実行用アカウントを構成するには、Reporting Services 構成ツールまたは rsconfig ユーティリティを使用します。詳細については、「カスタム データ処理拡張機能の接続の指定」および「自動実行されるレポート処理用のアカウントの構成」を参照してください。

オブジェクトを参照する式によってレポート コンパイル エラーが発生する

アイテムに対して Action プロパティを設定する式がレポートに含まれており、さらに、その式に Me.Value 参照が含まれている場合、レポートはコンパイルされません。Action プロパティ式に Me.Value を含むレポートをアップグレードすると、コンパイル エラーが発生し、"テキスト ボックス 'textbox1' の Value 式にエラーがあります: [BC30456] 'Value' は 'ReportExprHostImpl.textbox1_TextBoxExprHost.DataValue1_DataValueExprHost' のメンバではありません。(rsCompilerErrorInExpression)" というメッセージが表示されます。

これらのエラーを回避してレポートをアップグレードするには、Action 式を書き直し、Me.Value を実際の値式に置き換える必要があります。次の例は、テキスト ボックスの式の Me.Value を、実際の値式に置き換える方法を示しています。=iif(Fields!Name.Value = 0, "Solid", "None")

複数値パラメータのサポートにより、レポート内の単一値パラメータが影響を受ける可能性がある

複数の値をとるパラメータのサポートは、このリリースで導入された新機能です。以前の SOAP エンドポイントを使用しており、コードが複数のパラメータを取得または設定する場合、現在では複数の値を持つパラメータが返されます。以前のリリースでは、複数のパラメータを指定した場合でも、最初のパラメータだけが返されました。アップグレード後は、単一値を想定していたパラメータに対して、複数のパラメータが返される可能性があります。既存の Render メソッドの呼び出しを見直し、単一値のパラメータが使用されているか、複数値のパラメータが使用されているかを確認してください。また、パラメータが含まれるすべてのレポートをテストして、単一値のパラメータが予測どおりに動作することを確認する必要があります。

SetReportParameters によるパラメータの更新

以前のリリースでは、パラメータ プロパティを更新する場合、その設定をすべて指定し直す必要がありました。レポートに、クエリ ベースまたは式ベースのパラメータが含まれている場合、パラメータ プロパティを 1 つだけ更新するときでも、レポート全体を再パブリッシュしなければなりませんでした。また、レポートの再パブリッシュが失敗すると、パラメータ プロパティの変更後にレポートのクエリ ベースの既定値が欠落しました。

このリリースでは、すべてのプロパティを再設定しなくても、パラメータの特定のプロパティを更新できます。DefaultValues プロパティを指定しない場合、既定値は Null に設定されなくなりました。アプリケーション コードまたはスクリプトで以前の SOAP エンドポイントを使用している場合、Null 参照を処理するときは、この変更により、アプリケーション コードまたはスクリプトを書き直す必要が生じる可能性があります。

複数の値をとるパラメータ用の [すべて選択] メンバの追加

SQL Server 2005 Reporting Services のレポートでは、複数の値をとるレポート パラメータに可能な値の一覧を作成すると、[すべて選択] チェック ボックスが自動的に追加されていました。[すべて選択] チェック ボックスをオンにするとすべての可能な値が選択され、[すべて選択] チェック ボックスをオフにするとすべての可能な値が選択解除されていました。しかし SQL Server 2005 Service Pack 1 (SP1) にアップグレードすると、[すべて選択] チェック ボックスは使用できなくなっていました。SQL Server 2005 Service Pack 2 (SP2) では、[すべて選択] チェック ボックスが復活しています。レポート作成クライアントを SP2 にアップグレードすると、レポート デザイナでレポート プレビューを実行したときに、可能な値のドロップダウン リストに [すべて選択] チェック ボックスが追加されます。レポート サーバーを SP2 にアップグレードした後は、レポート サーバー ツール (レポート マネージャ、レポート ビルダ、および SQL Server Management Studio) を使用して、[すべて選択] 機能を使用する既存または新しいレポートをすべて表示できます。既存のレポートを再パブリッシュして [すべて選択] 機能を復元する必要はありません。ツールをアップグレードしても [すべて選択] チェック ボックスが表示されない場合は、SP1 のレポート サーバーに接続している可能性があります。

Microsoft SQL Server Analysis Services のデータ処理拡張機能からの拡張プロパティの参照

SQL Server 2005 Reporting Services のレポートで、Analysis Services データ ソースからのフィールドの拡張 Key プロパティを参照する必要がある場合、カスタム フィールド構文 Fields!FieldName("MEMBER_KEY") を使用する必要があります。SQL Server 2005 Service Pack 1 (SP1) にアップグレードすると、この構文では Key 値が返されなくなります。そのため、この回避策は必要なくなるか、サポートされなくなります。代わりに、Key プロパティの拡張フィールド構文への参照を Fields!FieldName.Key または Fields!FieldName("Key") に変更する必要があります。

変更履歴

リリース 履歴

2006 年 12 月 12 日

追加内容 :
  • ドリルスルー アクションがサポートされない。
変更内容 :
  • SP2 で [すべて選択] オプションが復活。

参照

概念

Reporting Services のアップグレード

その他の技術情報

SQL Server コンポーネントのアップグレード
Reporting Services の旧バージョンとの互換性
旧バージョンとの互換性

ヘルプおよび情報

SQL Server 2005 の参考資料の入手