Note: This tutorial only allows you to create new dropdown fields on your Result schemas. If you have an existing field in a Result table that can't be edited, you will need to archive that field and create a new one using this tutorial.


Locating the dropdown ID

Navigate to the Dropdowns tab by selecting the Avatar in the bottom left corner of Benchling > Feature Settings > Registry Settings > Dropdowns. Here select the dropdown you want to insert into your Result table and copy the Dropdown ID, this is the final part of the pages URL (e.g sfs_2noMOOSv).

Using JSON to configure Result table dropdowns

After making a note of the dropdown ID navigate to the Result table you want to add a dropdown to.

Create a new JSON object for the new dropdown field. We recommend doing this by copying the JSON of another field, deleting the "id" line, and replacing the "displayName" and "name" fields with the desired information for this field. Then, in the line “type” replace “text” with "dropdown" and under that line, add "dropdownId" : "Your Dropdown ID".

Note: You cannot use the "Configure Result Table" function to create dropdowns; you must edit the JSON directly.

Now click Update to save your changes, you will see your dropdown options populate in the JSON. Select Configure Result Table and click publish to publish your Result table. Ensure the table is finalised before publishing, fields will lock for editing once data has been input into the Result table.


Troubleshooting

All fields except for your last field should have a comma after the final }.

All of your field attributes ("isMulti", "type", "displayName", "name", "dropdownId", etc.) should have a comma at the end of each line, except for the final attribute.

If you are getting an error similar to "fields.FIELDNAME.FIELDTYPE cannot change type once data has been received", this means you can not change the field type since it is already in use. To change this, you will need to archive this field and create a new one using the steps outlined above.

Did this answer your question?