Skip to main content

Scripting: input.config.select options sourced from input.config.field

  • March 30, 2023
  • 1 reply
  • 2 views

Hi all!

Pretty new to this, but I'm trying to write a script similar to Airtable's child-record script. The script should: For parentTable (defined in config), when a record's value in a field (singleSelect defined in config) matches conditions (defined in config), then it should assign this record as parentRecord, and create a link child-record in a childTable (defined in config) and populate this record's primary field with the value from the parentRecord's primary field. 

I am having some issues with the config, and wondered if anyone knew how to fetch the options of a field specified in input.config.field so it appears as the options in a input.config.select dropdown list. I want to avoid hard-coding it, but it is an easy workaround if it's impossible.

Here's the code I have for the config.

 

const config = input.config({ title: `Conditional Parent-child record creation`, description: `For records in a parent table with a matching value of a designated field, this script will create a number of "child" records in another table, where each "child" references the "parent" through a Linked Record field.`, items: [ input.config.table('parentTable', { label: 'Parent Table', description: 'Select the parent table', }), input.config.field('fieldToCheck', { label: 'Field to check', description: 'Select the field containing the value to check', parentTable: 'parentTable', }), input.config.select('valueToMatch', { label: 'Value to Match', description: 'Select the value to match records in "Field to check" against', options: [ //this section is unknown ], }) ] });

 

 My first idea was to define a variable fieldToMatchValue before the config variable is defined, and reference back to this value when writing the options (under input.config.select('valueToMatch', { etc…)

Anyone know of a way to do this?

The purpose of this is primarily multi-language workflows, where the parentRecord is an English string, and theres a child-record for each English string for many languages in a different table. The fieldToCheck is a single-select field indicating the status of the record in a workflow, "translation" being the final stage before "done". The translators would automatically be assigned a record based on the language-tag associated with it, through an automation that checks a table of language-assignments against a user upon the record being created, and assigns the relevant employee. 

Appreciate all help! 

1 reply

  • New Participant
  • 2 replies
  • February 29, 2024

Are you still looking for help on this? I think it's been almost a year, so...


Reply