自动下载报告

时间:2014-09-11 18:47:27

标签: vb.net reporting-services

这是我已经制作的代码,但现在正在努力将报告保存到目录:

如你所见,我关注了很多关于如何使用这类报告服务的微软教程,但仍然没有得到它如何运作

 'objetos de reporting
        Dim rs As New reportingservice.ReportingService2010
        Dim rsExec As New ReportExecution.ReportExecutionService

        rs.Credentials = System.Net.CredentialCache.DefaultCredentials

        'datos generales
        Dim historyID As String = Nothing
        Dim deviceInfo As String = Nothing
        Dim format As String = "PDF"
        Dim results As Byte()
        Dim encoding As String = String.Empty
        Dim mimeType As String = String.Empty
        Dim extension As String = String.Empty
        Dim warnings As ReportExecution.Warning() = Nothing
        Dim streamIDs As String() = Nothing
        Dim filename As String = "C:/Users/gdedieu/Desktop/reporte.pdf"        ' Change to where you want to save
        Dim _reportName As String = "per_anexo_1"
        Dim _historyID As String = Nothing
        Dim _forRendering As Boolean = False
        Dim _values As ReportExecution.ParameterValue() = Nothing
        Dim _credentials As reportingservice.DataSourceCredentials() = Nothing
        Dim ei As ReportExecution.ExecutionInfo = rsExec.LoadReport(_reportName, historyID)

        'definimos el parámetro
        _values(0).Name = "an1_id"
        _values(0).Value = 1

        rsExec.SetExecutionParameters(_values, "en-us")
        results = rsExec.Render(format, deviceInfo, extension, mimeType, encoding, warnings, streamIDs)

        Dim stream As New System.IO.FileStream(filename, IO.FileMode.OpenOrCreate)

        stream.Write(results, 0, results.Length)
        stream.Close()

1 个答案:

答案 0 :(得分:0)

尝试通过报告管理器设置订阅,并指定“已发送者:'”的“报告递送选项”值。 as'报表服务器文件共享'。

这使您可以指定要写入的报告文件的路径 - 您需要确保Reporting Services服务器具有对目标的写访问权。