Skip to main content

Hey can someone tell me why I keep getting a error I tried so many different ways that I know but i seem to can't figure It out😩

Hello @Peezy,
Let's first understand how airtable Scripting works.
Airtable has 2 types of scripting. 1) Automation Scripting 2) Extension Scripting.

1) Automation Scripting: https://support.airtable.com/docs/run-a-script-action#run-a-script-action-limits
As this is run into Airtable's server that's why restrict many basic logging objects. 
In your current case use

 

console.log('your string')

 

2) The output.text() which can be easily used on Airtable Extension. That is totally run on our local browser so it can able to execute that.

Try to understand the difference between them, then it will be easy to use.
👍


Hello @Peezy,
Let's first understand how airtable Scripting works.
Airtable has 2 types of scripting. 1) Automation Scripting 2) Extension Scripting.

1) Automation Scripting: https://support.airtable.com/docs/run-a-script-action#run-a-script-action-limits
As this is run into Airtable's server that's why restrict many basic logging objects. 
In your current case use

 

console.log('your string')

 

2) The output.text() which can be easily used on Airtable Extension. That is totally run on our local browser so it can able to execute that.

Try to understand the difference between them, then it will be easy to use.
👍


let table = base.getTable("PS5"); // Replace with your table name
let query = await table.selectRecordsAsync();
let ticketsField = "Tickets"; // The field that contains the number of tickets

// Collect the records that need to be duplicated
let recordsToDuplicate = [];

for (let record of query.records) {
let numTickets = record.getCellValue(ticketsField);

// If Tickets field is greater than 1, add it to the list to be duplicated
if (numTickets && numTickets > 1) {
recordsToDuplicate.push(record);
}
}

// Now we loop through the recordsToDuplicate list and create the new records
for (let record of recordsToDuplicate) {
let numTickets = record.getCellValue(ticketsField);

// Create the specified number of new records (minus 1 since the original record remains)
for (let i = 0; i < numTickets - 1; i++) { // Subtract 1 to avoid duplicating the original record
let newRecordData = {};

// Loop through all fields and copy values to the new record (excluding the Tickets field)
for (let field of table.fields) {
if (field.name !== ticketsField) {
newRecordData[field.name] = record.getCellValue(field.name);
}
}

// Create the new record
await table.createRecordAsync(newRecordData);
}
}

console.log("New records created successfully!");

 


Hello @Peezy,
Let's first understand how airtable Scripting works.
Airtable has 2 types of scripting. 1) Automation Scripting 2) Extension Scripting.

1) Automation Scripting: https://support.airtable.com/docs/run-a-script-action#run-a-script-action-limits
As this is run into Airtable's server that's why restrict many basic logging objects. 
In your current case use

 

console.log('your string')

 

2) The output.text() which can be easily used on Airtable Extension. That is totally run on our local browser so it can able to execute that.

Try to understand the difference between them, then it will be easy to use.
👍


How can I get this script to only create new record lines for only the amount of the "Tickets" ???

The script keeps creating new record lines until I go in and shut the automations off


How can I get this script to only create new record lines for only the amount of the "Tickets" ???

The script keeps creating new record lines until I go in and shut the automations off


Hello @Peezy,
I think you hit circular reference on the Automation trigger call.
It's something like Initially you create new record on a your table and you've setup trigger to run that automation.

Then during the process of that automation, it creates a new record in the same table in that case that same automation is triggered again.
Read more at here https://support.airtable.com/docs/troubleshooting-airtable-automations#unexpected-automation-output

👍


Reply