У меня есть вопрос о том, как задать список вариантов в формах Google ListItem
, в котором указывается не только значение выбора, но и пункт назначения goToPage()
pageBreak
в соответствии с выбранным значением.
Прошу прощения за длину вопроса: я предпочитаю дать некоторые предпосылки, чтобы прояснить проблему. Заранее большое спасибо!
Контекстом является теплица, в которой для каждого растения на разных этапах роста растения должны быть выполнены разные действия, такие как посев, пересадка, сбор урожая.
Название растения и стадия его роста хранятся в листе, называемом plantProgress, который имеет такую форму:
|plantNumber | nextAction |
| ------------- ------------- |
|salad001 | harvest |
|salad002 | transplant |
|salad003 | sow |
plantNumber
обновляется при создании нового (для этого у меня есть pageBreakItem
), а значение nextAction
обновляется на листе после завершения предыдущего действия.
Когда пользователь открывает форму, ему предоставляется ListItem
из plantNumber
. Каждый из nextAction
соответствует отдельной странице (т.е. pageBreakItem
)
Обратите внимание, что я уже создал в графическом интерфейсе Google Forms как начальную страницу с ListItem
, так и последующую pageBreakItems
со значениями nextAction, поэтому я получаю доступ к ListItem
по его идентификатору, например,
plantList = form.getItemById("999999999").asListItem()
Я знаю, как динамически создавать список значений выбора при добавлении нового завода: я создаю массив из столбца plantNumber
(например, plantChoices
) и передаю его в plantList
:
plantList.setChoiceValues(plantChoices)
Что мне нужно сделать, так это передать пункт назначения pageBreakItem
(например, урожай) для каждого выбора.
Я пытался понять, как это сделать, просматривая документацию для класса Choice
, но я не мог понять это.
В идеале я хотел бы сделать что-то вроде:
plantList = form.getItemById("999999999").asListItem()
plantList.setChoices([
item.createChoice('salad001', FormApp.PageNavigationType.goToPage("harvest"))
item.createChoice('salad002', FormApp.PageNavigationType.goToPage("transplant"))
item.createChoice('salad003', FormApp.PageNavigationType.goToPage("sow"))
])