Generare PDF

venerdì 05 marzo 2010 - 15.06

Giamp72 Profilo | Junior Member

Ciao a tutti, ho un'applicazione in vb che fa delle stampe. Queste stampe possono essere generate anche in formato PDF.
Attualmente setto la printer di vb alla stampante PDFCreator che ho preventivamente installato.. tutto funziona ma
ora ho la necessita di controllare che il file venga generato e lo devo spostare in un folder particolare..
attualmente rimango in loop finche il file non è generato ecc ecc..
Vorrei migliorare tutto il processo inserendo nella mia applicazione qualcosa di completamente Integrato, quindi vi chiedo se avete idea di che strumenti posso usare per il mio scopo (l'intenzione è quella di comprare un OCX ma quale??)

grazie

Giamp72

carloalberto Profilo | Junior Member

potresti dare un'okkiata proprio ai sorgenti di PDFCreator, se non sbaglio è un opensource scritto in vb :-)

ciao

carloalberto Profilo | Junior Member

eventualmente vedi qua
http://www.pdfforge.org/download

ciao ciao

Giamp72 Profilo | Junior Member

Grazie per la risposta ma....
..purtroppo mi sono dimenti cato di scrivere che ho anche un problema di trasparenza sui pdf creati da pdf creator...
mi spiego: se metto sul pdf un wmf a colori con delle trasparenze, con pdfcreator non vedo correttamente le trasparenze... sembra sia un problema di tutti i generatori di pdf basati su gostscript..
Giamp72

carloalberto Profilo | Junior Member

tra l'altro nella cartella del pdfcreator che ho installato io trovo

C:\Program Files\PDFCreator\COM\VB6\Sample1

prova a vedere se i due esempi riportati ti possono essere gia di aiuto

ciao :-)
ops non avevo visto la tua risposta

Mau67 Profilo | Expert

Ciao io faccio in questo modo:

mi creo il mio report con crystal report, creo un dataset con i campi che devo mandare in stampa, e nel button inserisco questo codice per creare il pdf e visualizzarlo:

Dim daT1, As OleDbDataAdapter
Dim TUO DATASET As DataSet
Dim strSQL As String

strSQL = "TUA SELECT"
daT1 = New OleDbDataAdapter(strSQL, Connection)
TUO DATASET = New DataSet
daT1.Fill(TUO DATASET, "TUA TABELLA")


Dim rpt As New NOME DEL TUO REPORT
rpt.SetDataSource(TUO DATASET)
Dim CRView As New Stampa()
CRView.CRViewer.ReportSource = rpt


'Esporto il report in PDF
rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, AppDomain.CurrentDomain.BaseDirectory + "\nome report.pdf")

'Apro il report in PDF
Dim proc As New Process
With proc.StartInfo
.Arguments = (AppDomain.CurrentDomain.BaseDirectory + "\nome report.pdf")
.UseShellExecute = True
.WindowStyle = ProcessWindowStyle.Maximized
.FileName = "AcroRd32.exe"
End With

proc.Start()
proc.Close()
proc.Dispose()

spero ti sia utile

Ciao Maurizio
Mau67

Giamp72 Profilo | Junior Member

purtroppo non mi è molto d'aiuto il tuo esempio.. non uso crystal report e faccio stampe di tipo grafico.. disegni in 3D...
quindi la soluzione che mi proponi non è applicabile..
Giamp72
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5