Можете ли вы изменить идентификаторы вопросов формы в формах Google

#google-apps-script #google-forms

Вопрос:

Я создал много форм для работы, и изначально я создал одну и просто скопировал форму для всех разных вещей, которые мне были нужны. Теперь они со временем расширились и стали более функциональными. Одна из проблем, с которой я столкнулся, заключается в том, что я копирую свой сценарий в каждую из них и выполняю множество функций «заполнения формы», которые на основе ответов из предыдущих форм дадут вам возможные ответы на новейшую форму. Но теперь, когда я не копирую форму, а просто создаю, все мои вопросы имеют разные идентификаторы по сравнению с другими формами, и это добавляет часы работы, чтобы обойти эти изменения. Есть ли какой-либо способ изменить идентификатор вопроса в форме, чтобы я мог сделать их одинаковыми во всех формах?

Спасибо, даже если это большое «НЕТ».

Комментарии:

1. Я не вижу никаких методов набора идентификаторов.

Ответ №1:

Ответ

Это невозможно

Обходной путь

Вы можете получить все вопросы, используя Form.GetItems() и проверяя, соответствует ли тип каждого элемента вопросу. Проверьте тип элемента перечисления. Наконец, вы можете получить id информацию о каждом элементе с помощью Item.getId().

Код

 function myFunction() {
  var form = FormApp.getActiveForm()
  var items = form.getItems()
  var questionTypes = ['CHECKBOX', 'CHECKBOX_GRID', 'DATE', 'DATETIME', 'DURATION', 'GRID', 'LIST', 'MULTIPLE_CHOICE', 'PARAGRAPH_TEXT', 'SCALE', 'TEXT', 'TIME']
  for (var i = 0; i < items.length; i  ) {
    var type = items[i].getType().name()
    if (questionTypes.includes(type)) {
      console.log(items[i].getTitle())
      console.log(items[i].getId())
    }
  }
}