Multi PDF

mercoledì 05 novembre 2008 - 12.44

BillyRay Profilo | Newbie

Salve a tutti,
sto cercando di creare multi PDF in Visual Studio 2005 in una pagia asp.net
lo avevo già fatto in vb6 con questo codice:

For index = 0 To UBound(codici) ' - 1
If codici(index) = "" Then Exit For
Dim oReport As CRAXDRT.Report
Dim crxApplication As New CRAXDRT.Application
Dim crxExportOptions As CRAXDRT.ExportOptions

oReport = crxApplication.OpenReport(App.Path & "\Database\Comunicazione.rpt", 1)
crxExportOptions = oReport.ExportOptions
oReport.ParameterFields(1).AddCurrentValue(codici(index))
crxExportOptions.DestinationType = crEDTDiskFile

Dim nomefile As String
nomefile = ""
nomefile = codici(index) & "_" & Tipo_Adesione(index) & "_B01"

nomefile = App.Path & "\Output\" & UCase(nomefile)

crxExportOptions.DiskFileName = UCase(nomefile) & ".pdf"
crxExportOptions.FormatType = crEFTPortableDocFormat
oReport.Export(False)

oReport = Nothing
crxApplication = Nothing
crxExportOptions = Nothing
Next index

ma è possibile esportare multi PDF? qualcuno ne sa qualcosa?
salvare direttamente un report in formato PDF su Pc è possibile?

per ora l'unica cosa che sono in grado di fare è generare una pagina di Internet Esplorer con un unico Report dal quale poi faccio manualmente l'esportazione in PDF... ma se ho 100 codici fiscali e per ognuno mi serve un PDF non so proprio come fare...



grazie ciao billy

freeteo Profilo | Guru

>ma è possibile esportare multi PDF? qualcuno ne sa qualcosa?
cosa intendi per multiPDF?
Se stai cercando di fare 1solo pdf da una serie di report, potresti fare l'esportazione su una serie di file e poi fare il merge con ITextSharp.
Guarda questo tread, si parla proprio di questa cosa: http://www.dotnethell.it/forum/messages.aspx?ThreadID=25670


>salvare direttamente un report in formato PDF su Pc è possibile?
certo, ti basta caricare il report dal disco, e senza visualizzarlo su nessun viewer, esportarlo con il metodo "Export", con un codice di questo tipo:
Dim tabella as new DataTable() ...riempi i dati nella tabella... Dim report as new ReportDocument() report.Load("c:\...\mioreport.rpt") report.SetDataSource (tabella) MemoryStream ms = report.ExportToStream(ExportFormatType.PortableDocFormat) as MemoryStream; byte[] bytePDF = ms.ToArray(); Response.ContentType = "application/octet-stream"; Response.AddHeader("Content-Disposition", "attachment; filename=" + nome); Response.OutputStream.Write(bytePDF, 0, bytePDF.Lenght);
ciao.

Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo

BillyRay Profilo | Newbie

ti faccio un esempio...
Io ho un DB Access e una tabella nella quale ci sono 100 record e 3 campi:
nome, cognome e codicefiscale

riesco tranquillamente (in ASP.net) a generare un unico report(in una finestra di internet explorer) che contiene 100 pagine divise per codicefiscale... poi lo esporto tranquillamente in un unico pdf direttamente dal report visualizatomi nella finestra di internet explorer.
quello che non riesco a fare è sempre da client/web a generare 100 pdf direttamente sul pc del client, tipo che dovrei teoricamente generare un reporto col primo codice fiscale faglielo esportare sul pc del Client (es. snsrrr43r45j456i.pdf) farlo chiudere e ripartire in automatico per tutti e 100 i codici fiscali...
alla fine il cliente deve, con un solo bottone da web, ritrovarsi 100 pdf nel suo pc... prima in vb6 ci riuscivo adesso altomare... però riesco a generare un unico report in una finestra web e da li esporto un unico pdf manualmente... non fattibile con 100 o 1000 pdf da esportare...


matteo!!! help! lol

P.S. io sto in vb2005 il codice che mi hai passato non mi funziona....
Dim report As New ReportDocument() non me lo riconosce...
è codice java o javascript...

Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5