Page 1 of 1

aprire un Pdf dalla fattura elettronica

Posted: Wed Dec 02, 2020 9:38 am
by Silvio.Falconi
Come tutti sapete nella fattura elettronica c'è la possibilità di avere un pdf tra gli apici <Attachment></Attachment>
io ho provato a prendere tutto il testo ma poi non ho capito come fare per creare un pdf con il testo salvato nella variabile cPdf

mentre il xml riesco a far vedere la fattura in tutti e due i tipi ( dell'Agenzia entrate e in modalita fattura)

esempio
naturalmente non ho potuto inserire qui tutto il testo perchè non me lo accetta troppo grande

Code: Select all

-<Allegati> 
<NomeAttachment>Fattura_n_000246-2018_del_02-10-2018.pdf</NomeAttachment>
 <FormatoAttachment>PDF</FormatoAttachment> 
<DescrizioneAttachment>Fattura n° 000246/2018 del 02/10/2018</DescrizioneAttachment> 

<Attachment>

JVBERi0xLjMKJbe+raoKMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwovUGFnZXMgMiAwIFIKPj4KZW5kb2JqCjIgMCBvYmoKPDwKL1R5cGUgL1BhZ2VzCi9LaWRzIFsgNCAwIFIgXQovQ2919GCg==




</Attachment> </Allegati> </FatturaElettronicaBody> </p:FatturaElettronica>

Re: aprire un Pdf dalla fattura elettronica

Posted: Wed Dec 02, 2020 3:01 pm
by solving
ciao
io uso il seguente metodo :

dove :

cNome := "64_Fat_1234.PDF"
cX := "PDF Allegato, Doc. Non Valido ai Fini Fiscali"

cFile := "" contiene il file codificato in Base64 ( in pratica prendo il .PDF e lo converto in Base64 sempre con estensione .PDF )
esempio il mio .pdf è fat_1234.pdf lo converto in Base64 con nome 64_fat_1234.pdf

ctxt := MEMOREAD( cFile )


cRiga := "<Allegati>" + CRLF
cRiga += "<NomeAttachment>" + cNome + "</NomeAttachment>" + CRLF
cRiga += "<FormatoAttachment>" + "PDF" + "</FormatoAttachment>" + CRLF
cRiga += "<DescrizioneAttachment>" + cX + "</DescrizioneAttachment>" + CRLF
cRiga += "<Attachment>" + cTxt + "</Attachment>" + CRLF
cRiga += "</Allegati>" + CRLF

FWRITE( nH, cRiga )

il comando FWRITE è quello che scrive il file IT...... .XML

Re: aprire un Pdf dalla fattura elettronica

Posted: Wed Dec 02, 2020 4:51 pm
by MaxP
Ciao,

per leggere un allegato PDF da un file XMl devi leggere tutto il
contenuto del nodo <Attachment>, convertirlo con la
funzione CMIMEDEC e poi salvare il risultato in un file con estensione .PDF

Ad esempio se nella variabile cBuf c'è il contenuto <Attachment>
cBuf := CMIMEDEC( cBuf )

Buona serata
Massimo

Re: aprire un Pdf dalla fattura elettronica

Posted: Thu Dec 03, 2020 10:20 am
by Silvio.Falconi
MaxP wrote:Ciao,

per leggere un allegato PDF da un file XMl devi leggere tutto il
contenuto del nodo <Attachment>, convertirlo con la
funzione CMIMEDEC e poi salvare il risultato in un file con estensione .PDF

Ad esempio se nella variabile cBuf c'è il contenuto <Attachment>
cBuf := CMIMEDEC( cBuf )

Buona serata
Massimo
CMIMEDEC è di fwh o Harbour ?

Re: aprire un Pdf dalla fattura elettronica

Posted: Thu Dec 03, 2020 10:20 am
by Silvio.Falconi
solving wrote:ciao
io uso il seguente metodo :

dove :

cNome := "64_Fat_1234.PDF"
cX := "PDF Allegato, Doc. Non Valido ai Fini Fiscali"

cFile := "" contiene il file codificato in Base64 ( in pratica prendo il .PDF e lo converto in Base64 sempre con estensione .PDF )
esempio il mio .pdf è fat_1234.pdf lo converto in Base64 con nome 64_fat_1234.pdf

ctxt := MEMOREAD( cFile )


cRiga := "<Allegati>" + CRLF
cRiga += "<NomeAttachment>" + cNome + "</NomeAttachment>" + CRLF
cRiga += "<FormatoAttachment>" + "PDF" + "</FormatoAttachment>" + CRLF
cRiga += "<DescrizioneAttachment>" + cX + "</DescrizioneAttachment>" + CRLF
cRiga += "<Attachment>" + cTxt + "</Attachment>" + CRLF
cRiga += "</Allegati>" + CRLF

FWRITE( nH, cRiga )

il comando FWRITE è quello che scrive il file IT...... .XML
ma questo serbve per scrivere un pdf nel file xml ?
interessante anche

Re: aprire un Pdf dalla fattura elettronica

Posted: Fri Dec 04, 2020 9:57 am
by Silvio.Falconi
MaxP wrote:Ciao,

per leggere un allegato PDF da un file XMl devi leggere tutto il
contenuto del nodo <Attachment>, convertirlo con la
funzione CMIMEDEC e poi salvare il risultato in un file con estensione .PDF

Ad esempio se nella variabile cBuf c'è il contenuto <Attachment>
cBuf := CMIMEDEC( cBuf )

Buona serata
Massimo

scusa massim oin una fattura ho trovato il foglio di stile nell <Attachment>
come faccio a salvarlo temporaneamente ?
cioè ho provato con HB_BASE64DECODE e non va