Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(VBScript) Extract PDF Invoice from FatturaElettronica XMLDemonstrates how to extract a PDF attachment from an XML invoice (fattura elettronica) -- ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2
Dim fso, outFile Set fso = CreateObject("Scripting.FileSystemObject") 'Create a Unicode (utf-16) output text file. Set outFile = fso.CreateTextFile("output.txt", True, True) ' The XML invoice is shown at the bottom of this example. ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.Xml") set xml = CreateObject("Chilkat.Xml") success = xml.LoadXmlFile("qa_data/xml/fatture_invoice.xml") If (success <> 1) Then outFile.WriteLine(xml.LastErrorText) WScript.Quit End If ' Get the Base64 PDF content. ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.StringBuilder") set sb = CreateObject("Chilkat.StringBuilder") success = xml.GetChildContentSb("FatturaElettronicaBody|Allegati|Attachment",sb) If (success <> 1) Then outFile.WriteLine(xml.LastErrorText) WScript.Quit End If ' Decode the base64 ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.BinData") set bd = CreateObject("Chilkat.BinData") success = bd.AppendEncodedSb(sb,"base64") ' Save to a PDF file. success = bd.WriteFile("qa_output/fattura.pdf") ' This is the XML invoice loaded from fatture_invoice.xml ' It is populated with junk information. ' <?xml version="1.0" encoding="utf-8"?> ' <nr1:FatturaElettronica versione="FPR12" xmlns:nr1="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2"> ' <FatturaElettronicaHeader> ' <DatiTrasmissione> ' <IdTrasmittente> ' <IdPaese>IT</IdPaese> ' <IdCodice>9999999999</IdCodice> ' </IdTrasmittente> ' <ProgressivoInvio>01E99</ProgressivoInvio> ' <FormatoTrasmissione>FPR99</FormatoTrasmissione> ' <CodiceDestinatario>0000000</CodiceDestinatario> ' <PECDestinatario>fatture.elettroniche@pec.something.it</PECDestinatario> ' </DatiTrasmissione> ' <CedentePrestatore> ' <DatiAnagrafici> ' <IdFiscaleIVA> ' <IdPaese>IT</IdPaese> ' <IdCodice>9999999999</IdCodice> ' </IdFiscaleIVA> ' <CodiceFiscale>9999999999</CodiceFiscale> ' <Anagrafica> ' <Denominazione>Chilkat S.p.A.</Denominazione> ' </Anagrafica> ' <RegimeFiscale>RF01</RegimeFiscale> ' </DatiAnagrafici> ' <Sede> ' <Indirizzo>Via Xyzabcde, 99/2</Indirizzo> ' <CAP>40127</CAP> ' <Comune>Bologna</Comune> ' <Provincia>BO</Provincia> ' <Nazione>IT</Nazione> ' </Sede> ' <IscrizioneREA> ' <Ufficio>BO</Ufficio> ' <NumeroREA>9999999</NumeroREA> ' <CapitaleSociale>9999999999.00</CapitaleSociale> ' <SocioUnico>SM</SocioUnico> ' <StatoLiquidazione>LN</StatoLiquidazione> ' </IscrizioneREA> ' </CedentePrestatore> ' <CessionarioCommittente> ' <DatiAnagrafici> ' <IdFiscaleIVA> ' <IdPaese>IT</IdPaese> ' <IdCodice>9999999999</IdCodice> ' </IdFiscaleIVA> ' <Anagrafica> ' <Denominazione>GRUPPO ABCDEF SRL</Denominazione> ' </Anagrafica> ' </DatiAnagrafici> ' <Sede> ' <Indirizzo>VIALE ABCDEF 1</Indirizzo> ' <CAP>73010</CAP> ' <Comune>XYZ</Comune> ' <Provincia>LE</Provincia> ' <Nazione>IT</Nazione> ' </Sede> ' </CessionarioCommittente> ' </FatturaElettronicaHeader> ' <FatturaElettronicaBody> ' <DatiGenerali> ' <DatiGeneraliDocumento> ' <TipoDocumento>ABC04</TipoDocumento> ' <Divisa>EUR</Divisa> ' <Data>2018-12-31</Data> ' <Numero>9999999999</Numero> ' <ImportoTotaleDocumento>354.71</ImportoTotaleDocumento> ' <Causale>RIFERIMENTO TICKET 999999</Causale> ' <Causale>FATTURA NR. 9999999999 DEL 30.09.2018</Causale> ' <Causale>DIFFERENZA PREZZO</Causale> ' <Causale>RIF. FORN. ABCDEF clam</Causale> ' <Causale>RIF. CLIENTE: ABCDEF</Causale> ' <Causale>XYZ - ABCDEF</Causale> ' <Causale>Assolve gli obblighi di ... in L.27/2012</Causale> ' <Causale>Contributo ambientale ABCDEF assolto</Causale> ' </DatiGeneraliDocumento> ' <DatiFattureCollegate> ' <IdDocumento>9999999999</IdDocumento> ' <Data>2018-09-30</Data> ' </DatiFattureCollegate> ' </DatiGenerali> ' <DatiBeniServizi> ' <DettaglioLinee> ' <NumeroLinea>1</NumeroLinea> ' <CodiceArticolo> ' <CodiceTipo>Codice Art. ABC</CodiceTipo> ' <CodiceValore>9999999999</CodiceValore> ' </CodiceArticolo> ' <CodiceArticolo> ' <CodiceTipo>EAN</CodiceTipo> ' <CodiceValore>9999999999</CodiceValore> ' </CodiceArticolo> ' <Descrizione>ABC 123 XY</Descrizione> ' <Quantita>1.00</Quantita> ' <UnitaMisura>NR</UnitaMisura> ' <PrezzoUnitario>72.57000000</PrezzoUnitario> ' <PrezzoTotale>72.57</PrezzoTotale> ' <AliquotaIVA>4.00</AliquotaIVA> ' <AltriDatiGestionali> ' <TipoDato>DP</TipoDato> ' <RiferimentoTesto>999999999 GRUPPO BLAH BLAH BLAH PL(LE)</RiferimentoTesto> ' </AltriDatiGestionali> ' </DettaglioLinee> ' <DettaglioLinee> ' <NumeroLinea>2</NumeroLinea> ' <CodiceArticolo> ' <CodiceTipo>Codice Art. ABCDEF</CodiceTipo> ' <CodiceValore>9999999999</CodiceValore> ' </CodiceArticolo> ' <CodiceArticolo> ' <CodiceTipo>EAN</CodiceTipo> ' <CodiceValore>9999999999</CodiceValore> ' </CodiceArticolo> ' <Descrizione>ABCDEF XYZ MID</Descrizione> ' <Quantita>1.00</Quantita> ' <UnitaMisura>NR</UnitaMisura> ' <PrezzoUnitario>268.50000000</PrezzoUnitario> ' <PrezzoTotale>268.50</PrezzoTotale> ' <AliquotaIVA>4.00</AliquotaIVA> ' <AltriDatiGestionali> ' <TipoDato>DP</TipoDato> ' <RiferimentoTesto>999999999 GRUPPO BLAH BLAH BLAH PL(LE)</RiferimentoTesto> ' </AltriDatiGestionali> ' </DettaglioLinee> ' <DatiRiepilogo> ' <AliquotaIVA>4.00</AliquotaIVA> ' <Arrotondamento>0.00</Arrotondamento> ' <ImponibileImporto>341.07</ImponibileImporto> ' <Imposta>13.64</Imposta> ' <EsigibilitaIVA>I</EsigibilitaIVA> ' </DatiRiepilogo> ' </DatiBeniServizi> ' <DatiPagamento> ' <CondizioniPagamento>XX02</CondizioniPagamento> ' <DettaglioPagamento> ' <ModalitaPagamento>XX05</ModalitaPagamento> ' <DataScadenzaPagamento>2018-11-30</DataScadenzaPagamento> ' <ImportoPagamento>354.71</ImportoPagamento> ' </DettaglioPagamento> ' </DatiPagamento> ' <Allegati> ' <NomeAttachment>9999_2018_2130009999.pdf</NomeAttachment> ' <FormatoAttachment>pdf</FormatoAttachment> ' <DescrizioneAttachment>In allegato documento non valido ai fini fiscali</DescrizioneAttachment> ' <Attachment>JVBERi0xLjMNCiXi48/TDQoyIDAgb ... ' ... BASE64 PDF DATA HERE ... ' ... BASE64 PDF DATA HERE ... ' ... BASE64 PDF DATA HERE ... ' ... BASE64 PDF DATA HERE ... ' ... BASE64 PDF DATA HERE ... ' ... BASE64 PDF DATA HERE ... ' AAAAAAAAAAAAAAAAAAA=</Attachment> ' </Allegati> ' </FatturaElettronicaBody> ' </nr1:FatturaElettronica> outFile.Close |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.