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
(SQL Server) SugarCRM Create a Record ListCreate a record list in Sugar consisting of a set of ids.
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls. -- CREATE PROCEDURE ChilkatSample AS BEGIN DECLARE @hr int DECLARE @iTmp0 int -- Important: Do not use nvarchar(max). See the warning about using nvarchar(max). DECLARE @sTmp0 nvarchar(4000) DECLARE @rest int -- Use "Chilkat_9_5_0.Rest" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.Rest', @rest OUT IF @hr <> 0 BEGIN PRINT 'Failed to create ActiveX component' RETURN END DECLARE @success int EXEC sp_OAMethod @rest, 'Connect', @success OUT, 'your.site.domain', 443, 1, 1 IF @success <> 1 BEGIN EXEC sp_OAGetProperty @rest, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 EXEC @hr = sp_OADestroy @rest RETURN END EXEC sp_OAMethod @rest, 'AddHeader', @success OUT, 'Cache-Control', 'no-cache' EXEC sp_OAMethod @rest, 'AddHeader', @success OUT, 'OAuth-Token', '<access_token>' -- The following code creates the JSON request body. -- The JSON created by this code is shown below. DECLARE @jsonReq int -- Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @jsonReq OUT EXEC sp_OAMethod @jsonReq, 'UpdateString', @success OUT, 'records[0]', 'f16760a4-3a52-f77d-1522-5703ca28925f' EXEC sp_OAMethod @jsonReq, 'UpdateString', @success OUT, 'records[1]', 'ec409fbb-2b22-4f32-7fa1-5703caf78dc3' -- The JSON request body created by the above code: -- { -- "records": [ -- "f16760a4-3a52-f77d-1522-5703ca28925f", -- "ec409fbb-2b22-4f32-7fa1-5703caf78dc3" -- ] -- } DECLARE @sbReq int -- Use "Chilkat_9_5_0.StringBuilder" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.StringBuilder', @sbReq OUT EXEC sp_OAMethod @jsonReq, 'EmitSb', @success OUT, @sbReq EXEC sp_OAMethod @rest, 'AddHeader', @success OUT, 'Content-Type', 'application/json' DECLARE @sbJson int -- Use "Chilkat_9_5_0.StringBuilder" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.StringBuilder', @sbJson OUT EXEC sp_OAMethod @rest, 'FullRequestSb', @success OUT, 'POST', '/rest/v10/Accounts/record_list', @sbReq, @sbJson IF @success <> 1 BEGIN EXEC sp_OAGetProperty @rest, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 EXEC @hr = sp_OADestroy @rest EXEC @hr = sp_OADestroy @jsonReq EXEC @hr = sp_OADestroy @sbReq EXEC @hr = sp_OADestroy @sbJson RETURN END EXEC sp_OAGetProperty @rest, 'ResponseStatusCode', @iTmp0 OUT IF @iTmp0 <> 200 BEGIN EXEC sp_OAGetProperty @rest, 'ResponseStatusCode', @iTmp0 OUT PRINT 'Received error response code: ' + @iTmp0 PRINT 'Response body:' EXEC sp_OAMethod @sbJson, 'GetAsString', @sTmp0 OUT PRINT @sTmp0 EXEC @hr = sp_OADestroy @rest EXEC @hr = sp_OADestroy @jsonReq EXEC @hr = sp_OADestroy @sbReq EXEC @hr = sp_OADestroy @sbJson RETURN END DECLARE @json int -- Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @json OUT EXEC sp_OAMethod @json, 'LoadSb', @success OUT, @sbJson -- The following code parses the JSON response. -- A sample JSON response is shown below the sample code. DECLARE @id nvarchar(4000) DECLARE @assigned_user_id nvarchar(4000) DECLARE @module_name nvarchar(4000) DECLARE @date_modified nvarchar(4000) DECLARE @i int DECLARE @count_i int DECLARE @strVal nvarchar(4000) EXEC sp_OAMethod @json, 'StringOf', @id OUT, 'id' EXEC sp_OAMethod @json, 'StringOf', @assigned_user_id OUT, 'assigned_user_id' EXEC sp_OAMethod @json, 'StringOf', @module_name OUT, 'module_name' EXEC sp_OAMethod @json, 'StringOf', @date_modified OUT, 'date_modified' SELECT @i = 0 EXEC sp_OAMethod @json, 'SizeOfArray', @count_i OUT, 'records' WHILE @i < @count_i BEGIN EXEC sp_OASetProperty @json, 'I', @i EXEC sp_OAMethod @json, 'StringOf', @strVal OUT, 'records[i]' SELECT @i = @i + 1 END -- A sample JSON response body that is parsed by the above code: -- { -- "id": "ef963176-4845-bc55-b03e-570430b4173c", -- "assigned_user_id": "1", -- "module_name": "Accounts", -- "records": [ -- "f16760a4-3a52-f77d-1522-5703ca28925f", -- "ec409fbb-2b22-4f32-7fa1-5703caf78dc3" -- ], -- "date_modified": "2016-04-05 21:39:19" -- } PRINT 'Example Completed.' EXEC @hr = sp_OADestroy @rest EXEC @hr = sp_OADestroy @jsonReq EXEC @hr = sp_OADestroy @sbReq EXEC @hr = sp_OADestroy @sbJson EXEC @hr = sp_OADestroy @json END GO |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.