Los activadores simples y los activadores instalables permiten que Apps Script ejecute una función automáticamente si se produce un evento determinado. Cuando se activa un activador, Apps Script pasa a la función un objeto de evento como un argumento, que se suele llamar e
. El objeto de evento contiene información sobre el contexto que provocó la activación del activador. Por ejemplo, el siguiente código de muestra muestra un activador onEdit(e)
simple para una secuencia de comandos de Hojas de cálculo de Google que usa el objeto de evento a fin de determinar qué celda se editó.
function onEdit(e){
// Set a comment on the edited cell to indicate when it was changed.
var range = e.range;
range.setNote('Last modified: ' + new Date());
}
En esta página, se detallan los campos del objeto de evento para diferentes tipos de activadores.
Eventos de Hojas de cálculo de Google
Los diversos activadores específicos de Hojas de cálculo de Google permiten que las secuencias de comandos respondan a las acciones de un usuario en una hoja de cálculo.
Abrir(simple e instalable) |
|
---|---|
authMode |
Un valor de la enumeración LIMITED |
source |
Un objeto Spreadsheet |
triggerUid |
ID del activador que produjo este evento (solo activadores instalables). 4034124084959907503 |
user |
Un objeto amin@example.com |
Cambiar(instalable) |
|
---|---|
authMode |
Un valor de la enumeración FULL |
changeType |
El tipo de cambio ( INSERT_ROW |
source |
Un objeto
Spreadsheet |
triggerUid |
ID del activador que produjo este evento. 4034124084959907503 |
user |
Un objeto amin@example.com |
Editar(simple e instalable) |
|
---|---|
authMode |
Un valor de la enumeración LIMITED |
oldValue |
Valor de celda anterior a la edición, si corresponde. Solo está disponible si el rango editado es de una sola celda. Será indefinido si la celda no tenía contenido anterior. 1234 |
range |
Un objeto Range |
source |
Un objeto Spreadsheet |
triggerUid |
ID del activador que produjo este evento (solo activadores instalables). 4034124084959907503 |
user |
Un objeto amin@example.com |
value |
Nuevo valor de celda después de la edición. Solo está disponible si el rango editado es de una sola celda. 10 |
Envío de formulario(instalable) |
|
---|---|
authMode |
Un valor de la enumeración FULL |
namedValues |
Un objeto que contiene los nombres de las preguntas y los valores del formulario enviado. { 'First Name': ['Jane'], 'Timestamp': ['6/7/2015 20:54:13'], 'Last Name': ['Doe'] } |
range |
Un objeto Range |
triggerUid |
ID del activador que produjo este evento. 4034124084959907503 |
values |
Arreglo con valores en el mismo orden en el que aparecen en la hoja de cálculo. ['2015/05/04 15:00', 'amin@example.com', 'Bob', '27', 'Bill', '28', 'Susan', '25'] |
Eventos de Documentos de Google
Los activadores permiten que Documentos de Google responda cuando un usuario abre un documento.
Abrir(simple e instalable) |
|
---|---|
authMode |
Un valor de la enumeración LIMITED |
source |
Un objeto Document |
triggerUid |
ID del activador que produjo este evento (solo activadores instalables). 4034124084959907503 |
user |
Un objeto amin@example.com |
Eventos de Presentaciones de Google
Los activadores permiten que Presentaciones de Google responda cuando un usuario abre una presentación.
Abrir(simple). |
|
---|---|
authMode |
Un valor de la enumeración LIMITED |
source |
Un objeto Presentation |
user |
Un objeto amin@example.com |
Eventos de Formularios de Google
Los activadores específicos de Formularios de Google permiten que las secuencias de comandos respondan cuando un usuario edita un formulario o envía una respuesta.
Abrir* (simple e instalable) |
|
---|---|
authMode |
Un valor de la enumeración LIMITED |
source |
Un objeto Form |
triggerUid |
ID del activador que produjo este evento (solo activadores instalables). 4034124084959907503 |
user |
Un objeto amin@example.com |
* Este evento no se produce cuando un usuario abre un formulario para responder, sino cuando un editor lo abre para modificarlo.
Envío de formulario(instalable) |
|
---|---|
authMode |
Un valor de la enumeración FULL |
response |
Un objeto FormResponse |
source |
Un objeto Form |
triggerUid |
ID del activador que produjo este evento. 4034124084959907503 |
Eventos del Calendario de Google
Calendario se activa cuando se actualizan los eventos de calendario de un usuario (creados, editados o borrados).
Estos activadores no le indican qué evento cambió o cómo cambió. En cambio, indican que tu código debe realizar una operación de sincronización incremental para registrar los cambios recientes en el calendario. Para obtener una descripción completa de este procedimiento, consulta la guía de recursos de sincronización para la API de Calendario.
Para realizar la sincronización con Calendario en Apps Script, sigue estos pasos:
- Habilita el servicio avanzado de Calendario para el proyecto de secuencia de comandos. El servicio de Calendario integrado no es suficiente para este flujo de trabajo.
- Determinar qué calendarios se deben sincronizar Para cada calendario, realiza una operación de sincronización inicial con el método Events.list() del servicio avanzado de Calendario.
- El resultado de la sincronización inicial muestra un
nextSyncToken
para ese calendario. Almacena este token para usarlo más adelante. - Cuando se activa el activador
EventUpdated
de Apps Script, lo que indica que se produjo un cambio en el evento de calendario, realiza una sincronización incremental para el calendario afectado mediante elnextSyncToken
almacenado. En esencia, esta es otra solicitud de Events.list(), pero proporcionar elnextSyncToken
limita la respuesta a solo los eventos que cambiaron desde la última sincronización. - Examina la respuesta de la sincronización para saber qué eventos se actualizaron y hacer que tu código responda de forma adecuada. Por ejemplo, puedes registrar el cambio, actualizar una hoja de cálculo, enviar avisos por correo electrónico o realizar otras acciones.
- Actualiza el
nextSyncToken
que almacenaste para ese calendario con el que muestra la solicitud de sincronización incremental. Esto obliga a la siguiente operación de sincronización a mostrar solo los cambios más recientes.
Evento actualizado(instalable) |
|
---|---|
authMode |
Un valor de la enumeración FULL |
calendarId |
El ID de string del calendario donde se realizó la actualización del evento. susan@example.com |
triggerUid |
ID del activador que produjo este evento. 4034124084959907503 |
Eventos de complementos
El activador onInstall()
se ejecuta de forma automática cuando un usuario instala un complemento.
Instalar(simple). |
|
---|---|
authMode |
Un valor de la enumeración FULL |
Eventos basados en el tiempo
Los activadores basados en el tiempo (también llamados activadores de reloj) permiten que las secuencias de comandos se ejecuten en un momento determinado o en un intervalo recurrente.
Basado en el tiempo (instalable) | |
---|---|
authMode |
Un valor de la enumeración FULL |
day-of-month |
Entre Debido a que este nombre de propiedad contiene guiones, se debe acceder a él mediante 31 |
day-of-week |
Entre Debido a que este nombre de propiedad contiene guiones, se debe acceder a él mediante 7 |
hour |
Entre 23 |
minute |
Entre 59 |
month |
Entre 12 |
second |
Entre 59 |
timezone |
La zona horaria UTC |
triggerUid |
ID del activador que produjo este evento. 4034124084959907503 |
week-of-year |
Entre Debido a que este nombre de propiedad contiene guiones, se debe acceder a él mediante 52 |
year |
El año. 2015 |