Nível de programação: iniciante
Duração: 5 minutos
Tipo de projeto: automação com um menu personalizado e
um acionador orientado a eventos
Objetivos
- Entenda o que a solução faz.
- Entenda o que os serviços do Apps Script fazem na solução.
- Configure o script.
- Execute o script.
Sobre esta solução
Crie um sistema de inscrição em eventos de ponta a ponta. Se você tiver um evento chegando, como uma conferência, poderá configurar uma nova agenda para as sessões da conferência, criar um formulário de inscrição e enviar automaticamente por e-mail itinerários personalizados aos participantes.
Como funciona
Esta solução usa um menu personalizado nas Planilhas Google para implementar um sistema automatizado de inscrição em eventos. O script cria um calendário com os eventos de conferência listados na planilha Google. Em seguida, o script cria um formulário com a lista de eventos em que os participantes podem se inscrever. Depois que os participantes preenchem o formulário, o script os adiciona aos eventos da agenda e envia os itinerários por e-mail.
Serviços do Apps Script
Esta solução usa os seguintes serviços:
- Serviço de planilha: fornece as informações de evento aos outros serviços.
- Serviço da Agenda: cria uma nova agenda para o evento, adiciona eventos a ela e adiciona participantes aos eventos em que eles se inscrevem.
- Serviço de propriedades: armazena o ID da agenda criada pelo serviço Agenda. Quando um usuário clica em Configurar conferência no menu personalizado Conferência, o serviço de propriedades verifica se o sistema de registro de eventos já foi configurado. Para isso, ele verifica se a propriedade de ID do calendário está presente. Isso ajuda a evitar a criação de formulários e agendas duplicados.
- Serviço do Formulários: cria um formulário com base nas informações da planilha para que os participantes se inscrevam nas sessões.
- Serviço de script: cria um gatilho que é acionado quando um participante preenche o formulário.
- Serviço de documentos: recebe as informações de eventos para os eventos em que um participante se inscreve e adiciona uma lista dos eventos a um novo documento. O script dá ao participante permissão para editar o documento.
- Serviço de e-mail: envia o documento do itinerário por e-mail para o participante.
Pré-requisitos
Para usar esta amostra, você precisa atender aos seguintes pré-requisitos:
- Uma Conta do Google (as contas do Google Workspace podem exigir a aprovação do administrador).
- Um navegador da Web com acesso à Internet.
Configurar o script
- Clique no botão a seguir para fazer uma cópia da planilha de exemplo Criar uma inscrição para sessões em uma conferência. O projeto do Apps Script
para essa solução está anexado à planilha.
Fazer uma cópia - Clique em Conferência > Configurar conferência. Talvez seja necessário atualizar a página para que o menu personalizado apareça.
Quando solicitado, autorize o script. Se a tela de permissão OAuth mostrar o aviso Este app não foi verificado, selecione Avançado > Acessar {Nome do projeto} (não seguro).
Clique em Conferência > Configurar conferência novamente.
Executar o script
- Clique em Ferramentas > Gerenciar formulário > Acessar o formulário ativo.
- Preencha e envie o formulário.
- Acesse calendar.google.com.
- À esquerda, verifique se a caixa ao lado de Agenda de conferências está marcada.
- Acesse as datas dos eventos em que você se inscreveu e confirme se seu nome foi adicionado como participante.
(Opcional) Redefinir a solução
Se você quiser tentar essa solução de novo ou personalizá-la para usar suas próprias informações de evento, redefina alguns itens que foram configurados quando você executou o script pela primeira vez. Para conferir as etapas de redefinição da solução, clique em Redefinir a solução abaixo:
Redefinir a solução
Etapa 1: redefinir as propriedades armazenadas do script
Se você tentar executar o script mais de uma vez, a seguinte mensagem vai aparecer: Sua conferência já está configurada. Procure o formulário de inscrição no Google Drive. Isso acontece porque, depois que o calendário de conferências é criado, o ID do calendário é armazenado como uma propriedade de script. Quando o script é executado, ele verifica se a propriedade calendar ID já existe e para de ser executado se ela existir.
Siga as etapas abaixo para remover a propriedade "ID da agenda" atual:
- Na planilha, clique em Extensões > Apps Script.
- No editor do Apps Script, selecione
resetProperties
na lista suspensa de funções e clique em Executar.
Etapa 2: excluir a agenda de conferências
Toda vez que o script é executado, ele cria uma nova agenda. Se você não quiser manter o calendário original criado, siga estas etapas:
- Acesse calendar.google.com.
- Ao lado de "Agenda de conferências", clique em Opções da Agenda de conferências
> Configurações e compartilhamento.
- Role até a parte de baixo das configurações e clique em Excluir.
Etapa 3: excluir o acionador de envio do formulário
O script cria um gatilho para envios de formulários sempre que você o executa. Para evitar vários gatilhos que resultam em e-mails duplicados, remova o gatilho original. Siga estas etapas:
- Na planilha, clique em Extensões > Apps Script.
- No projeto do Apps Script, à esquerda, clique em Acionadores
.
- Ao lado do gatilho, clique em Mais
> Excluir gatilho.
Etapa 4: desvincular e excluir o formulário
Cada vez que você executa o script, um novo formulário é criado. Siga estas etapas para desvincular o formulário da sua planilha e excluir:
- Na planilha, clique com o botão direito do mouse na página Respostas do formulário e clique em Desvincular formulário > Ok.
- Clique com o botão direito do mouse na planilha Respostas do formulário novamente e clique em Excluir > Ok.
- Acesse forms.google.com.
- Clique com o botão direito do mouse em Formulário de conferência e clique em Remover > Mover para a lixeira.
Depois de redefinir a solução, você pode adicionar seus próprios dados ou continuar usando os dados de amostra e executar o script novamente.
Revisar o código
Para revisar o código do Apps Script dessa solução, clique em Ver código-fonte abaixo:
Acessar o código-fonte
Code.gs
Colaboradores
Esta amostra é mantida pelo Google com a ajuda dos Google Developer Experts.