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
(Unicode C++) SugarCRM Filtering RecordsExport records and filter.
#include <CkRestW.h> #include <CkJsonObjectW.h> #include <CkStringBuilderW.h> void ChilkatSample(void) { CkRestW rest; bool success; success = rest.Connect(L"your.site.domain",443,true,true); if (success != true) { wprintf(L"%s\n",rest.lastErrorText()); return; } rest.AddHeader(L"Cache-Control",L"no-cache"); rest.AddHeader(L"OAuth-Token",L"<access_token>"); // The following code creates the JSON request body. // The JSON created by this code is shown below. CkJsonObjectW jsonReq; jsonReq.UpdateString(L"filter[0].$or[0].name.$starts",L"A"); jsonReq.UpdateString(L"filter[0].$or[1].name.$starts",L"b"); jsonReq.UpdateNumber(L"max_num",L"2"); jsonReq.UpdateNumber(L"offset",L"0"); jsonReq.UpdateString(L"fields",L"id"); jsonReq.UpdateString(L"order_by",L"date_entered"); jsonReq.UpdateBool(L"favorites",false); jsonReq.UpdateBool(L"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 // } CkStringBuilderW sbReq; jsonReq.EmitSb(sbReq); rest.AddHeader(L"Content-Type",L"application/json"); CkStringBuilderW sbJson; success = rest.FullRequestSb(L"POST",L"/rest/v10/Accounts/filter",sbReq,sbJson); if (success != true) { wprintf(L"%s\n",rest.lastErrorText()); return; } if (rest.get_ResponseStatusCode() != 200) { wprintf(L"Received error response code: %d\n",rest.get_ResponseStatusCode()); wprintf(L"Response body:\n"); wprintf(L"%s\n",sbJson.getAsString()); return; } CkJsonObjectW 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 wchar_t *id = 0; const wchar_t *date_modified = 0; const wchar_t *v_module = 0; next_offset = json.IntOf(L"next_offset"); i = 0; count_i = json.SizeOfArray(L"records"); while (i < count_i) { json.put_I(i); id = json.stringOf(L"records[i].id"); date_modified = json.stringOf(L"records[i].date_modified"); v_module = json.stringOf(L"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" // } // ] // } wprintf(L"Example Completed.\n"); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.