Hey everyone, i'm having an issue and i can't figure out why. I can't update a linked record field (The last line of the snippet below); i've performed this action before in the past with identical syntax i.e.
await myTable.createRecordAsync({
"linked record field": [{id: idToLink}]
})
Here is the code with an example of the data:
let inputConfig = input.config();
let inputRecordId = inputConfig['input_record_id']
let CRFM_table = base.getTable('Camper Reports Form Manager');
let CRFM_fields = [];
// build array of all fields in CRFM for query
for (let record in CRFM_table.fields) {
//fields by name
CRFM_fields.push(CRFM_table.fields[record].name)
}
let CRFM_query = await CRFM_table.selectRecordsAsync({
fields: CRFM_fields
})
let dataObj = {};
//build object containing every field:value from record
for (let record of CRFM_query.records) {
if (record.id === inputRecordId) {
for (let each of CRFM_fields) {
dataObj[each] = record.getCellValueAsString(each)
}
}
}
console.log(dataObj)
//build final data structure
let resObj = {};
let maxNum = 0;
//CHANGE STOP CONDITION TO REFLECT MAX # OF STUDENTS
for (let i = 1; i < 12; i++) {
for (let each in dataObj) {
if (i < 10) {
if (each.includes(`0${i}`) && dataObj[each].length > 0 && !each.includes('record')) {
let key = each.includes('Report') ? 'Report' : 'Name'
if (!resObj[i]) {
resObj[i] = {
[key]: dataObj[each]
}
if (i > maxNum) maxNum = i;
} else if (resObj[i]) {
resObj[i][key] = dataObj[each];
if (i > maxNum) maxNum = i;
}
}
if (each.includes(`0${i}`) && dataObj[each].length > 0 && each.includes('record')) resObj[i]["Summer Campers id"] = dataObj[each]
}
if (i >= 10) {
if (each.includes(i) && dataObj[each].length > 0 && !each.includes('record')) {
let key = each.includes('Report') ? 'Report' : 'Name'
if (!resObj[i]) {
resObj[i] = {
[key]: dataObj[each]
}
if (i > maxNum) maxNum = i;
} else if (resObj[i]) {
resObj[i][key] = dataObj[each];
if (i > maxNum) maxNum = i;
}
}
if (each.includes(i) && dataObj[each].length > 0 && each.includes('record')) resObj[i]["Summer Campers id"] = dataObj[each]
}
}
}
console.log(resObj)
let CR_table = base.getTable('Camper Reports');
for (let i = 1; i <= maxNum; i++) {
let idToLink = resObj[i]['Summer Campers id'] ;
// let nameToLink = resObj[i]['Name'];
console.log(idToLink);
await CR_table.createRecordAsync({
"Camper Name": resObj[i]['Name'],
"Camper Report": resObj[i]['Report'],
"Summer Campers": [{id: idToLink}], /*PROBLEM HERE*/
})
}

