Share via


レポートのトラブルシューティング: レポート処理

レポート データが取得されると、レポート プロセッサによってデータとレイアウトの情報が結合され、結合されたデータとレイアウトのコンテキストで、式を持つ各レポート アイテム プロパティが評価されます。このトピックでは、以下の問題のトラブルシューティングを行います。

レポート定義が有効でない

実行時に、レポート プロセッサはレポート定義のデータ要素とレイアウト要素を結合し、レポート アイテム プロパティの式を評価します。

レポート プロセッサは、レポート定義 (.rdl ファイル) が .rdl ファイルの先頭の名前空間宣言で指定されているスキーマに準拠していることを確認します。RDL スキーマの詳細については、「レポート定義スキーマのバージョンを確認する方法 (SSRS)」を参照してください。

また、実行時に評価されるレポートの式は、レポートのデータとレイアウトを正しく結合できるようにする一連のルールに従っている必要があります。レポート プロセッサで問題が検出されると、"レポート <report name> の定義が無効です" というメッセージが表示されることがあります。

レポート アイテムの式は、現在のデータセット スコープ、または集計内の場合は指定されたデータセット スコープ内のフィールドしか参照できない

以下を参考にすると、エラーの原因の特定が容易になります。

  • レポートに複数のデータセットがある場合、レポート本文のテキスト ボックスの集計式でスコープ パラメーターを指定する必要があります。たとえば、=First(Fields!FieldName.Value, "DataSet1") のように指定します。

スコープ パラメーターを指定するには、レポート アイテムのスコープ内にあるデータセット、データ領域、またはグループの名前を指定します。詳細については、「合計、集計、および組み込みコレクションの式のスコープについて (レポート ビルダー 3.0 および SSRS)」および「式の参照 (レポート ビルダー 3.0 および SSRS)」を参照してください。

オブジェクトの名前は、1 文字以上、256 文字以下にする必要がある

レポート定義では、オブジェクト識別子の長さが 256 文字に制限されます。識別子は、大文字と小文字を区別し、CLS に準拠する必要があります。名前は文字で始まる必要があります。また、名前には、文字、数字、またはアンダースコア (_) を使用し、空白は使用しないでください。たとえば、テキスト ボックスの名前やデータ領域の名前は、これらのガイドラインに準拠している必要があります。

オブジェクトの名前を変更するには、プロパティ ペインのツール バーで、ドロップダウン リストから目的のアイテムを選択し、[名前] までスクロールして、有効なオブジェクト名を入力します。

テキスト ボックスに "#エラー" と表示される

実行時にレポート プロセッサがレポート アイテム プロパティの式を評価し、データ型の変換エラーやスコープ エラーなどを検出すると、"#エラー" メッセージが表示されます。

データ型エラーは、通常、既定のデータ型または指定されたデータ型がサポートされていないことを意味します。スコープ エラーは、指定されたスコープが式の評価時に使用できなかったことを意味します。

この "#エラー" メッセージが表示されないようにするには、原因となっている式を書き直す必要があります。問題の詳細を調べるには、詳細なエラー メッセージを表示してください。

プレビューでは、Business Intelligence Development Studio で、出力ウィンドウを表示します。レポート サーバーでは、呼び出し履歴を表示します。詳細については、「レポートに関する問題のトラブルシューティングの手法」を参照してください。