Tcl
Tcl
SugarCRM Create a Record List
See more SugarCRM Examples
Create a record list in Sugar consisting of a set of ids.Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
set rest [new_CkRest]
set success [CkRest_Connect $rest "your.site.domain" 443 1 1]
if {$success != 1} then {
puts [CkRest_lastErrorText $rest]
delete_CkRest $rest
exit
}
CkRest_AddHeader $rest "Cache-Control" "no-cache"
CkRest_AddHeader $rest "OAuth-Token" "<access_token>"
# The following code creates the JSON request body.
# The JSON created by this code is shown below.
set jsonReq [new_CkJsonObject]
CkJsonObject_UpdateString $jsonReq "records[0]" "f16760a4-3a52-f77d-1522-5703ca28925f"
CkJsonObject_UpdateString $jsonReq "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"
# ]
# }
set sbReq [new_CkStringBuilder]
CkJsonObject_EmitSb $jsonReq $sbReq
CkRest_AddHeader $rest "Content-Type" "application/json"
set sbJson [new_CkStringBuilder]
set success [CkRest_FullRequestSb $rest "POST" "/rest/v10/Accounts/record_list" $sbReq $sbJson]
if {$success != 1} then {
puts [CkRest_lastErrorText $rest]
delete_CkRest $rest
delete_CkJsonObject $jsonReq
delete_CkStringBuilder $sbReq
delete_CkStringBuilder $sbJson
exit
}
if {[CkRest_get_ResponseStatusCode $rest] != 200} then {
puts "Received error response code: [CkRest_get_ResponseStatusCode $rest]"
puts "Response body:"
puts [CkStringBuilder_getAsString $sbJson]
delete_CkRest $rest
delete_CkJsonObject $jsonReq
delete_CkStringBuilder $sbReq
delete_CkStringBuilder $sbJson
exit
}
set json [new_CkJsonObject]
CkJsonObject_LoadSb $json $sbJson
# The following code parses the JSON response.
# A sample JSON response is shown below the sample code.
set id [CkJsonObject_stringOf $json "id"]
set assigned_user_id [CkJsonObject_stringOf $json "assigned_user_id"]
set module_name [CkJsonObject_stringOf $json "module_name"]
set date_modified [CkJsonObject_stringOf $json "date_modified"]
set i 0
set count_i [CkJsonObject_SizeOfArray $json "records"]
while {$i < $count_i} {
CkJsonObject_put_I $json $i
set strVal [CkJsonObject_stringOf $json "records[i]"]
set i [expr $i + 1]
}
# 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"
# }
puts "Example Completed."
delete_CkRest $rest
delete_CkJsonObject $jsonReq
delete_CkStringBuilder $sbReq
delete_CkStringBuilder $sbJson
delete_CkJsonObject $json