
Comment Post Options
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎May 01, 2021 10:55 AM
I need help writing the following script:
Tables:
- Classes
- Students
- Grades (junction table)
Each time an Enrollment form creates a new record in the Classes table, the script creates a record for each Student in the Grades table. Grades table is a junction table linking Classes and Students tables.
I know there are several community scripts regarding junction tables but I need one that works from just one Class record at a time.
Solved! Go to Solution.
1 Solution
Accepted Solutions

Solved
See Solution in Thread
Comment Post Options
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎May 03, 2021 02:51 PM
I finally figured it out:
//Generate Grade record for each Student registered in user-selected Class
let classesT = base.getTable('Class');
let eachClass = await input.recordAsync ('Select the Class', classesT);
let gradesT = base.getTable('Grades');
// for each student in the students array
for (let student of eachClass.getCellValue('Students')) {
// create a grade record
await gradesT.createRecordAsync({
'Class': [{id: eachClass.id}],
'Student': [{id: student.id}]
})
}
Reply
1 Reply 1

Solved
See Solution in Thread
Comment Post Options
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎May 03, 2021 02:51 PM
I finally figured it out:
//Generate Grade record for each Student registered in user-selected Class
let classesT = base.getTable('Class');
let eachClass = await input.recordAsync ('Select the Class', classesT);
let gradesT = base.getTable('Grades');
// for each student in the students array
for (let student of eachClass.getCellValue('Students')) {
// create a grade record
await gradesT.createRecordAsync({
'Class': [{id: eachClass.id}],
'Student': [{id: student.id}]
})
}
Reply
