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

141
Vistas
Google App Script - Agregar o actualizar evento de calendario

Actualizando la pregunta anterior con un ejemplo detallado. Tengo una hoja de Google con tres columnas usadas (A: Título del evento, B: Descripción del evento y D: Fecha del evento). Quiero crear un nuevo evento de todo el día en Google Calendar si no existe ninguno y actualizar el existente si ya existe.

Aquí está el código que probé: Recibo el error: TypeError: No se puede leer la propiedad 'setDescription' de undefined

 function updatecal(){ var cal = CalendarApp.getCalendarById('c_lmsj3r1ogsaafhc68gfalstdco@group.calendar.google.com'); var data = SpreadsheetApp.getActive().getSheetByName("Data For Calendar"); const rows = data.getDataRange().getValues(); rows.forEach(function(row, index){ if (index === 0) return; var eventdate = data.getRange(index, 4, 1, 1).getValue(); var eventtitle = data.getRange(index,1,1,1).getValue(); var eventdescription = data.getRange(index,2,1,1).getValue(); console.log(eventdate + eventtitle + eventdescription) const eventdate1 = new Date(eventdate) const events = cal.getEventsForDay(eventdate1); if (events.lenght == 0){ var newevent = cal.createAllDayEvent(eventtitle,eventdate1, {description: eventdescription}); } else { ev = events[0]; ev.setDescription(eventdescription) } }) }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Hay un error tipográfico en la línea 13 dentro de la instrucción if . lenght en lugar de length . Si arreglas que el código funcione bien y los eventos del calendario se creen sin ningún problema.

 function updatecal(){ var cal = CalendarApp.getCalendarById('c_lmsj3r1ogsaafhc68gfalstdco@group.calendar.google.com'); var data = SpreadsheetApp.getActive().getSheetByName("Data For Calendar"); const rows = data.getDataRange().getValues(); rows.forEach(function(row, index){ if (index === 0) return; var eventdate = data.getRange(index, 4, 1, 1).getValue(); var eventtitle = data.getRange(index,1,1,1).getValue(); var eventdescription = data.getRange(index,2,1,1).getValue(); console.log(eventdate + eventtitle + eventdescription) const eventdate1 = new Date(eventdate) const events = cal.getEventsForDay(eventdate1); if (events.length == 0){ //The error was in this line var newevent = cal.createAllDayEvent(eventtitle,eventdate1, {description: eventdescription}); } else { ev = events[0]; ev.setDescription(eventdescription) } }) }

Referencias:

  • longitud()
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