Good afternoon,
I may have found a very strange bug.
On a blank sheet named "test", I create 3 columns with headers in the first row : "type", "color" and "check".
I input values for 2 rows : "car", "blue" for the first row, "car", "yellow" for the second row - so I intentionally leave blank the last column "check".
Then, from an external Zoho service (here, Subscriptions), I execute the following code :
options_map = Map();
criteria_map = "\"type\"=\"car\" and \"check\"!=\"OK\"";
update = Map();
update .put("check","OK");
response = zoho.sheet.updateRecords("xxx","test",criteria_map,update );
I get an empty response in return, and no modification is applied to the worksheet.
You might think that this is due to:
1) not specifying a connection
Well, not at all (and, for the record, correcting 1) and 2) does not solve anything: empty response and no change).
And this is where things start getting weird.
If I copy-paste 10 times my second row, so that I now have 12 rows, and then execute the code above, I get the following response:
{"no_of_affected_rows":11,"method":"worksheet.records.update","status":"success"}
And, accordingly, the values get updated in the worksheet.
I have tested it back and forth extensively, and as surprising as it may read, it seems that zoho.sheet.updateRecords does not work if the number of records (i.e. rows) to update is lower than 10.
I find this extremely surprising, and I had to reproduce it several times to be certain I was not daydreaming.