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
(Swift 3,4,5...) Xero Export Accounts to CSVDemonstrates how to export Accounts data to a CSV. Note: Requires Chilkat v9.5.0.64 or greater.
func chilkatTest() { // Note: Requires Chilkat v9.5.0.64 or greater. // This requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. let rest = CkoRest()! var success: Bool // Before sending REST API calls, the REST object needs to be // initialized for OAuth1. // See Xero 2-Legged OAuth1 Setup for sample code. // Assuming the REST object's OAuth1 authenticator is setup, and the initial // connection was made, we may now send REST HTTP requests.. // Get the full list of accounts. let sbXml = CkoStringBuilder()! success = rest.fullRequestNoBodySb("GET", uriPath: "/api.xro/2.0/Accounts", sb: sbXml) if success != true { print("\(rest.lastErrorText!)") return } // A 200 response is expected for actual success. if rest.responseStatusCode.intValue != 200 { print("\(sbXml.getAsString()!)") return } // Build a CSV containing a few Account fields. let csv = CkoCsv()! csv.hasColumnNames = true csv.setColumnName(0, columnName: "AccountID") csv.setColumnName(1, columnName: "Name") csv.setColumnName(2, columnName: "Code") csv.setColumnName(3, columnName: "EnablePaymentsToAccount") // Iterate over the accounts and build the CSV. var bAutoTrim: Bool = false let xml = CkoXml()! xml.loadSb(sbXml, autoTrim: bAutoTrim) var numAccounts: Int = xml.numChildren(at: "Accounts").intValue var i: Int = 0 while i < numAccounts { xml.i = i csv.setCellByName(i, columnName: "AccountID", content: xml.getChildContent("Accounts|Account[i]|AccountID")) csv.setCellByName(i, columnName: "Name", content: xml.getChildContent("Accounts|Account[i]|Name")) csv.setCellByName(i, columnName: "Code", content: xml.getChildContent("Accounts|Account[i]|Code")) csv.setCellByName(i, columnName: "EnablePaymentsToAccount", content: xml.getChildContent("Accounts|Account[i]|EnablePaymentsToAccount")) i = i + 1 } // Examine the CSV. print("\(csv.saveToString()!)") // Save the CSV to a file. csv.saveFile("qa_output/xero_accounts.csv") } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.