#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())
}
}
}