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
(Delphi DLL) Xero Get Payroll EmployeesDownload Xero employees information For more information, see https://developer.xero.com/documentation/payroll-api/employees
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Http, HttpResponse, JsonObject; ... procedure TForm1.Button1Click(Sender: TObject); var http: HCkHttp; jsonToken: HCkJsonObject; success: Boolean; resp: HCkHttpResponse; json: HCkJsonObject; EmployeeID: PWideChar; FirstName: PWideChar; LastName: PWideChar; v_Email: PWideChar; DateOfBirth: PWideChar; Gender: PWideChar; Phone: PWideChar; Mobile: PWideChar; StartDate: PWideChar; OrdinaryEarningsRateID: PWideChar; PayrollCalendarID: PWideChar; UpdatedDateUTC: PWideChar; Id: PWideChar; Status: PWideChar; ProviderName: PWideChar; DateTimeUTC: PWideChar; i: Integer; count_i: Integer; begin // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. http := CkHttp_Create(); jsonToken := CkJsonObject_Create(); success := CkJsonObject_LoadFile(jsonToken,'qa_data/tokens/xero-access-token.json'); if (success = False) then begin Memo1.Lines.Add(CkJsonObject__lastErrorText(jsonToken)); Exit; end; CkHttp_putAuthToken(http,CkJsonObject__stringOf(jsonToken,'access_token')); // Replace the value here with an actual tenant ID obtained from this example: // Get Xero Tenant IDs CkHttp_SetRequestHeader(http,'Xero-tenant-id','83299b9e-5747-4a14-a18a-a6c94f824eb7'); CkHttp_putAccept(http,'application/json'); resp := CkHttp_QuickRequest(http,'GET','https://api.xero.com/payroll.xro/1.0/Employees'); if (CkHttp_getLastMethodSuccess(http) <> True) then begin Memo1.Lines.Add(CkHttp__lastErrorText(http)); Exit; end; Memo1.Lines.Add('Response Status Code: ' + IntToStr(CkHttpResponse_getStatusCode(resp))); json := CkJsonObject_Create(); CkJsonObject_Load(json,CkHttpResponse__bodyStr(resp)); CkJsonObject_putEmitCompact(json,False); Memo1.Lines.Add(CkJsonObject__emit(json)); if (CkHttpResponse_getStatusCode(resp) <> 200) then begin Memo1.Lines.Add('Failed.'); CkHttpResponse_Dispose(resp); Exit; end; CkHttpResponse_Dispose(resp); // Sample response // (See the parsing code below..) // // Use the this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON // { // "Id": "796cae61-a7c3-425b-a621-372ab1f29460", // "Status": "OK", // "ProviderName": "Chilkat2222", // "DateTimeUTC": "\/Date(1587075322768)\/", // "Employees": [ // { // "EmployeeID": "f12e3b0b-4b4c-4523-b8c0-f481a07bfd13", // "FirstName": "James", // "LastName": "Lebron", // "Status": "ACTIVE", // "Email": "JL@madeup.email.com", // "DateOfBirth": "\/Date(492739200000+0000)\/", // "Gender": "M", // "Phone": "0400-000-123", // "Mobile": " 408-230-9732", // "StartDate": "\/Date(1548806400000+0000)\/", // "OrdinaryEarningsRateID": "e648f7bf-af43-41bc-98ea-e7ca94c3e3b1", // "PayrollCalendarID": "2cf6326a-d48b-41bf-bf36-7a73b42dd71b", // "UpdatedDateUTC": "\/Date(1587075120000+0000)\/" // }, // { // "EmployeeID": "d9f5979f-1de8-4040-aa1d-f1fdd327f893", // "FirstName": "Odette", // "LastName": "Garrison", // "Status": "ACTIVE", // "Email": "ogg@madeup.email.com", // "DateOfBirth": "\/Date(390528000000+0000)\/", // "Gender": "F", // "Phone": "9000 1234", // "StartDate": "\/Date(1554422400000+0000)\/", // "OrdinaryEarningsRateID": "e648f7bf-af43-41bc-98ea-e7ca94c3e3b1", // "PayrollCalendarID": "ec0f2f68-f4d1-4490-af70-78e5d7f5dcbd", // "UpdatedDateUTC": "\/Date(1587075120000+0000)\/" // }, // { // "EmployeeID": "22879fb4-d13b-46ed-9c07-e43aba25b576", // "FirstName": "Oliver", // "LastName": "Gray", // "Status": "ACTIVE", // "Email": "og@madeup.email.com", // "DateOfBirth": "\/Date(94176000000+0000)\/", // "Gender": "M", // "Phone": "0401 123 456", // "StartDate": "\/Date(1562112000000+0000)\/", // "OrdinaryEarningsRateID": "e648f7bf-af43-41bc-98ea-e7ca94c3e3b1", // "PayrollCalendarID": "2cf6326a-d48b-41bf-bf36-7a73b42dd71b", // "UpdatedDateUTC": "\/Date(1587075120000+0000)\/" // }, // { // "EmployeeID": "c4d82c18-b1a9-4b6c-982c-14b45b95c10a", // "FirstName": "Sally ", // "LastName": "Martin", // "Status": "ACTIVE", // "Email": "sm@madeup3993.com", // "DateOfBirth": "\/Date(659577600000+0000)\/", // "Gender": "F", // "Phone": "0400 123 456", // "StartDate": "\/Date(1577750400000+0000)\/", // "OrdinaryEarningsRateID": "e648f7bf-af43-41bc-98ea-e7ca94c3e3b1", // "PayrollCalendarID": "2cf6326a-d48b-41bf-bf36-7a73b42dd71b", // "UpdatedDateUTC": "\/Date(1587075120000+0000)\/" // }, // { // "EmployeeID": "e1a5eed0-721e-482d-b1f1-0b73506f26fb", // "FirstName": "Sonia", // "LastName": "Michaels", // "Status": "ACTIVE", // "Email": "som@madeup3993.com", // "DateOfBirth": "\/Date(727660800000+0000)\/", // "Gender": "F", // "Phone": "02 2345 6789", // "Mobile": " ", // "UpdatedDateUTC": "\/Date(1587075120000+0000)\/" // }, // { // "EmployeeID": "882587ac-1cfe-4f55-9b37-932b0705cd04", // "FirstName": "Tracy", // "LastName": "Green", // "Status": "ACTIVE", // "Email": "tg@madeup.email.com", // "DateOfBirth": "\/Date(712886400000+0000)\/", // "Gender": "F", // "Phone": "0402 123 456", // "StartDate": "\/Date(1556755200000+0000)\/", // "OrdinaryEarningsRateID": "e648f7bf-af43-41bc-98ea-e7ca94c3e3b1", // "PayrollCalendarID": "ec0f2f68-f4d1-4490-af70-78e5d7f5dcbd", // "UpdatedDateUTC": "\/Date(1587075120000+0000)\/" // } // ] // } Id := CkJsonObject__stringOf(json,'Id'); Status := CkJsonObject__stringOf(json,'Status'); ProviderName := CkJsonObject__stringOf(json,'ProviderName'); DateTimeUTC := CkJsonObject__stringOf(json,'DateTimeUTC'); i := 0; count_i := CkJsonObject_SizeOfArray(json,'Employees'); while i < count_i do begin CkJsonObject_putI(json,i); EmployeeID := CkJsonObject__stringOf(json,'Employees[i].EmployeeID'); FirstName := CkJsonObject__stringOf(json,'Employees[i].FirstName'); LastName := CkJsonObject__stringOf(json,'Employees[i].LastName'); Status := CkJsonObject__stringOf(json,'Employees[i].Status'); v_Email := CkJsonObject__stringOf(json,'Employees[i].Email'); DateOfBirth := CkJsonObject__stringOf(json,'Employees[i].DateOfBirth'); Gender := CkJsonObject__stringOf(json,'Employees[i].Gender'); Phone := CkJsonObject__stringOf(json,'Employees[i].Phone'); Mobile := CkJsonObject__stringOf(json,'Employees[i].Mobile'); StartDate := CkJsonObject__stringOf(json,'Employees[i].StartDate'); OrdinaryEarningsRateID := CkJsonObject__stringOf(json,'Employees[i].OrdinaryEarningsRateID'); PayrollCalendarID := CkJsonObject__stringOf(json,'Employees[i].PayrollCalendarID'); UpdatedDateUTC := CkJsonObject__stringOf(json,'Employees[i].UpdatedDateUTC'); i := i + 1; end; CkHttp_Dispose(http); CkJsonObject_Dispose(jsonToken); CkJsonObject_Dispose(json); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.