Generar PDF con varias hojas y diferente contenido desde SSIS con SSRS
Publicado por Jeanpierre (1 intervención) el 26/01/2017 13:47:01
Buenas a todos el problema que tengo es el siguiente:
1. A través de SSIS debo generar varios PDFs con un reporte de SSRS (Ya logro generar el PDF)
2. Sin embargo a pesar de que estoy usando la clase FileMode.Append el archivo solo se reemplaza y no logro generar varias hojas con diferente contenido.
3. No se mucho sobre el tema espero me puedan ayudar.
4. Debo generar por cada fideicomiso 1 pdf y como podran entender cada idfideicomiso tiene varios codclientes los cuales deberian aparecer en cada pdf, es decir 1 pdf con todos los clientes en varias hojas.
5. El código que estoy usando es el siguiente:
espero me puedan ayudar.
1. A través de SSIS debo generar varios PDFs con un reporte de SSRS (Ya logro generar el PDF)
2. Sin embargo a pesar de que estoy usando la clase FileMode.Append el archivo solo se reemplaza y no logro generar varias hojas con diferente contenido.
3. No se mucho sobre el tema espero me puedan ayudar.
4. Debo generar por cada fideicomiso 1 pdf y como podran entender cada idfideicomiso tiene varios codclientes los cuales deberian aparecer en cada pdf, es decir 1 pdf con todos los clientes en varias hojas.
5. El código que estoy usando es el siguiente:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Protected Sub SaveFile(ByVal url As String, ByVal localpath As String)
Dim loRequest As System.Net.HttpWebRequest
Dim loResponse As System.Net.HttpWebResponse
Dim loResponseStream As System.IO.Stream
Dim loFileStream As New System.IO.FileStream(localpath, FileMode.Append, FileAccess.Write, FileShare.Write)
Dim laBytes(256) As Byte
Dim liCount As Integer = 1
Try
loRequest = CType(System.Net.WebRequest.Create(url), System.Net.HttpWebRequest)
loRequest.Credentials = System.Net.CredentialCache.DefaultCredentials
loRequest.Timeout = 60000
loRequest.Method = "GET"
loResponse = CType(loRequest.GetResponse, System.Net.HttpWebResponse)
loResponseStream = loResponse.GetResponseStream
Do While liCount > 0
liCount = loResponseStream.Read(laBytes, 0, 256)
loFileStream.Write(laBytes, 0, liCount)
Loop
'loFileStream.Flush()
loFileStream.Close()
Catch ex As Exception
End Try
End Sub
Public Sub Main()
Dim url, destination As String
Dim IDFideicomiso As String = Dts.Variables("intIDFideicomiso").Value.ToString
Dim CarpetaPDF As String = Dts.Variables("srtCarpetaPDF").Value.ToString
Dim NomFideicomiso As String = Dts.Variables("srtNombre").Value.ToString
Dim CodCliente As String = Dts.Variables("intCodCliente").Value.ToString
destination = CarpetaPDF + IDFideicomiso + ".PDF"
url = "url de reporting services con codcliente como parametro" + CodCliente + "&rs:Format=PDF"
SaveFile(url, destination)
Dts.TaskResult = ScriptResults.Success
End Sub
Valora esta pregunta
0