web-dev-qa-db-ja.com

SSRSでデータソースエラー(rsErrorOpeningConnection)への接続を作成できません

レポートをブラウザに統合しようとしていますが、次のエラーが表示されます。

An error has occurred during report processing. (rsProcessingAborted)
Cannot create a connection to data source 'dsFederatedSample_SurveyLevel_STG'. (rsErrorOpeningConnection)
For more information about this error navigate to the report server on the local server machine, or enable remote errors

enter image description here

これは、SQL認証とWindows認証に関係していますか?

19
Coffee

私が最初に試みることは、エラーに関するもう少しの情報を得ることです-それはかなり一般的なメッセージです。

エラーメッセージに従ってリモートエラーを有効にし、詳細についてはエラーを複製できます。

リモートエラーを有効にする

または、レポートサーバーのエラーログをチェックして、ログに記録されたエラーを確認します。

%programfiles%\Microsoft SQL Server\<SQL Server Instance>\Reporting Services\LogFiles\

次の手順は、データソースユーザーとしてデータベースに接続し、レポートの実行時に使用しているのと同じパラメーターを使用してレポートで使用しているコード/ストアドプロシージャを実行し、エラーが発生するかどうかを確認することです。

15
Ian Preston

上記の2つのオプションに加えて、SQL Server 2008では、SQL Server Management Studioを介してこの設定を行う3番目のオプションがあります。

1. Management Studioを起動し、レポートサーバーインスタンスに接続します。

2. ReportServerデータベースを右クリックし、プロパティを選択します

3.詳細設定をクリックします

4. EnableRemoteErrorsで、Trueを選択します。

5. [OK]をクリックします。

4
jamal ahmad

Windows 8.1、SQL Server 2014 Developer Edition、およびVisual Studio 2013 Proで同じ問題「データソースへの接続を作成できません...ユーザーのログインに失敗しました。」がありました。他のStackoverflowコミュニティメンバーが上記で提供したすべてのソリューションは、私にとってはうまくいきませんでした。

そこで、次の手順を実行しました(すべてのWindowsアプリケーションを管理者として実行します)。

  1. VS2013 SSRS:右ペインの「ソリューションエクスプローラー」でWindows認証(統合セキュリティ)を使用して、データソースを共有データソース(.rds)に変換しました。

  2. 元の(非共有)データソース(左側のペイン「レポートデータ」)に「資格情報を使用しない」が追加されました。

  3. プロジェクトのプロパティで、「Deployment」「Overwrite DataSources」を「True」に設定し、プロジェクトを再デプロイしました。

enter image description here

その後、資格情報を入力するための追加の要件なしでレポートを実行できました。すべての共有データソースは、個別のディレクトリ「データソース」にデプロイされました。

enter image description here

enter image description here

3
Michael Alfes

私の場合、これはローカルでレポートを開発しているときにデータソースでIntegrated Windows Authenticationを使用したためでしたが、レポートマネージャーに到達すると、サイトが正しく渡されなかったために認証が失敗しました私の資格情報に沿って。

  • 簡単な修正方法は、ユーザー名/パスワードをデータソースにハードコードすることです。
  • より難しい修正方法は、レポートマネージャーを介して、基になるデータソースにWindows資格情報を適切に偽装/委任することです。
3
raterus

ストアドプロシージャでnull値を使用する場合は、null値を受け入れるようにパラメーターを設定する必要があります。それは私のために働いた。

2
Genkis

問題は、データソースが適切にセットアップされていないためです。そのためには、まずデータソース接続を確認してください。

スタートをクリック->すべて開始-> Microsoft SQL Server->構成ツール->「レポートサービス構成マネージャー」

開いているレポートマネージャーのURLからデータソースフォルダーに移動します。下の図を参照してください

次に、データソースを作成するか、データベースソースを右クリックして既にあるものを設定し、以下に示すように「管理」を選択します

次に、[プロパティ]タブの左側のメニューで、接続文字列とユーザー名とパスワードをデータソースに入力し、テスト接続をクリックし、接続が成功した場合は[適用]をクリックします

この場合「SurveyLevelReport」のレポートを含むフォルダーに移動します

最後に、以前に設定したデータソースにレポートを設定し、[適用]をクリックします

2
jeer65

私の場合、1つのレポートで、DBおよびAnalysis Services Cubeに対する多くの異なるデータセットがありました。データセットが互いにブロックし、そのようなエラーを生成したようです。 CUBEデータソースプロパティのオプション「クエリの処理時に単一のトランザクションを使用する」を支援しました

1
Anton Arkhipkin

私は同様の問題を抱えており、私がそれを理解するのに時間がかかりましたが、ユーザーはSSMSでログインする必要があることを学びました。次のパラメーターを使用してログインを作成しました。

  • サーバーの役割-sysadminを確認します
  • [ユーザーマッピング]で、データベースとレポートサーバーを選択しました。データリーダーとデータライターをチェックするたびに
  • Sesecuresの下-ユーザーがデータベースに接続して何でも表示できるようにするものをすべてチェックしました
  • また、既存のログインの1つでdenydatareaderとdenydatawriterがチェックされていることもわかりました。これらを削除すると機能しました。

私はこれが最善の方法だと言っているのではなく、ちょうど私のために働いたものです。お役に立てれば

1
anonymous

詳細情報が役立ちます。

同じエラーメッセージが表示された場合、データソースの資格情報ページを正しく構成するだけで済みました(レポートビルダー3を使用しています)。デフォルトを選択した場合、レポートビルダーではレポートは正常に機能しますが、レポートサーバーでは失敗します。

この修正の詳細については、こちらをご覧ください: https://hodentekmsss.blogspot.com/2017/05/fix-for-rserroropeningconnection-in.html

1
user2063329