Chilkat Online Tools

SQL Server / Creatio API / Get a field of object collection instance by Id

Back to Collection Items

-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    -- Important: Do not use nvarchar(max).  See the warning about using nvarchar(max).
    DECLARE @sTmp0 nvarchar(4000)
    -- This example assumes the Chilkat API to have been previously unlocked.
    -- See Global Unlock Sample for sample code.

    DECLARE @http int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.Http', @http OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    DECLARE @success int

    EXEC sp_OAMethod @http, 'SetRequestHeader', NULL, 'ForceUseSession', 'true'
    EXEC sp_OAMethod @http, 'SetRequestHeader', NULL, 'BPMCSRF', '{{BPMCSRF}}'

    DECLARE @sbResponseBody int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.StringBuilder', @sbResponseBody OUT

    EXEC sp_OAMethod @http, 'QuickGetSb', @success OUT, 'https://myserver.com/0/ServiceModel/EntityDataService.svc/Collection1Collection(guid''Id'')/Field1', @sbResponseBody
    IF @success = 0
      BEGIN
        EXEC sp_OAGetProperty @http, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @http
        EXEC @hr = sp_OADestroy @sbResponseBody
        RETURN
      END

    DECLARE @xmlResponse int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.Xml', @xmlResponse OUT

    EXEC sp_OAMethod @xmlResponse, 'LoadSb', @success OUT, @sbResponseBody, 1
    EXEC sp_OAMethod @xmlResponse, 'GetXml', @sTmp0 OUT
    PRINT @sTmp0

    -- Sample XML response:
    -- (Sample code for parsing the XML response is shown below)

    -- <?xml version="1.0" encoding="utf-8"?>
    -- <d:Name xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">William Walker</d:Name>

    -- Sample code for parsing the XML response...
    -- Use this online tool to generate parsing code from sample XML: Generate XML Parsing Code

    DECLARE @d_Name_xmlns_d nvarchar(4000)
    EXEC sp_OAMethod @xmlResponse, 'GetAttrValue', @d_Name_xmlns_d OUT, 'xmlns:d'
    DECLARE @d_Name_xmlns_m nvarchar(4000)
    EXEC sp_OAMethod @xmlResponse, 'GetAttrValue', @d_Name_xmlns_m OUT, 'xmlns:m'
    DECLARE @d_Name nvarchar(4000)
    EXEC sp_OAGetProperty @xmlResponse, 'Content', @d_Name OUT

    EXEC @hr = sp_OADestroy @http
    EXEC @hr = sp_OADestroy @sbResponseBody
    EXEC @hr = sp_OADestroy @xmlResponse


END
GO

Curl Command

curl -X GET
	-H "ForceUseSession: true"
	-H "BPMCSRF: {{BPMCSRF}}"
https://myserver.com/0/ServiceModel/EntityDataService.svc/Collection1Collection(guid'Id')/Field1

Postman Collection Item JSON

{
  "name": "Get a field of object collection instance by Id",
  "protocolProfileBehavior": {
    "disableBodyPruning": true
  },
  "request": {
    "method": "GET",
    "header": [
      {
        "key": "ForceUseSession",
        "type": "text",
        "value": "true"
      },
      {
        "key": "BPMCSRF",
        "type": "text",
        "value": "{{BPMCSRF}}"
      }
    ],
    "body": {
      "mode": "raw",
      "raw": ""
    },
    "url": {
      "raw": "{{BaseURI}}/0/ServiceModel/EntityDataService.svc/{{CollectionName1}}Collection(guid'{{ObjectId1}}')/{{FieldName1}}",
      "host": [
        "{{BaseURI}}"
      ],
      "path": [
        "0",
        "ServiceModel",
        "EntityDataService.svc",
        "{{CollectionName1}}Collection(guid'{{ObjectId1}}')",
        "{{FieldName1}}"
      ]
    },
    "description": "Request for getting a specific field value by the Id of an object collection instance."
  },
  "response": [
    {
      "name": "[200] Gets a field of an object collection instance by Id",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "key": "ForceUseSession",
            "type": "text",
            "value": "true"
          },
          {
            "key": "BPMCSRF",
            "type": "text",
            "value": "{{BPMCSRF}}"
          }
        ],
        "url": {
          "raw": "https://myserver.com/0/ServiceModel/EntityDataService.svc/EmployeeCollection(guid'c31c7862-fe33-4a13-9bbc-0943fa08fd02')/Name",
          "protocol": "https",
          "host": [
            "myserver",
            "com"
          ],
          "path": [
            "0",
            "ServiceModel",
            "EntityDataService.svc",
            "EmployeeCollection(guid'c31c7862-fe33-4a13-9bbc-0943fa08fd02')",
            "Name"
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "xml",
      "header": [
        {
          "key": "Cache-Control",
          "value": "no-cache"
        },
        {
          "key": "Content-Type",
          "value": "application/xml;charset=utf-8"
        },
        {
          "key": "Server",
          "value": "Microsoft-IIS/10.0"
        },
        {
          "key": "X-Content-Type-Options",
          "value": "nosniff"
        },
        {
          "key": "X-Content-Type-Options",
          "value": "nosniff"
        },
        {
          "key": "DataServiceVersion",
          "value": "1.0;"
        },
        {
          "key": "X-AspNet-Version",
          "value": "4.0.30319"
        },
        {
          "key": "X-Powered-By",
          "value": "ASP.NET"
        },
        {
          "key": "X-Frame-Options",
          "value": "SAMEORIGIN"
        },
        {
          "key": "Date",
          "value": "Thu, 09 Apr 2020 11:18:14 GMT"
        },
        {
          "key": "Content-Length",
          "value": "206"
        }
      ],
      "cookie": [
      ],
      "body": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<d:Name xmlns:d=\"http://schemas.microsoft.com/ado/2007/08/dataservices\" xmlns:m=\"http://schemas.microsoft.com/ado/2007/08/dataservices/metadata\">William Walker</d:Name>"
    }
  ]
}