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
(VB.NET UWP/WinRT) JSON FindRecord ExampleDemonstrates the FindRecord method for searching an array of JSON records. The data used in this example is available at JSON sample data for FindRecord. Note: This example requires Chilkat v9.5.0.63 or later.
' Note: This example requires Chilkat v9.5.0.63 or later. Dim json As New Chilkat.JsonObject Dim success As Boolean = json.LoadFile("qa_data/json/qb_accounts.json") ' A sample of the content of qb_accounts.json is shown at the bottom of this example. ' The goal is to search the array of Account records to return the 1st match ' Find the account with the name "Advertising" Dim arrayPath As String = "QueryResponse.Account" Dim relativePath As String = "Name" Dim value As String = "Advertising" Dim caseSensitive As Boolean = True Dim accountRec As Chilkat.JsonObject = json.FindRecord(arrayPath,relativePath,value,caseSensitive) If (json.LastMethodSuccess <> True) Then Debug.WriteLine("Record not found.") Exit Sub End If ' The accountRec should contain this: ' { ' "Name": "Advertising", ' "SubAccount": false, ' "FullyQualifiedName": "Advertising", ' "Active": true, ' "Classification": "Expense", ' "AccountType": "Expense", ' "AccountSubType": "AdvertisingPromotional", ' "CurrentBalance": 0, ' "CurrentBalanceWithSubAccounts": 0, ' "CurrencyRef": { ' "value": "USD", ' "name": "United States Dollar" ' }, ' "domain": "QBO", ' "sparse": false, ' "Id": "7", ' "SyncToken": "0", ' "MetaData": { ' "CreateTime": "2016-09-09T14:42:07-07:00", ' "LastUpdatedTime": "2016-09-09T14:42:07-07:00" ' } ' } Debug.WriteLine("FullyQualifiedName: " & accountRec.StringOf("FullyQualifiedName")) Debug.WriteLine("AccountType: " & accountRec.StringOf("AccountType")) Debug.WriteLine("AccountSubType: " & accountRec.StringOf("AccountSubType")) Debug.WriteLine("----") ' ------------------------------------------------------------------ ' Find the first account where the currency is USD relativePath = "CurrencyRef.value" value = "USD" caseSensitive = True accountRec = json.FindRecord(arrayPath,relativePath,value,caseSensitive) If (json.LastMethodSuccess <> True) Then Debug.WriteLine("Record not found.") Exit Sub End If Debug.WriteLine("Name: " & accountRec.StringOf("Name")) Debug.WriteLine("CurrencyRef.name: " & accountRec.StringOf("CurrencyRef.name")) Debug.WriteLine("----") ' ------------------------------------------------------------------ ' Find the first account with "receivable" in the name (case insensitive) relativePath = "Name" value = "*receivable*" caseSensitive = False accountRec = json.FindRecord(arrayPath,relativePath,value,caseSensitive) If (json.LastMethodSuccess <> True) Then Debug.WriteLine("Record not found.") Exit Sub End If Debug.WriteLine("Name: " & accountRec.StringOf("Name")) Debug.WriteLine("----") ' ----------------------------------------------------------------- ' qb_accounts.json contains this data ' ' { ' "QueryResponse": { ' "Account": [ ' { ' "Name": "Accounts Payable (A/P)", ' "SubAccount": false, ' "Description": "Description added during update.", ' "FullyQualifiedName": "Accounts Payable (A/P)", ' "Active": true, ' "Classification": "Liability", ' "AccountType": "Accounts Payable", ' "AccountSubType": "AccountsPayable", ' "CurrentBalance": -1602.67, ' "CurrentBalanceWithSubAccounts": -1602.67, ' "CurrencyRef": { ' "value": "USD", ' "name": "United States Dollar" ' }, ' "domain": "QBO", ' "sparse": false, ' "Id": "33", ' "SyncToken": "1", ' "MetaData": { ' "CreateTime": "2016-09-10T10:12:02-07:00", ' "LastUpdatedTime": "2016-10-24T16:41:39-07:00" ' } ' }, ' { ' "Name": "Accounts Receivable (A/R)", ' "SubAccount": false, ' "FullyQualifiedName": "Accounts Receivable (A/R)", ' "Active": true, ' "Classification": "Asset", ' "AccountType": "Accounts Receivable", ' "AccountSubType": "AccountsReceivable", ' "CurrentBalance": 5281.52, ' "CurrentBalanceWithSubAccounts": 5281.52, ' "CurrencyRef": { ' "value": "USD", ' "name": "United States Dollar" ' }, ' "domain": "QBO", ' "sparse": false, ' "Id": "84", ' "SyncToken": "0", ' "MetaData": { ' "CreateTime": "2016-09-14T14:49:29-07:00", ' "LastUpdatedTime": "2016-09-17T13:16:17-07:00" ' } ' }, ' { ' "Name": "Advertising", ' "SubAccount": false, ' "FullyQualifiedName": "Advertising", ' "Active": true, ' "Classification": "Expense", ' "AccountType": "Expense", ' "AccountSubType": "AdvertisingPromotional", ' "CurrentBalance": 0, ' "CurrentBalanceWithSubAccounts": 0, ' "CurrencyRef": { ' "value": "USD", ' "name": "United States Dollar" ' }, ' "domain": "QBO", ' "sparse": false, ' "Id": "7", ' "SyncToken": "0", ' "MetaData": { ' "CreateTime": "2016-09-09T14:42:07-07:00", ' "LastUpdatedTime": "2016-09-09T14:42:07-07:00" ' } ' }, ' { ' "Name": "Arizona Dept. of Revenue Payable", ' "SubAccount": false, ' "FullyQualifiedName": "Arizona Dept. of Revenue Payable", ' "Active": true, ' "Classification": "Liability", ' "AccountType": "Other Current Liability", ' "AccountSubType": "GlobalTaxPayable", ' "CurrentBalance": 0, ' "CurrentBalanceWithSubAccounts": 0, ' "CurrencyRef": { ' "value": "USD", ' "name": "United States Dollar" ' }, ' "domain": "QBO", ' "sparse": false, ' "Id": "89", ' "SyncToken": "0", ' "MetaData": { ' "CreateTime": "2016-09-16T12:17:04-07:00", ' "LastUpdatedTime": "2016-09-17T13:05:01-07:00" ' } ' }, ' { ' "Name": "Automobile", ' "SubAccount": false, ' "FullyQualifiedName": "Automobile", ' "Active": true, ' "Classification": "Expense", ' "AccountType": "Expense", ' "AccountSubType": "Auto", ' "CurrentBalance": 0, ' "CurrentBalanceWithSubAccounts": 0, ' "CurrencyRef": { ' "value": "USD", ' "name": "United States Dollar" ' }, ' "domain": "QBO", ' "sparse": false, ' "Id": "55", ' "SyncToken": "0", ' "MetaData": { ' "CreateTime": "2016-09-14T10:15:53-07:00", ' "LastUpdatedTime": "2016-09-14T10:16:05-07:00" ' } ' }, ' ... ' |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.