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) batchGet (Read Multiple Ranges)Reads multiple ranges from a Google Sheets spreadsheet in one GET request.
Use ChilkatAx-win32.pkg Procedure Test Handle hoJsonToken Boolean iSuccess Variant vReq Handle hoReq Handle hoHttp Variant vResp Handle hoResp Handle hoJson Integer i Integer iCount_i Integer j Integer iCount_j Integer k Integer iCount_k String sSpreadsheetId String sRange String sMajorDimension String sStrVal String sTemp1 Boolean bTemp1 // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // This example uses a previously obtained access token having permission for the // Google Sheets scope. // In this example, Get Google Sheets OAuth2 Access Token, the access // token was saved to a JSON file. This example fetches the access token from the file.. Get Create (RefClass(cComChilkatJsonObject)) To hoJsonToken If (Not(IsComObjectCreated(hoJsonToken))) Begin Send CreateComObject of hoJsonToken End Get ComLoadFile Of hoJsonToken "qa_data/tokens/googleSheets.json" To iSuccess Get ComHasMember Of hoJsonToken "access_token" To bTemp1 If (bTemp1 = False) Begin Showln "No access token found." Procedure_Return End // We'll be sending a GET request with query params to this URL: https://sheets.googleapis.com/v4/spreadsheets/spreadsheetId/values:batchGet?ranges=Sheet1!A1:A2&ranges=Sheet1!B1:B2 // The domain is "sheets.googleapis.com" // The path is "/v4/spreadsheets/spreadsheetId/values:batchGet" Get Create (RefClass(cComChilkatHttpRequest)) To hoReq If (Not(IsComObjectCreated(hoReq))) Begin Send CreateComObject of hoReq End Set ComPath Of hoReq To "/v4/spreadsheets/spreadsheetId/values:batchGet" Set ComHttpVerb Of hoReq To "GET" // Add each range to fetch. Send ComAddParam To hoReq "ranges" "Sheet1!A1:A2" Send ComAddParam To hoReq "ranges" "Sheet1!B1:B2" Get Create (RefClass(cComChilkatHttp)) To hoHttp If (Not(IsComObjectCreated(hoHttp))) Begin Send CreateComObject of hoHttp End Get ComStringOf Of hoJsonToken "access_token" To sTemp1 Set ComAuthToken Of hoHttp To sTemp1 // 443 is the SSL/TLS port for HTTPS. Get pvComObject of hoReq to vReq Get ComSynchronousRequest Of hoHttp "sheets.googleapis.com" 443 True vReq 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 <> True) Begin Get ComLastErrorText Of hoHttp To sTemp1 Showln sTemp1 Procedure_Return End Get ComBodyStr Of hoResp To sTemp1 Showln sTemp1 Get Create (RefClass(cComChilkatJsonObject)) To hoJson If (Not(IsComObjectCreated(hoJson))) Begin Send CreateComObject of hoJson End Get ComBodyStr Of hoResp To sTemp1 Get ComLoad Of hoJson sTemp1 To iSuccess Send Destroy of hoResp // A sample response is shown below. // To generate the parsing source code for a JSON response, paste // the JSON into this online tool: Generate JSON parsing code // { // "spreadsheetId": "1_SO2L-Y6nCayNpNppJLF0r9yHB2UnaCleGCKeE4O0SA", // "valueRanges": [ // { // "range": "Sheet1!A1:A2", // "majorDimension": "ROWS", // "values": [ // [ // "Item" // ], // [ // "Wheel" // ] // ] // }, // { // "range": "Sheet1!B1:B2", // "majorDimension": "ROWS", // "values": [ // [ // "Cost" // ], // [ // "$20.50" // ] // ] // } // ] // } Get ComStringOf Of hoJson "spreadsheetId" To sSpreadsheetId Move 0 To i Get ComSizeOfArray Of hoJson "valueRanges" To iCount_i While (i < iCount_i) Set ComI Of hoJson To i Get ComStringOf Of hoJson "valueRanges[i].range" To sRange Get ComStringOf Of hoJson "valueRanges[i].majorDimension" To sMajorDimension Move 0 To j Get ComSizeOfArray Of hoJson "valueRanges[i].values" To iCount_j While (j < iCount_j) Set ComJ Of hoJson To j Move 0 To k Get ComSizeOfArray Of hoJson "valueRanges[i].values[j]" To iCount_k While (k < iCount_k) Set ComK Of hoJson To k Get ComStringOf Of hoJson "valueRanges[i].values[j][k]" To sStrVal Move (k + 1) To k Loop Move (j + 1) To j Loop Move (i + 1) To i Loop End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.