0

보고서 서버에 첫 번째 SSRS 보고서를 배포하고이를 ReportViewer를 사용하는 응용 프로그램에서 호출했습니다. 문제는 보고서를 실행하기 전에 항상 데이터베이스 사용자 이름과 암호를 묻는 것입니다. 데이터베이스 자격 증명 (보고서 서버의 보고서에 있음)을 설정하는 위치에 상관없이 항상 내게 묻습니다. 그래서 나는이 같은 프로그램 데이터 소스 자격 증명을 설정하려고 : 보고서로드의ReportViewer의 SetDataSourceCredentials는 보고서의 첫 번째 페이지에서만 작동합니다.

    DataSourceCredentials cred = new DataSourceCredentials(); 
        ReportDataSourceInfoCollection dataSource = ReportViewer1.ServerReport.GetDataSources(); 
        cred.Name = dataSource.First().Name; 
        cred.UserId = "sa"; 
        cred.Password = "admin_pass"; 
        ReportViewer1.ServerReport.SetDataSourceCredentials(new DataSourceCredentials[] { cred }); 
        ReportViewer1.ServerReport.Refresh(); 

및 첫 페이지 잘. 불행히도 두 번째 페이지에서 자격 증명을 다시 묻는 메시지를 다시 입력하면 보고서 뷰어에 dataSource 같은 오류가 표시됩니다.

'DataSource2'데이터 소스에 연결할 수 없습니다. (rsErrorOpeningConnection)

누구에게이 문제가 있습니까? 그것을 해결하는 방법? 감사!

답변

0

먼저 프로젝트에 DataSource2이라는 데이터 소스가 있습니까? 나는 내가 알지 못하는 여분의 데이터 소스가 Visual Studio 보고서 디자이너에 의해 자동으로 만들어졌지만 (공유 데이터 소스 폴더 아래에 표시되지 않은) 상황에 처해있었습니다.

Visual Studio에서 보고서를 마우스 오른쪽 단추로 클릭하고 View Code을 클릭하여 데이터 원본을 확인하십시오. 필자가 할 일은 존재하지 않는 데이터 소스에 대한 참조를 삭제하고 모든 것이 예상대로 작동한다는 것입니다.

그렇지 않은 경우 SSRS 로그를보고 자세한 오류 메시지를 확인하십시오. 로그는 비슷한 위치에 있어야합니다. C:\Program Files\Microsoft SQL Server\MSRS11.SQLPROD1\Reporting Services\LogFiles

자세한 오류 메시지는 무엇입니까?

0

데이터 소스가 자격 증명을 요구하도록 구성되었을 수 있습니다. 보고서에 특정 사용자 이름과 암호를 지정해야한다고 생각합니다. 아래 스크린 샷을 참조하십시오.

enter image description here

관련 문제