Newsgroup: it.comp.appl.access
Titolo: creare un file pdf

Ciao di nuovo a tutti.
dopo aver abbandonato il database che mi creava file pdf tramite l'uso
di pdf995 perchè a pagamento, ora sto cercando di farlo funzionare con
pdfconvert che è free.
il mio problema è questo, ho installato pdfconvert e alessandro mi ha
già dato una dritta riguardo al modulo da utilizzare, solo che io di
inglese ci capisco proprio poco e vorrei creare il file tramite questa
riga
call [nomefunzione da richiamare] (parametri riguardo al report,path
destinazione, indirizzo mail destinatario)
spero che mi possiate aiutare.
una volta riuscito a settare il tutto manderò l'esempio al SC in modo
che in futuro qualcuno lo possa utilizzare.
GRAZIE

 ha scritto nel messaggio
news:41ed567c$0$8204$5fc...@news.tiscali.it...

Innanzitutto devi instalare GhostScript e non solo PDFCreator.
Il formato della MAIL per ora non saprei cosa dirti.
Devi crearti come ti ho già spiegato privatamente una stampante a Colori
che supporta il salvataggio in formato PS (ad esempio Apple Color
LaserWriter 12/600)
e la chiami ad esempio "2PDF"
Quindi imposti nelle proprietà la Porta a stampa su File e gli indichi il
Nome
FISSO del File : c:\Temp.ps (questo nome lo userai anche dopo)
Fai una stampa di prova e verifica che crei il file in C:\
Quindi sei a posto:
Ora la Sub PrintReport può essere migliorata estraendo il Nome
della Stampande di Default in modo tale da evitare di doverla
scrivere a mano, con WSH è possibile, ma la cosa è assai più complessa
per chi non ha familiarità con le classi di SDK che farlo con le API.
Public Sub CreaFilePDF(ReportName as string, PDF As String)
        Dim Comando As String
        Dim FileInput As String
        Dim TipoOutput As String
        Dim FileOutput As String
        call PrintReport (ReportName, acviewpreview)
        '    Quì ci và il Path dell'eseguibile gswin32c.exe
        Comando = "c:\gs\gs7.04\bin\gswin32c "
        FileInput = " c:\Temp.ps "
        TipoOutput = " -sDEVICE=pdfwrite "
        FileOutput = " -sOutputFile=" & PDF & " "
        retVal=Shell (Comando & " -dNOPAUSE -dBATCH -dNOPROMPT " & _
                                  FileOutput & _
                                 TipoOutput & _
                                 FileInput, vbMinimizedNoFocus)
End Sub
Sub PrintReport(strReport as String, optional eView As Access.AcView =
acViewNormal)
    Const PDF_PRINTER as String = "2PDF"
    Const ORIGINAL_PRINTER as String = "NOME STAMPANTE PREDEFINITA"
    Dim net as WScript.Network
    Dim fso as Scripting.FileSystemObject
    Set net = new WScript.Network
    net.setDefaultPrinter PDF_PRINTER
    DoCmd.OpenReport strReport, eView
    DoEvents
net.setDefaultPrinter ORIGINAL_PRINTER
Set net = Nothing
End Sub
Spero possa essere utile.
P.S.: Non l'ho testato, in quanto come ti dicevo la mia esigenza
non lo richiede, ma, errori banali di scrittura, deve funzionare.
Ciao
-- 
@Alex (Alessandro Baraldi)
---------------------------------------------------------------------------
http://www.sitocomune.com/
http://www.mantuanet.it/alessandro.baraldi/
---------------------------------------------------------------------------

 ha scritto nel messaggio
news:41ed567c$0$8204$5fc...@news.tiscali.it...


 eventualmente a tutti
Posta please !!!
R. 

 ha scritto nel messaggio
news:356lodF...@individual.net...

anche io sarei interessato al codice che usi