createRecordAsync not creating a Record

Can I get a second pair of eyes on my script? Expected behavior is that a user can click a button on any record in the “People” table, and it will create a record in the “Payouts” table, linked to People by a lookup field called “Person”

I don’t get any error messages when I run this script, but I also don’t get any new records in the “Payouts” table. And I’m the only user on the license, so I don’t think it would be a permissions error.

Can you see anything I’m missing? Thanks in advance!

const childTable = base.getTable('Payouts');
const parentTable = base.getTable('People');
const parentRecord = await input.recordAsync('Parent record', parentTable);
const linkField = 'Person';
const newRecordValue = parentRecord.getCellValue("Account Balance")*(-1);
console.log(newRecordValue);

childTable.createRecordAsync({'Amount': newRecordValue, linkField: parentRecord});

Your syntax for the linked field is incorrect. You are not seeing the error message because you are not awaiting the createRecordAsync line, thus your script ends before it has a chance to report the error.

Try this …

await childTable.createRecordAsync({
    'Amount': newRecordValue, 
    [linkField]: [{id: parentRecord.id}],
});

3 Likes

Thank you! That did the trick.

This topic was solved and automatically closed 3 days after the last reply. New replies are no longer allowed.