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
(DataFlex) Aruba Fatturazione Elettronica CreateTransmissionRequestListCreation of "Financial Communications" transmission request in zip format. For more information, see https://fatturazioneelettronica.aruba.it/apidoc/docs_EN.html#_createtransmissionrequestlist
Use ChilkatAx-win32.pkg Procedure Test Handle hoHttp Boolean iSuccess Handle hoZip Boolean iRecurse Variant vBdZip Handle hoBdZip String sZipAsBase64 Variant vJson Handle hoJson Variant vResp Handle hoResp Variant vSbResponseBody Handle hoSbResponseBody Handle hoJResp Integer iRespStatusCode String sFileName String sErrorCode String sErrorDescription String sRequestID Integer i Integer iCount_i String sTemp1 Boolean bTemp1 // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatHttp)) To hoHttp If (Not(IsComObjectCreated(hoHttp))) Begin Send CreateComObject of hoHttp End // Implements the following CURL command: // curl -X POST https://ws.fatturazioneelettronica.aruba.it/services/ClientRequest/CreateTransmissionRequestList \ // -H "Accept: application/json" \ // -H "Content-Type: application/json;charset=UTF-8" \ // -d '{ // "userName" : "ARUBA0000", // "password" : "ArubaPwd", // "userID" : "ARUBA0000", // "comunicationType" : "LI", // "dataFile" : "dGVzdA==" // }' // The dataFile must contain a Zip file, containing xml files which conform to the Revenue Agency specifications. // The archive file must be Base64 codified and contain a CADES-based electronic signature. Get Create (RefClass(cComChilkatZip)) To hoZip If (Not(IsComObjectCreated(hoZip))) Begin Send CreateComObject of hoZip End // Initialize the zip object. Because we will never actually write a zip file to the filesystem, // the filepath passed to NewZip does not matter. Get ComNewZip Of hoZip "x.zip" To iSuccess // Append references to XML files to the zip object in memory. Move False To iRecurse Get ComAppendFiles Of hoZip "qa_data/aruba/*.xml" iRecurse To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoZip To sTemp1 Showln sTemp1 Procedure_Return End // Write the zip archive into the bdZip object. Get Create (RefClass(cComChilkatBinData)) To hoBdZip If (Not(IsComObjectCreated(hoBdZip))) Begin Send CreateComObject of hoBdZip End Get pvComObject of hoBdZip to vBdZip Get ComWriteBd Of hoZip vBdZip To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoZip To sTemp1 Showln sTemp1 Procedure_Return End // Get the zip in base64 format. Get ComGetEncoded Of hoBdZip "base64" To sZipAsBase64 // Use the following online tool to generate HTTP code from a CURL command // Convert a cURL Command to HTTP Source Code // Use this online tool to generate code from sample JSON: // Generate Code to Create JSON // The following JSON is sent in the request body. // { // "userName": "ARUBA0000", // "password": "ArubaPwd", // "userID": "ARUBA0000", // "comunicationType": "LI", // "dataFile": "dGVzdA==" // } Get Create (RefClass(cComChilkatJsonObject)) To hoJson If (Not(IsComObjectCreated(hoJson))) Begin Send CreateComObject of hoJson End Get ComUpdateString Of hoJson "userName" "ARUBA0000" To iSuccess Get ComUpdateString Of hoJson "password" "ArubaPwd" To iSuccess Get ComUpdateString Of hoJson "userID" "ARUBA0000" To iSuccess Get ComUpdateString Of hoJson "comunicationType" "LI" To iSuccess Get ComUpdateString Of hoJson "dataFile" sZipAsBase64 To iSuccess Send ComSetRequestHeader To hoHttp "Content-Type" "application/json;charset=UTF-8" Send ComSetRequestHeader To hoHttp "Accept" "application/json" Get pvComObject of hoJson to vJson Get ComPostJson3 Of hoHttp "https://ws.fatturazioneelettronica.aruba.it/services/ClientRequest/CreateTransmissionRequestList" "application/json" vJson To vResp If (IsComObject(vResp)) Begin Get Create (RefClass(cComChilkatHttpResponse)) To hoResp Set pvComObject Of hoResp To vResp End Get ComLastMethodSuccess Of hoHttp To bTemp1 If (bTemp1 = False) Begin Get ComLastErrorText Of hoHttp To sTemp1 Showln sTemp1 Procedure_Return End Get Create (RefClass(cComChilkatStringBuilder)) To hoSbResponseBody If (Not(IsComObjectCreated(hoSbResponseBody))) Begin Send CreateComObject of hoSbResponseBody End Get pvComObject of hoSbResponseBody to vSbResponseBody Get ComGetBodySb Of hoResp vSbResponseBody To iSuccess Get Create (RefClass(cComChilkatJsonObject)) To hoJResp If (Not(IsComObjectCreated(hoJResp))) Begin Send CreateComObject of hoJResp End Get pvComObject of hoSbResponseBody to vSbResponseBody Get ComLoadSb Of hoJResp vSbResponseBody To iSuccess Set ComEmitCompact Of hoJResp To False Showln "Response Body:" Get ComEmit Of hoJResp To sTemp1 Showln sTemp1 Get ComStatusCode Of hoResp To iRespStatusCode Showln "Response Status Code = " iRespStatusCode If (iRespStatusCode >= 400) Begin Showln "Response Header:" Get ComHeader Of hoResp To sTemp1 Showln sTemp1 Showln "Failed." Send Destroy of hoResp Procedure_Return End Send Destroy of hoResp // Sample JSON response: // (Sample code for parsing the JSON response is shown below) // { // "errorCode": "", // "errorDescription": "", // "requestID": "C70WC0SIPQ1JISWQ", // "requestIDList": [ // { // "fileName": "ITADFSREETDSD_LI_0001.xml", // "requestID": "TXZWQPVYVFJHRUKN" // }, // { // "fileName": "ITADFSREETDSD_LI_0002.xml", // "requestID": "PRSGFITDHFPTJ8OO" // }, // { // "fileName": "ITADFSREETDSD_LI_0003.xml", // "requestID": "QNJ9E2MWGYGSM22Q" // } // ] // } // Sample code for parsing the JSON response... // Use the following online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON Get ComStringOf Of hoJResp "errorCode" To sErrorCode Get ComStringOf Of hoJResp "errorDescription" To sErrorDescription Get ComStringOf Of hoJResp "requestID" To sRequestID Move 0 To i Get ComSizeOfArray Of hoJResp "requestIDList" To iCount_i While (i < iCount_i) Set ComI Of hoJResp To i Get ComStringOf Of hoJResp "requestIDList[i].fileName" To sFileName Get ComStringOf Of hoJResp "requestIDList[i].requestID" To sRequestID Move (i + 1) To i Loop End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.