I have a table with some Knack connection fields to ease matching of transactions in Exact Online (so the Knack application downloads Exact Online, allows the user to make a match using a table in Knack and then sends data back to Exact Online).
Retrieval of connection field values now works (see Knack Connection field value not correctly retrieved), but an update from SQL does not update the values.
See picture below. It is expected that the update
statement changes the line with the red border to “Dochter BV”, but it has no effect. There is also no error triggered.
Queries used:
set use-http-disk-cache@knk false
set use-http-memory-cache@knk false
update glaccounts@knk
set division_id = '63ea5ec8c3deb807691b074f'
where code='1600'
and division_id != '63ea5ec8c3deb807691b074f'
select *
from GLAccounts@knk
Native call logging shows that the URI used for update is https://api.knack.com/v1/objects/object_2/records/63ebfb1159b 6a90029171965
, which is indeed the value of record_id
of the red row.
Parameters are:
[{"Name":"DIVISION_ID","DotnetDataType":"string","Value":"63ea5ec8c3deb807691b074f","IsDefaultValue":false}]
De request body is:
{"field_18_raw[0]":{"id":"63ea5ec8c3deb807691b074f"}}
And the answer is that no changes were made:
{
"id":"63ebfb1159b6a90029171965",
"field_18":"<span class=\"63ea5ec8c3deb807691b074d\">Moeder BV</span>",
"field_18_raw":[
{
"id":"63ea5ec8c3deb807691b074d",
"identifier":"Moeder BV"
}
],
"field_6":"1600",
"field_6_raw":"1600",
"field_2":"Crediteuren",
"field_2_raw":"Crediteuren",
"field_4_raw":"",
"field_4":"",
"field_78_raw":"",
"field_78":"",
"field_132_raw":"",
"field_132":"",
"field_127":"<span class=\"63d6ded1ac00050011615d8f\">John Doe</span>",
"field_127_raw":[
{
"id":"63d6ded1ac00050011615d8f",
"identifier":"John Doe"
}
]
}