Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(MFC) SugarCRM Filtering RecordsExport records and filter.
#include <CkRest.h> #include <CkJsonObject.h> #include <CkStringBuilder.h> void ChilkatSample(void) { CkString strOut; CkRest rest; bool success; success = rest.Connect("your.site.domain",443,true,true); if (success != true) { strOut.append(rest.lastErrorText()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } rest.AddHeader("Cache-Control","no-cache"); rest.AddHeader("OAuth-Token","<access_token>"); // The following code creates the JSON request body. // The JSON created by this code is shown below. CkJsonObject jsonReq; jsonReq.UpdateString("filter[0].$or[0].name.$starts","A"); jsonReq.UpdateString("filter[0].$or[1].name.$starts","b"); jsonReq.UpdateNumber("max_num","2"); jsonReq.UpdateNumber("offset","0"); jsonReq.UpdateString("fields","id"); jsonReq.UpdateString("order_by","date_entered"); jsonReq.UpdateBool("favorites",false); jsonReq.UpdateBool("my_items",false); // The JSON request body created by the above code: // { // "filter": [ // { // "$or": [ // { // "name": { // "$starts": "A" // } // }, // { // "name": { // "$starts": "b" // } // } // ] // } // ], // "max_num": 2, // "offset": 0, // "fields": "id", // "order_by": "date_entered", // "favorites": false, // "my_items": false // } CkStringBuilder sbReq; jsonReq.EmitSb(sbReq); rest.AddHeader("Content-Type","application/json"); CkStringBuilder sbJson; success = rest.FullRequestSb("POST","/rest/v10/Accounts/filter",sbReq,sbJson); if (success != true) { strOut.append(rest.lastErrorText()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } if (rest.get_ResponseStatusCode() != 200) { strOut.append("Received error response code: "); strOut.appendInt(rest.get_ResponseStatusCode()); strOut.append("\r\n"); strOut.append("Response body:"); strOut.append("\r\n"); strOut.append(sbJson.getAsString()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } CkJsonObject json; json.LoadSb(sbJson); // The following code parses the JSON response. // A sample JSON response is shown below the sample code. int next_offset; int i; int count_i; const char *id = 0; const char *date_modified = 0; const char *v_module = 0; next_offset = json.IntOf("next_offset"); i = 0; count_i = json.SizeOfArray("records"); while (i < count_i) { json.put_I(i); id = json.stringOf("records[i].id"); date_modified = json.stringOf("records[i].date_modified"); v_module = json.stringOf("records[i]._module"); i = i + 1; } // A sample JSON response body that is parsed by the above code: // { // "next_offset": 2, // "records": [ // { // "id": "f16760a4-3a52-f77d-1522-5703ca28925f", // "date_modified": "2016-04-05T10:23:28-04:00", // "_acl": { // "fields": {} // }, // "_module": "Accounts" // }, // { // "id": "ec409fbb-2b22-4f32-7fa1-5703caf78dc3", // "date_modified": "2016-04-05T10:23:28-04:00", // "_acl": { // "fields": {} // }, // "_module": "Accounts" // } // ] // } strOut.append("Example Completed."); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); } |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.