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
(Visual FoxPro) Extract PDF from General Ledger Transactions XMLSee more Office365 ExamplesDemonstrates how to extract the base64 data representing a PDF file from a General Ledger Transactions XML.
LOCAL loXml LOCAL lnSuccess LOCAL lcPdfFilename LOCAL loBinaryDataElem * The General Ledger Transactions XML contains the following: * <?xml version="1.0" encoding="utf-8" ?> * <eExact xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="eExact-XML.xsd"> * <GLTransactions> * <GLTransaction entry="100000095"> * <TransactionType number="20" /> * <Journal type="20" code="VK"> * <Description termid="90003">Verkopen</Description> * <GLAccount type="20" code="400000" /> * <Currency code="EUR" /> * </Journal> * <Date>2022-04-05</Date> * <Document> * <Subject>100000095</Subject> * <DocumentType number="10" /> * <Account code="0001" status="C" /> * <Amount> * <Currency code="EUR" /> * <Value>1382.91</Value> * </Amount> * <References> * <InvoiceNumber>100000095</InvoiceNumber> * </References> * <Attachments> * <Attachment> * <Name>F_100000095.PDF</Name> * <BinaryData>BASE64_ENCODED_PDF_BYTES_HERE</BinaryData> * </Attachment> * </Attachments> * </Document> * <GLTransactionLine type="20" status="20" line="0" linetype="0"> * <Date>2022-04-05</Date> * <VATType>S</VATType> * <FinYear number="2022" /> * <FinPeriod number="4" /> * <GLAccount type="20" code="400000" /> * <Description>100000095</Description> * <DueDate>2022-05-05</DueDate> * <Account code="0001" status="C"> * <Name>90 Degrees & co</Name> * </Account> * <Amount> * <Currency code="EUR" /> * <Value>1382.91</Value> * </Amount> * <ForeignAmount> * <Currency code="EUR" /> * <Value>1382.91</Value> * <Rate>1</Rate> * </ForeignAmount> * <References> * <InvoiceNumber>100000095</InvoiceNumber> * </References> * </GLTransactionLine> * <PaymentTerms> * <PaymentTerm entry="100000095" type="20" line="0" paymentMethod="B"> * <Description>20</Description> * <GLAccount type="20" code="400000" /> * <Amount> * <Currency code="EUR" /> * <Debit>1382.91</Debit> * <Credit>0</Credit> * </Amount> * <ForeignAmount> * <Currency code="EUR" /> * <Debit>1382.91</Debit> * <Credit>0</Credit> * </ForeignAmount> * <Reference /> * <YourRef /> * <InvoiceNumber>100000095</InvoiceNumber> * <InvoiceDate>2022-04-05</InvoiceDate> * <DueDate>2022-05-05</DueDate> * <PaymentDate>2022-05-05</PaymentDate> * </PaymentTerm> * </PaymentTerms> * </GLTransaction> * </GLTransactions> * </eExact> * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Xml') loXml = CreateObject('Chilkat.Xml') lnSuccess = loXml.LoadXmlFile("c:/temp/example.xml") IF (lnSuccess = 0) THEN ? loXml.LastErrorText RELEASE loXml CANCEL ENDIF lcPdfFilename = loXml.GetChildContent("GLTransactions|GLTransaction|Document|Attachments|Attachment|Name") IF (loXml.LastMethodSuccess = 0) THEN ? "No XML element at the given path." RELEASE loXml CANCEL ENDIF ? "PDF Filename = " + lcPdfFilename loBinaryDataElem = loXml.GetChildWithTag("GLTransactions|GLTransaction|Document|Attachments|Attachment|BinaryData") IF (loXml.LastMethodSuccess = 0) THEN ? "No XML element at the given path." RELEASE loXml CANCEL ENDIF * Decode the base64 data and save to a file. lnSuccess = loBinaryDataElem.SaveBinaryContent(lcPdfFilename,0,0,"") IF (lnSuccess = 0) THEN ? loBinaryDataElem.LastErrorText ELSE ? "Success." ENDIF RELEASE loBinaryDataElem RELEASE loXml |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.