Уровень кодирования : начинающий
 Продолжительность : 5 минут
 Тип проекта : Автоматизация с настраиваемым меню и триггером, управляемым событиями
Цели
- Поймите, что делает решение.
 - Понять, какие функции выполняют службы Apps Script в рамках решения.
 - Настройте сценарий.
 - Запустите скрипт.
 
Об этом решении
Создайте сквозную систему регистрации на мероприятия. Если у вас намечается мероприятие, например, конференция, вы можете настроить новый календарь сессий, создать форму регистрации и автоматически отправлять участникам персонализированные маршруты.


Как это работает
Это решение использует настраиваемое меню в Google Таблицах для реализации автоматизированной системы регистрации на мероприятия. Скрипт создаёт календарь с мероприятиями конференции, перечисленными в таблице Google Таблиц. Затем скрипт создаёт форму со списком мероприятий, на которые участники могут зарегистрироваться. После того, как участники заполняют форму, скрипт добавляет участников в календарь и отправляет им маршруты по электронной почте.
Службы скриптов приложений
Это решение использует следующие сервисы:
- Служба электронных таблиц – предоставляет информацию о событиях другим службам.
 - Служба календаря — создает новый календарь для события, добавляет события в календарь и добавляет участников к событиям, на которые они зарегистрировались.
 - Служба свойств – хранит идентификатор календаря, созданного службой «Календарь». Когда пользователь нажимает кнопку «Настроить конференцию» в меню «Конференция» , служба свойств проверяет, настроена ли система регистрации событий, проверяя наличие свойства идентификатора календаря. Это помогает избежать создания дублирующих форм и календарей.
 - Служба форм — создает форму на основе информации из электронной таблицы, которая позволяет участникам записываться на сеансы.
 - Служба скриптов – создает триггер, который срабатывает, когда участник заполняет форму.
 - Служба документов – получает информацию о мероприятиях, на которые зарегистрирован участник, и добавляет список мероприятий в новый документ. Скрипт предоставляет участнику разрешение на редактирование документа.
 - Почтовая служба – отправляет маршрутный документ участнику по электронной почте.
 
Предпосылки
Для использования этого образца вам необходимы следующие предварительные условия:
- Учетная запись Google (для учетных записей Google Workspace может потребоваться одобрение администратора).
 - Веб-браузер с доступом в Интернет.
 
Настройте сценарий
-  Нажмите следующую кнопку, чтобы скопировать пример электронной таблицы «Создание регистрации на сессии конференции» . Проект Apps Script для этого решения прикреплён к таблице.
Сделать копию - Нажмите «Конференция» > «Настроить конференцию» . Возможно, вам потребуется обновить страницу, чтобы это меню появилось.
 При появлении запроса авторизуйте скрипт. Если на экране согласия OAuth отображается предупреждение « Это приложение не проверено» , выберите «Дополнительно» > «Перейти к {Имя проекта} (небезопасно)» .
Нажмите Конференция > Настроить конференцию еще раз.
Запустить скрипт
- Нажмите «Инструменты» > «Управление формой» > «Перейти к активной форме» .
 - Заполните и отправьте форму.
 - Перейдите на calendar.google.com .
 - Слева убедитесь, что флажок рядом с опцией Календарь конференций установлен.
 - Перейдите к датам мероприятий, на которые вы зарегистрировались, и подтвердите, что вы добавлены в качестве участника.
 
(Необязательно) Сбросить решение
Если вы хотите снова опробовать это решение или настроить его для использования собственной информации о событиях, вам необходимо сбросить некоторые параметры, настроенные при первом запуске скрипта. Чтобы просмотреть шаги по сбросу решения, нажмите «Сбросить решение» ниже:
Сбросить решение
Шаг 1: Сброс сохраненных свойств скрипта
Если вы попытаетесь запустить скрипт несколько раз, появится сообщение: «Ваша конференция уже настроена». Найдите форму регистрации в Google Диске! Это происходит потому, что после создания календаря конференции идентификатор календаря сохраняется как свойство скрипта. При запуске скрипт проверяет, существует ли уже свойство идентификатора календаря, и останавливает выполнение, если оно существует.
Чтобы удалить существующее свойство идентификатора календаря, выполните следующие действия:
- В электронной таблице нажмите Расширения > Скрипт приложений .
 -  В редакторе скриптов приложений выберите 
resetPropertiesв раскрывающемся списке функций и нажмите Выполнить . 
Шаг 2: Удалить календарь конференций
При каждом запуске скрипта создаётся новый календарь. Если вы не хотите сохранять исходный календарь, выполните следующие действия:
- Перейдите на calendar.google.com .
 -  Рядом с календарем конференций нажмите «Параметры календаря конференций». 
> Настройки и общий доступ .
 - Прокрутите настройки до конца и нажмите Удалить .
 
Шаг 3: Удалить триггер отправки формы
Скрипт создаёт триггер для отправки формы при каждом запуске. Чтобы избежать срабатывания нескольких триггеров, приводящих к дублированию писем, удалите исходный триггер. Выполните следующие действия:
- В электронной таблице нажмите Расширения > Скрипт приложений .
 -  В проекте Apps Script слева нажмите «Триггеры» . 
.
 -  Рядом с триггером нажмите «Ещё». 
> Удалить триггер .
 
Шаг 4: Отсоедините и удалите форму.
Каждый раз при запуске скрипта создаётся новая форма. Чтобы отсоединить форму от таблицы и удалить её, выполните следующие действия:
- В электронной таблице щелкните правой кнопкой мыши лист Ответы формы и нажмите Отменить связь с формой > ОК .
 - Еще раз щелкните правой кнопкой мыши лист ответов формы и нажмите Удалить > ОК .
 - Перейдите на forms.google.com .
 - Щелкните правой кнопкой мыши по Форме конференции и выберите Удалить > Переместить в корзину .
 
После сброса решения вы можете добавить собственные данные или продолжить использовать образец данных и снова запустить скрипт.
Проверьте код
Чтобы просмотреть код Apps Script для этого решения, нажмите «Просмотреть исходный код» ниже:
Посмотреть исходный код
Код.gs
Авторы
Этот образец поддерживается компанией Google с помощью экспертов Google Developer Experts.
Следующие шаги
, Уровень кодирования : начинающий
 Продолжительность : 5 минут
 Тип проекта : Автоматизация с настраиваемым меню и триггером, управляемым событиями
Цели
- Поймите, что делает решение.
 - Понять, какие функции выполняют службы Apps Script в рамках решения.
 - Настройте сценарий.
 - Запустите скрипт.
 
Об этом решении
Создайте сквозную систему регистрации на мероприятия. Если у вас намечается мероприятие, например, конференция, вы можете настроить новый календарь сессий, создать форму регистрации и автоматически отправлять участникам персонализированные маршруты.


Как это работает
Это решение использует настраиваемое меню в Google Таблицах для реализации автоматизированной системы регистрации на мероприятия. Скрипт создаёт календарь с мероприятиями конференции, перечисленными в таблице Google Таблиц. Затем скрипт создаёт форму со списком мероприятий, на которые участники могут зарегистрироваться. После того, как участники заполняют форму, скрипт добавляет участников в календарь и отправляет им маршруты по электронной почте.
Службы скриптов приложений
Это решение использует следующие сервисы:
- Служба электронных таблиц – предоставляет информацию о событиях другим службам.
 - Служба календаря — создает новый календарь для события, добавляет события в календарь и добавляет участников к событиям, на которые они зарегистрировались.
 - Служба свойств – хранит идентификатор календаря, созданного службой «Календарь». Когда пользователь нажимает кнопку «Настроить конференцию» в меню «Конференция» , служба свойств проверяет, настроена ли система регистрации событий, проверяя наличие свойства идентификатора календаря. Это помогает избежать создания дублирующих форм и календарей.
 - Служба форм — создает форму на основе информации из электронной таблицы, которая позволяет участникам записываться на сеансы.
 - Служба скриптов – создает триггер, который срабатывает, когда участник заполняет форму.
 - Служба документов – получает информацию о мероприятиях, на которые зарегистрирован участник, и добавляет список мероприятий в новый документ. Скрипт предоставляет участнику разрешение на редактирование документа.
 - Почтовая служба – отправляет маршрутный документ участнику по электронной почте.
 
Предпосылки
Для использования этого образца вам необходимы следующие предварительные условия:
- Учетная запись Google (для учетных записей Google Workspace может потребоваться одобрение администратора).
 - Веб-браузер с доступом в Интернет.
 
Настройте сценарий
-  Нажмите следующую кнопку, чтобы скопировать пример электронной таблицы «Создание регистрации на сессии конференции» . Проект Apps Script для этого решения прикреплён к таблице.
Сделать копию - Нажмите «Конференция» > «Настроить конференцию» . Возможно, вам потребуется обновить страницу, чтобы это меню появилось.
 При появлении запроса авторизуйте скрипт. Если на экране согласия OAuth отображается предупреждение « Это приложение не проверено» , выберите «Дополнительно» > «Перейти к {Имя проекта} (небезопасно)» .
Нажмите Конференция > Настроить конференцию еще раз.
Запустить скрипт
- Нажмите «Инструменты» > «Управление формой» > «Перейти к активной форме» .
 - Заполните и отправьте форму.
 - Перейдите на calendar.google.com .
 - Слева убедитесь, что флажок рядом с опцией Календарь конференций установлен.
 - Перейдите к датам мероприятий, на которые вы зарегистрировались, и подтвердите, что вы добавлены в качестве участника.
 
(Необязательно) Сбросить решение
Если вы хотите снова опробовать это решение или настроить его для использования собственной информации о событиях, вам необходимо сбросить некоторые параметры, настроенные при первом запуске скрипта. Чтобы просмотреть шаги по сбросу решения, нажмите «Сбросить решение» ниже:
Сбросить решение
Шаг 1: Сброс сохраненных свойств скрипта
Если вы попытаетесь запустить скрипт несколько раз, появится сообщение: «Ваша конференция уже настроена». Найдите форму регистрации в Google Диске! Это происходит потому, что после создания календаря конференции идентификатор календаря сохраняется как свойство скрипта. При запуске скрипт проверяет, существует ли уже свойство идентификатора календаря, и останавливает выполнение, если оно существует.
Чтобы удалить существующее свойство идентификатора календаря, выполните следующие действия:
- В электронной таблице нажмите Расширения > Скрипт приложений .
 -  В редакторе скриптов приложений выберите 
resetPropertiesв раскрывающемся списке функций и нажмите Выполнить . 
Шаг 2: Удалить календарь конференций
При каждом запуске скрипта создаётся новый календарь. Если вы не хотите сохранять исходный календарь, выполните следующие действия:
- Перейдите на calendar.google.com .
 -  Рядом с календарем конференций нажмите «Параметры календаря конференций». 
> Настройки и общий доступ .
 - Прокрутите настройки до конца и нажмите Удалить .
 
Шаг 3: Удалить триггер отправки формы
Скрипт создаёт триггер для отправки формы при каждом запуске. Чтобы избежать срабатывания нескольких триггеров, приводящих к дублированию писем, удалите исходный триггер. Выполните следующие действия:
- В электронной таблице нажмите Расширения > Скрипт приложений .
 -  В проекте Apps Script слева нажмите «Триггеры» . 
.
 -  Рядом с триггером нажмите «Ещё». 
> Удалить триггер .
 
Шаг 4: Отсоедините и удалите форму.
Каждый раз при запуске скрипта создаётся новая форма. Чтобы отсоединить форму от таблицы и удалить её, выполните следующие действия:
- В электронной таблице щелкните правой кнопкой мыши лист Ответы формы и нажмите Отменить связь с формой > ОК .
 - Еще раз щелкните правой кнопкой мыши лист ответов формы и нажмите Удалить > ОК .
 - Перейдите на forms.google.com .
 - Щелкните правой кнопкой мыши по Форме конференции и выберите Удалить > Переместить в корзину .
 
После сброса решения вы можете добавить собственные данные или продолжить использовать образец данных и снова запустить скрипт.
Проверьте код
Чтобы просмотреть код Apps Script для этого решения, нажмите «Просмотреть исходный код» ниже:
Посмотреть исходный код
Код.gs
Авторы
Этот образец поддерживается компанией Google с помощью экспертов Google Developer Experts.