En este ejemplo agregaremos un número consecutivo (secuencial, auto-incremental) a cada registro que ingrese a un formulario de Google Drive, además tomamos el ejemplo de un video anterior de mandar un correo electrónico para mostrar una posible aplicación de estas tareas.
Código: Github @jafrancov
se puede generar un tipo factura en donde el usuario solo pueda ver el numero que le corresponde en el formulario?
Eso depende de cómo armes el correo, si solamente quieres que vea el número, solamente envíale eso, no es necesario que le envíes toda la info que puso en el formulario.
Hola , me ha servido mucho esta herramienta; necesito saber si es posible que pudiese buscar el numero de cliente ingresado(rut) en el formulario y que en la respuesta automática venga la condición de venta asociada a otra tabla.
No he hecho algo similar, sin embargo, debe poderse, aunque habría que hacer llamadas a otro archivo, algo como
A partir de ahí seleccionar la hoja adecuada, hacer la búsqueda y el proceso para armar la respuesta.
Me podrías ayudar con un pequeño ejemplo mira te explico mejor el problema;
el formulario indica rut de la empresa; y necesito que el mail entregue un correlativo he indique las condiciones de venta asociadas a ese rut.
Documento al que hay que consultar tiene 3 columnas una cliente,rut y condición de pago.
Gracias por responder.
Hola, me marca un error de sintaxis, y ya busque y no encuentro porque sigue marcando error
¿Qué error marca?
Hola Alex a mi me marca el error TypeError: No se puede leer la propiedad “values” de undefined. (línea 5, archivo “numero consecutivo”, y ya busqué para corregir pero nada, porfa si me puedes ayudar a corregirlo
Es una situación relativamente común, eso pasa cuando se trata de ejecutar el código sin recibir una respuesta del formulario, la manera de probarlo es enviando una respuesta a través del formulario, con eso no da errores, 😁.
hola buenas tardes alex como se hace lo de contestar atraves del formulario gracias
En el formulario arriba a la derecha encontrarás un ícono de un ojo, dale click ahí y te llevará al correo en vivo, saludos.
Buen dia no encunetro en la pestaña de recursos “Activadores del proyecto activo”, solo me aparecen 3 opcionesBibliotecas; Proyectos Cloudplataform y servicios avanzados de google. Me podrias ayudar para poder terminar de ejecutarlo, muchas gracias
Solamente lo cambiaron de posición, está en Editar -> Activadores del proyecto activo, saludos.
Muchas gracias, por fin lo conseguí siguiendo todas tus indicaciones.
Hola Alex,para agregar en la respuesta un link donde pueden consultar el numero de secuencia, como se sumaria al codigo?
Gracias
Hola Alex a mi me marca el error TypeError: No se puede leer la propiedad “values” de undefined. (línea 5, archivo “numero consecutivo” ya intenté la solución que diste al usuario “Estrella” sin embargo sigue apareceindo, agradecería tu ayuda
Hola Alex, me aparece esto: Falta “;” delante del enunciado. (línea 1, archivo “Código”) no sé porqueé ya revise pero no le hallo.
al final de la línea de código siempre debe terminar con un “;”
Hola Alex tengo el mismo problema, no sé a que se deba me podrías ayudar de favor.
Saludos
Hola
me devuelve un error una vez generado el activador, una vez rellenado el formulario me envia un correo con el siguiente mensaje:
Inicio Función Mensaje de error Activación Fin
24/04/19 12:30 sequenceNumberOnFormSubmit El correo electrónico no es válido: edu (línea 23, archivo “Código”) formSubmit 24/04/19 12:30
En la linea 23 del codigo:
MailApp.sendEmail(mail, subject, plain_email_body, advancedOpts);
El correo que están poniendo es inválido o el correo, quizá un espacio o algo similar.
Hola!
Puedo devolver un codigo personalizado? Necesito devolver para la inscripcion a un evento un codigo unico a cada inscripto de letras y numeros no secuencial. para que los inscriptos no sepan cuantos son ni em que orden estan pero puedan identificarse.
El codigo lo puedo cargar manualmente en una columna de antemano. No necesito que sea aleatorio.
Gracias!
Gracias por compartir esta genial … ya me da el consecutivo.. pero no me esta devolviendo el correo de aviso.. que estare haciendo mal?
Hola! a mi me interesa solo poner el consecutivo en la hoja de cálculo, sin necesidad de enviarlo al correo. Pero no sé cómo no usar la parte de enviar al correo. ¿Podrías ayudarme?
Por otro lado, me gustaría saber si puedo definir el formato del consecutivo, algo así como SC-##
Muchas gracias
Hola Alex, buenas tardes! Excelente explicación, tengo una duda. ¿Existe alguna manera de que al terminar de contestar el formulario te asigne un folio aleatorio? Es decir, que las personas que contesten el formulario al finalizar tengan un folio aleatorio y que ese sea como su respaldo al validar que si se están reportando. Se me ocurre utilizar la formula de ALEATORIO pero no se como implementarla, por favor help meeee jeje saludos
Hola Alex, excelente explicación, será que pueda iniciar el número consecutivo de un número diferente a 1?
Por ejemplo si quiero que inicie en el 10 y luego vaya el 11 y luego el 12 y así… c puede?
Hola buenas tardes tu código me a servido muy bien pero tengo una pregunta se pueden enviar 2 correos con diferentes textos de de 2 diferentes formularios?
Hola Alex, gracias por compartir tus conocimientos, puedo enviar un correo cuando se actualice el contenido de una celda? por ejemplo en mi hoja de datos tengo una columna con el estado de la respuesta, cuando la actualizo a ATENDIDA me gustaría enviarle un correo a quien la originó.
¿En dónde se puede encontrar toda la función?
Hola buenas tardes,
Deseo enviar a las personas que llenen el formulario un código secuencia que inicie de otro número y lleve letras, esto es PI045 como inicial e incremente a un máximo de PI130. Me puedes ayudar??
Hola Alex, me sale esto TypeError: No se puede leer la propiedad “values” de undefined. (línea 9, archivo “Código”)… me podrias ayudar
Hola Alex,
Yo cree un formulario y estaba funcionando perfectamente (este era de prueba)
Cree otro formulario con más preguntas y use el mismo codigo, solo cambiando la posición de la columnas de donde recupera los correos, sin embargo, en este nuevo formulario me llegan las notificaciones me envía un correo de “El mensaje no se envío… Hubo un problema al entregar tu mensaje a aaaa@XXX.com, consulta los detalles tecnicos a continuación o intenta enviarlo más tarde”, y ya no envía los correos de este nuevo formulario.
Ya elimine todas las respuestas y volvi a crearlo y a generar los activadores y aun así sigue apareciendo ese correo.
Saludos!
Excelente aporte.
Tengo una consulta, es posible descargar un archivo (xls) desde una de las preguntas, y volver a subir ese archivo??
Hola, y si quisiera poner un consecutivo personalizado, por decir que inicie en 1000? cómo le puedo hacer?
Buenos dias Alex, estoy usando el codigo para un concurso virtual, tengo el problema que uno de los participantes se registro pero no le dio numero y esa casilla sola en la hoja de sheets aparece en blanco, debajo de ella el proximo concursante tiene su numero coorelativo asignado. El usuario que le falta el numero me envia una confirmacion de numero de registro que le toca al compañero de abajo.
Hola Alex,
Implemente la función y al principio funcionaba y enviaba el correo, pero ahora ya no recibo el correo, sin embargo si genera el numero consecutivo. Tienes alguna idea de a que se debe?
Hola Alex, oye al querer integrara el activador, esto me pone Google:
“Esta aplicación está bloqueada
Esta aplicación ha intentado acceder a información sensible de tu cuenta de Google. Para proteger tu cuenta, Google ha bloqueado este acceso.”
¿Que puedo hacer?
saludos, se puede enviar el correo al usuario de la columna 10 y con copia al usuario de la columna 12, y con copia a mi que soy el creador del formulario?, gracias
Hola, se podría adjuntar un archivo PDF con la respuesta al correo? En mi caso me solicitan información sobre mis servicios de asesoría y toda esa información la tengo en un PDF de 4 hojas.
Gracias!
function consecutivoOnformsubmit(e) {
var consecutivo = agregarNumeroconsecutivo(SG455)
var registro = e.values [SG455];
var nombre = e.values [SG456];
var correo = e.values [SG457];
var asunto = “solicitud numero ” + consecutivo;
var email_plano = “¡hola ” + nombre + “!” + “\n\n”
“hemos registrado tu solicitud enviada el ” + registro + “\n\n” +
“para seguir el estatus pregunta por la solicitud numero” + consecutivo;
}
function agregaragregarNumeroconsecutivo(SG455) {
var hoja = SpreadsheetApp.getActiveSheet(Respuestasdeformulario1)
var fila =SpreadsheetApp.getActiveSheet(18).getLastRow(19);
var consecutivo = (fila -1);
hoja.getRange(fila.19).setValue.(consecutivo);
return consecutivo;
}
y me arroja el error en la linea 18
Alex buenas tardes. El codigo funciona pero no me envía el email de confirmación, ya le di permiso para el uso del correo pero no salen. Te copio el código que use en mi caso:
function sequenceNumberOnFormSubmit(e) {
// Call the function that generates the sequence number
var record = addSequenceNumber();
var timestamp = e.values[0];
var name = e.values[4];
var correo = e.values[5];
var descripcion = e.values[9];
var subject = “Request number ” + record;
var plain_email_body = “Hola ” + name + “!” +
“\n\n” +
“Registramos tu solicitud envíada el ” + timestamp +
“\n\n” +
“El número de SDR es el” + record + “. ” + descripcion;
var html_body = “Hola ” + name + “!” +
“” +
“Registramos tu solicitud envíada el ” + timestamp + “” +
“” +
“El número de SDR es el ” + record + “” + “. ” + descripcion;
var advancedOpts = { name: “Formulario – Equipos MPSA”, htmlBody: html_body };
MailApp.sendEmail(correo, subject, plain_email_body, advancedOpts);
}
Gracias por tu ayuda!