Agregar estado “ARMADO” y cambiar el ingreso de remitos (Pedidos Listos → DESPACHOS_v2_LIMPIO) + QR solo confirma armado
Budget: $30 – $250 USD
Tengo un sistema de logística en producción en Google Sheets + Apps Script dentro del archivo DESPACHOS_v2_LIMPIO. Hoy el flujo depende demasiado del QR para “crear” o cargar información. El cambio que necesito es simple: que los pedidos se carguen automáticamente apenas aparecen en “Pedidos Listos”, y que el QR quede únicamente como confirmación de que el pedido ya está armado. Con eso, la ruta solo debería calcularse con los pedidos armados, y además se evita que el equipo tenga que depender del QR para que aparezca el remito en la planilla.
Qué tiene que quedar funcionando
Primero: cambio de origen de carga. Antes, al leer el QR, el sistema buscaba el remito en “Pedidos Listos” y con eso completaba la información en la planilla operativa (FRACCIONADOS/REPORTE). Ahora eso tiene que pasar automáticamente: cada vez que entra un remito nuevo en “Pedidos Listos”, se tiene que copiar/impactar en DESPACHOS_v2_LIMPIO (hoja FRACCIONADOS, con los campos necesarios). El QR ya no se usa para crear filas ni para traer datos: eso lo hace “Pedidos Listos” directo.
Segundo: agregar un nuevo estado “ARMADO”. En la hoja REPORTE_Transportes (la vista operativa), hay una columna de checkbox “ENTREGADO”. Necesito agregar una columna checkbox “ARMADO” antes de “ENTREGADO” (o sea, queda ARMADO y luego ENTREGADO). Visualmente igual al checkbox actual.
Tercero: el QR pasa a ser “marcar armado”. Voy a entregar una app/APK del lector QR (tiene modo multi-scanner). La idea es que, cuando se escanea el QR de un pedido armado, el script reciba el número de remito, lo busque en REPORTE_Transportes y marque ARMADO = TRUE para ese remito. Nada más. Si el remito no existe todavía (por algún motivo), no debe crear basura ni duplicados.
Cuarto: bloqueo de entregado. No se puede marcar ENTREGADO si no está ARMADO. Si alguien intenta tildar ENTREGADO sin ARMADO, se revierte y se muestra un aviso.
Quinto: cálculo de ruta solo con armados. Cuando yo voy a Sistema → “Calcular ruta (PLAY)”, el cálculo debe considerar únicamente los remitos con ARMADO = TRUE. Los no armados deben quedar afuera de la ruta (sin romper la vista operativa).
Entregables
1. Autocopia: integración para que todo remito nuevo en “Pedidos Listos” se refleje automáticamente en DESPACHOS_v2_LIMPIO (FRACCIONADOS) con los datos necesarios.
2. Columna ARMADO (checkbox) agregada en REPORTE_Transportes antes de ENTREGADO.
3. Ajuste del flujo QR: escaneo → busca remito → marca ARMADO = TRUE (sin crear filas, sin duplicados).
4. Bloqueo ENTREGADO sin ARMADO (revertir + aviso).
5. Ajuste de “Calcular ruta (PLAY)” para que rutee solo los remitos ARMADO = TRUE.
6. Documentación corta: qué se tocó, dónde, y qué triggers/config quedan activos (si aplica), y cómo probarlo.
Criterios de aceptación (en simple)
* Si entra un remito en Pedidos Listos, aparece solo en DESPACHOS_v2_LIMPIO (sin necesidad de QR).
* El QR no crea datos: únicamente marca ARMADO en el remito correcto.
* ENTREGADO queda bloqueado si ARMADO no está marcado.
* Calcular ruta (PLAY) arma la ruta solo con los remitos armados.
* Sin duplicados, sin estados raros, sin romper el uso diario.
Pruebas rápidas (paso a paso)
1. Crear un remito de prueba en “Pedidos Listos” y confirmar que aparece automáticamente en FRACCIONADOS (DESPACHOS_v2_LIMPIO).
2. Editar ese remito en “Pedidos Listos” y confirmar que no se duplica en FRACCIONADOS.
3. Escanear el QR del remito y confirmar que en REPORTE_Transportes se marca ARMADO.
4. Intentar marcar ENTREGADO con ARMADO vacío: debe revertir y avisar.
5. Marcar ARMADO y luego ENTREGADO: debe permitirlo.
6. Ejecutar “Calcular ruta (PLAY)” con 2 remitos armados y 2 no armados: la ruta solo debe incluir los armados.
7. Re-escanear el mismo QR: no debe duplicar nada; ARMADO debe permanecer en TRUE.
8. Escanear un QR de remito inexistente: debe avisar/registrar error sin crear filas.
Qué tiene que quedar funcionando
Primero: cambio de origen de carga. Antes, al leer el QR, el sistema buscaba el remito en “Pedidos Listos” y con eso completaba la información en la planilla operativa (FRACCIONADOS/REPORTE). Ahora eso tiene que pasar automáticamente: cada vez que entra un remito nuevo en “Pedidos Listos”, se tiene que copiar/impactar en DESPACHOS_v2_LIMPIO (hoja FRACCIONADOS, con los campos necesarios). El QR ya no se usa para crear filas ni para traer datos: eso lo hace “Pedidos Listos” directo.
Segundo: agregar un nuevo estado “ARMADO”. En la hoja REPORTE_Transportes (la vista operativa), hay una columna de checkbox “ENTREGADO”. Necesito agregar una columna checkbox “ARMADO” antes de “ENTREGADO” (o sea, queda ARMADO y luego ENTREGADO). Visualmente igual al checkbox actual.
Tercero: el QR pasa a ser “marcar armado”. Voy a entregar una app/APK del lector QR (tiene modo multi-scanner). La idea es que, cuando se escanea el QR de un pedido armado, el script reciba el número de remito, lo busque en REPORTE_Transportes y marque ARMADO = TRUE para ese remito. Nada más. Si el remito no existe todavía (por algún motivo), no debe crear basura ni duplicados.
Cuarto: bloqueo de entregado. No se puede marcar ENTREGADO si no está ARMADO. Si alguien intenta tildar ENTREGADO sin ARMADO, se revierte y se muestra un aviso.
Quinto: cálculo de ruta solo con armados. Cuando yo voy a Sistema → “Calcular ruta (PLAY)”, el cálculo debe considerar únicamente los remitos con ARMADO = TRUE. Los no armados deben quedar afuera de la ruta (sin romper la vista operativa).
Entregables
1. Autocopia: integración para que todo remito nuevo en “Pedidos Listos” se refleje automáticamente en DESPACHOS_v2_LIMPIO (FRACCIONADOS) con los datos necesarios.
2. Columna ARMADO (checkbox) agregada en REPORTE_Transportes antes de ENTREGADO.
3. Ajuste del flujo QR: escaneo → busca remito → marca ARMADO = TRUE (sin crear filas, sin duplicados).
4. Bloqueo ENTREGADO sin ARMADO (revertir + aviso).
5. Ajuste de “Calcular ruta (PLAY)” para que rutee solo los remitos ARMADO = TRUE.
6. Documentación corta: qué se tocó, dónde, y qué triggers/config quedan activos (si aplica), y cómo probarlo.
Criterios de aceptación (en simple)
* Si entra un remito en Pedidos Listos, aparece solo en DESPACHOS_v2_LIMPIO (sin necesidad de QR).
* El QR no crea datos: únicamente marca ARMADO en el remito correcto.
* ENTREGADO queda bloqueado si ARMADO no está marcado.
* Calcular ruta (PLAY) arma la ruta solo con los remitos armados.
* Sin duplicados, sin estados raros, sin romper el uso diario.
Pruebas rápidas (paso a paso)
1. Crear un remito de prueba en “Pedidos Listos” y confirmar que aparece automáticamente en FRACCIONADOS (DESPACHOS_v2_LIMPIO).
2. Editar ese remito en “Pedidos Listos” y confirmar que no se duplica en FRACCIONADOS.
3. Escanear el QR del remito y confirmar que en REPORTE_Transportes se marca ARMADO.
4. Intentar marcar ENTREGADO con ARMADO vacío: debe revertir y avisar.
5. Marcar ARMADO y luego ENTREGADO: debe permitirlo.
6. Ejecutar “Calcular ruta (PLAY)” con 2 remitos armados y 2 no armados: la ruta solo debe incluir los armados.
7. Re-escanear el mismo QR: no debe duplicar nada; ARMADO debe permanecer en TRUE.
8. Escanear un QR de remito inexistente: debe avisar/registrar error sin crear filas.