es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Los desencadenantes del complemento de Appscript se establecen dentro de mi proyecto de complemento, en lugar del proyecto de Appscript de la hoja de cálculo del usuario.

Estoy creando un complemento de appscript llamado “Everyday Addon” que crea un activador llamado “Trigger1” que se ejecuta todos los días.

“Trigger1” se puede configurar mediante el botón “Add Trigger” en la página de inicio del complemento. De manera similar, se puede eliminar mediante el botón “Remove Trigger”. El botón de eliminación también funciona, pero solo en mi proyecto de complemento de Appscript.

Pruebas:
1. Proyecto implementado como complemento de prueba.
2. Complemento instalado.
3. Creo una nueva hoja de cálculo llamada “Test SS”. Ya tiene mi complemento instalado.
4. Hago clic en el botón “Add Trigger”.

Resultados:
Se crea “Trigger1” pero se crea en mi proyecto “Everyday Addon” de Appscript. No se crea en la nueva hoja de cálculo, “Test SS”.

¿Qué hice mal? ¿No debería el activador estar en el proyecto de la hoja de cálculo “Test SS”? Si cientos de usuarios instalan mi complemento, ¿habrá cientos de activadores en mi proyecto de complemento?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Basándose en la información proporcionada, parece que el desencadenador se está creando en el proyecto de Appscript de la aplicación “Everyday Addon” en lugar del proyecto de la hoja de cálculo “Test SS”. Esto podría ser porque el código para crear el desencadenador no está apuntando correctamente al proyecto de la hoja de cálculo activa.

    Para asegurarse de que el desencadenador se cree en el proyecto correcto (es decir, el proyecto de la hoja de cálculo “Test SS”), debes modificar el código para apuntar al proyecto correcto utilizando el método SpreadsheetApp.getActiveSpreadsheet(). Esto te dará la hoja de cálculo activa, que puedes utilizar para obtener el ID del proyecto y crear el desencadenador en ese proyecto.

    Si los complementos han sido instalados por varios usuarios, entonces sí, todos los desencadenadores se crearán en el proyecto de Appscript de la aplicación “Everyday Addon”. Para evitar esto, puedes modificar el código para crear un nuevo desencadenador para cada usuario en su propio proyecto de hoja de cálculo. Puedes lograr esto utilizando el método SpreadsheetApp.openById() para abrir la hoja de cálculo del usuario y obtener el ID del proyecto para crear el desencadenador.

Comments are closed.