Sample code for 30+ languages & platforms
VBScript

SugarCRM Filtering Records

See more SugarCRM Examples

Export records and filter.

Chilkat VBScript Downloads

VBScript
Dim fso, outFile
Set fso = CreateObject("Scripting.FileSystemObject")
'Create a Unicode (utf-16) output text file.
Set outFile = fso.CreateTextFile("output.txt", True, True)

success = 0

set rest = CreateObject("Chilkat.Rest")

success = rest.Connect("your.site.domain",443,1,1)
If (success <> 1) Then
    outFile.WriteLine(rest.LastErrorText)
    WScript.Quit
End If

success = rest.AddHeader("Cache-Control","no-cache")
success = rest.AddHeader("OAuth-Token","<access_token>")

' The following code creates the JSON request body.
' The JSON created by this code is shown below.
set jsonReq = CreateObject("Chilkat.JsonObject")
success = jsonReq.UpdateString("filter[0].$or[0].name.$starts","A")
success = jsonReq.UpdateString("filter[0].$or[1].name.$starts","b")
success = jsonReq.UpdateNumber("max_num","2")
success = jsonReq.UpdateNumber("offset","0")
success = jsonReq.UpdateString("fields","id")
success = jsonReq.UpdateString("order_by","date_entered")
success = jsonReq.UpdateBool("favorites",0)
success = jsonReq.UpdateBool("my_items",0)

' 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
' }

set sbReq = CreateObject("Chilkat.StringBuilder")
success = jsonReq.EmitSb(sbReq)

success = rest.AddHeader("Content-Type","application/json")

set sbJson = CreateObject("Chilkat.StringBuilder")
success = rest.FullRequestSb("POST","/rest/v10/Accounts/filter",sbReq,sbJson)
If (success <> 1) Then
    outFile.WriteLine(rest.LastErrorText)
    WScript.Quit
End If

If (rest.ResponseStatusCode <> 200) Then
    outFile.WriteLine("Received error response code: " & rest.ResponseStatusCode)
    outFile.WriteLine("Response body:")
    outFile.WriteLine(sbJson.GetAsString())
    WScript.Quit
End If

set json = CreateObject("Chilkat.JsonObject")
success = json.LoadSb(sbJson)

' The following code parses the JSON response.
' A sample JSON response is shown below the sample code.

next_offset = json.IntOf("next_offset")
i = 0
count_i = json.SizeOfArray("records")
Do While i < count_i
    json.I = i
    id = json.StringOf("records[i].id")
    date_modified = json.StringOf("records[i].date_modified")
    v_module = json.StringOf("records[i]._module")
    i = i + 1
Loop

' 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"
'     }
'   ]
' }

outFile.WriteLine("Example Completed.")

outFile.Close