2015-07-29 3 views
1

Так у меня есть сервер отчетов в локальной сети, что я хочу, чтобы получить доступ с помощью приложения Winform с Report ViewerVB.NET Report Viewer Выпуск

мой отчет управления Зритель Имя является rpt_ReportViewer и вот код для просматривать отчеты по ReportViewer rpt_ReportViewer

Private Sub rpt_GenerateReportBtn_Click(sender As Object, e As EventArgs) Handles rpt_GenerateReportBtn.Click 
    With rpt_ReportViewer 
     .ServerReport.ReportServerUrl = New Uri("http://SERVER/ReportServer") 
     .ServerReport.ReportPath = "/Search Assets Table/Search Assets Table" 
     .RefreshReport() 
    End With 
End Sub 

всякий раз, когда я запускаю этот код он генерирует исключение в средстве просмотра отчетов о том, «Сбой запроса с состоянием HTTP 401: Несанкционированный.»

Я не знаю, что случилось, но я использовал этот тот же самый код на локальном хосте, и она работала http://localhost/reportserver

кто может помочь мне выяснить, что не так, пожалуйста? заранее спасибо.

+0

Я думаю, что вам, возможно, потребуется предоставить учетные данные пользователя, а также. – Karlta05

+0

@ Karlta05 спасибо, я решил это, и вы правы, ему нужны учетные данные для доступа к серверу. – Willy

+0

. Вы должны опубликовать свое решение, чтобы помочь другим, которые могут столкнуться с той же проблемой, что и у вас. Рад, что вы это решили. : D – Karlta05

ответ

0

Там же решение

 Dim Credential As New NetworkCredential("User name", "Password") 'Was missing this Line 
    With rpt_ReportViewer 
     .ServerReport.ReportServerCredentials.NetworkCredentials = Credential 'Was missing this line too 
     .ServerReport.ReportServerUrl = New Uri("http://SERVER/ReportServer") 
     .ServerReport.ReportPath = rpt_ReportsListBox.SelectedValue 
     .RefreshReport() 
    End With