Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

145
Vistas
¿Hay alguna manera de verificar si un próximo evento incluye un término en el título?

Creé un script que actualiza el título de los eventos después de que un usuario envía un formulario, según esta condición:

 for(var j=0; j<events.length;j++){ var ev = events[j]; if(!ev.getTitle().includes("Returned"){ ...

Quiero que el script verifique si hay uno o varios eventos que incluyen el término "Devuelto", pero solo entre los próximos eventos.

Por ejemplo, la condición debería ser falsa si el título de un evento no incluye "Devuelto" Y ninguno de los siguientes títulos de eventos incluye "Devuelto".

¿Es eso posible? Intenté crear una variable evnext = events[j+1] pero, por supuesto, aparece un error una vez que llega al último evento.

Gracias por su ayuda, creo que es muy factible, pero lamentablemente mi comprensión de los bucles es demasiado baja...

Editar: detalles sobre mi objetivo

En realidad, mi guión envía un correo electrónico a todas las personas que tomaron prestado un equipo pero no confirmaron que lo devolvieron.

El problema ahora es que me gustaría enviar un correo electrónico a estas personas, EXCEPTO SI alguien más lo devolvió después.

De hecho, significaría que incluso el primer prestatario no confirmó que lo devolvió, el hecho de que alguien que lo tomó a continuación y lo marcó como devuelto prueba que la primera persona realmente devolvió el equipo.

De lo contrario, no habría sido posible que el siguiente tipo lo devolviera.

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Puedes probar el siguiente script:

 function listEvents() { let calendar = CalendarApp.getCalendarById("Calendar ID"); // Change the calendar ID var today = new Date(); for(let i=1; i<=30; i++) // 30 days limit { var events = calendar.getEventsForDay(today, {search: 'Returned'}); if(events.length != 0) { MailApp.sendEmail("email@domain.com","Subject","Body"); } today.setDate(today.getDate() + 1); } }

En este ejemplo, la secuencia de comandos toma la fecha actual y comienza a verificar día a día de un calendario específico para los próximos 30 días si un evento tiene la palabra "Devuelto" en su título y devuelve Falso si no.

Déjeme saber si esto ayuda. También puedo modificar el script si es necesario. Puedes modificar el límite de 30 días, y la fecha inicial en función de tus necesidades. No olvides cambiar el ID del calendario al que estás usando actualmente para guardar los eventos.

Referencias:

  • getEventsForDay(fecha, opciones)
about 4 years ago · Juan Pablo Isaza Denunciar

0

Qué tal esto:

 for(var j=0; j<events.length;j++){ var ev = events[j]; if(j < events.length - 1) { if(ev.getTitle().include("Returned") && events[j+1].include("Returned")) {} } else { if(!ev.getTitle().includes("Returned") {} }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda