2016-08-08 4 views
0

У меня есть ASPX веб-формы, что в это VB код считывает файлы, которые .rdl из каталога, а затем перечисляет их, как говорят, кнопка или гипер ссылку и т.д. «отчеты на локальном хосте сервера отчетов»Asp.Net, VB, SQL Server Reporting Services .. динамически сгенерированные отчеты из каталога, которые будут отображаться в окне просмотра отчетов по клику?

Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load 
Dim FileLocation As DirectoryInfo = _ 
New DirectoryInfo("C:\inetpub\wwwroot\Reports") 

Dim fi As FileInfo() = FileLocation.GetFiles("*.rdl") 

For Each name As FileInfo In fi 
    ' Dim i As Integer 
    Dim listed As New LinkButton 
    ' listed.Attributes("CssClass") = "a" 
    ' listed.Attributes("Class") = "a" 
    listed.Attributes("id") = "listed" 
    listed.Text = (name.Name) 

    mine.Controls.Add(listed) 
    'mine.InnerHtml = "" 
    'i = i + 1 
Next 
End Sub 

и другой, у которого есть Reportviewer. Когда щелкнул отчет, как я могу отправить имя/значение в программу просмотра и перенаправить на него?

Большое спасибо

EDIT: я должен сделать щелчок перенаправлять зрителя со строкой и есть зритель использовать эту строку, но с тем, сколько когда-либо вариации ив попробовал еще ошибки, которые

Неверный путь к элементу 'salesreport.rdl'. Полный путь должен быть длиной менее 260 символов; применяются другие ограничения. Если сервер отчетов находится в основном режиме, путь должен начинаться с косой черты. (RsInvalidItemPath)

это код приложением просмотра

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
    If Not Page.IsPostBack Then 
     ' Retrieve parameter from Route "Reports/{reportName}" 
     Dim reportName = Picks.Selecty 

     'Page.Title = reportName 

     ReportViewer1.ProcessingMode = ProcessingMode.Remote 
     Dim serverReport As ServerReport 
     ServerReport = ReportViewer1.ServerReport 
     serverReport.ReportServerUrl = New Uri("http://localhost/reportserver/") 
     serverReport.ReportPath = reportName 
     ' reportName 
     ' 
     ' add parameters here 
     'Dim param As New ReportParameter("name", "value") 
     'serverReport.SetParameters(param) 

     serverReport.Refresh() 

    End If 
End Sub 

ответ

0

Вы можете попробовать следующее.

  1. Создайте новую страницу, сообщите ReportViewer.aspx, в которой размещен ваш элемент управления ReportViewer, который получает имя файла .RDL в виде строки запроса.
  2. На первой странице .aspx для каждой отображаемой ссылки укажите свойство NavigateURL на страницу ReportViewer.aspx и передайте имя файла .RDL как QueryString.

Надежда, что помогает

Спасибо, Prawin

+0

Большое спасибо за ответ, Prawin..i был не совсем уверен, что вы имели в виду, но я старался, как я понял, по при нажатии на ссылка хранит имя, отображаемое в строке, и отправляет его на страницу с помощью зрителя, но я был там обшарпан, любая дополнительная помощь? высоко оценил, друг – minguscoltrane

+0

забыл упомянуть вас @Prawin – minguscoltrane

 Смежные вопросы

  • Нет связанных вопросов^_^