Estado: BORRADOR (revisión intensiva 02-sep) · Material de consulta. La app trabaja con lector (la pistola, que escribe el código como un teclado) y, en el móvil y la tablet, también con la cámara del dispositivo (A.10.7).
A.10.1 El modelo de códigos (lo que hay que entender primero)
- Cada artículo puede tener varios códigos de barras (unitario, caja de 6, palé…), y cada código lleva sus unidades por disparo: escanear la caja de 6 suma 6. En los modales de códigos se ve como «Uds/código: N». Si el catálogo no indica unidades, un disparo vale 1.
- Lo leído se compara con los códigos dados de alta en ALO por lo que significan, no letra a letra: un EAN-13, ese mismo número como GTIN-14 (con un
0delante) y una etiqueta GS1-128 que lo lleve dentro, con lote, caducidad o peso, son el mismo artículo (A.10.6). Fuera de esa familia la comparación es exacta: en un código interno los ceros iniciales importan (00123≠123). No se valida longitud ni dígito de control: valen EAN-13, EAN-8 y códigos internos por igual. - Lo que se suma son siempre las unidades del código de ALO que ha casado, no las de la lectura.
- Los portes no se escanean: son un servicio y la app los recoge y empaqueta sola.
- El foco vuelve solo al campo de escaneo tras cada operación: se puede disparar en cadena sin tocar la pantalla.
![]()
A.10.2 Qué dispara un escaneo, pantalla a pantalla
| Dónde escaneas | Qué ocurre | Hasta dónde llega solo |
|---|---|---|
| Picking — campo principal | Localiza el artículo pendiente; en preparación con varios candidatos pregunta «Seleccionar pedido»; si el pack cabe, lo aplica al instante («PED/N · artículo: +N — aplicado/completado») con evento «Cantidad aplicada por escaneo»; si no cabe o quedan pendientes, abre el modal de códigos. | Si el pedido queda al 100 % y ya existe su traspaso: se cierra el picking solo — estado «picking completado», cambio de estado en ALO y push a los administradores. Nunca genera traspaso ni albarán. |
| Picking — campo EAN del modal de artículo | Igual que el principal, con el campo coloreado en verde/rojo y el EAN coincidente resaltado en los badges. | Ídem. |
| Picking — modal «Añadir por código de barras» | Cada disparo aplica el pack al momento; si el código es de otro artículo, avisa «Código pertenece a otro artículo. Cambiando…» y salta a él; al completar la línea cierra el modal solo. El botón + auto-aplica al igualar lo pendiente. | Ídem. |
| Packing — campo principal | Con el pack exacto aplica y salta al pedido correcto («… — COMPLETADO»); con pack menor abre el modal de códigos; con pack mayor avisa y registra el exceso como error en el historial. Un código desconocido también queda registrado como error. Nota: el disparo automático exige 8+ caracteres (Enter procesa cualquiera). | Marca la línea. Con el pedido completo, solo habilita «Finalizar». |
| Packing — modal «Empaquetado DropShipping» | El código localiza el artículo y el pedido más antiguo que lo necesita (FIFO), entra en él, suma el pack, deja rastro («Entrada dropshipping por EAN…») y cierra el modal desbloqueando la edición. Marco verde/rojo según resultado. | Deja el pedido activo empaquetándose. Al completarlo solo habilita «Finalizar pedido». |
| Packing — modal «Añadir por código de barras» (mismo título que el de picking, ver A.10.5) | Acumula «veces escaneado» por código y auto-confirma al llegar a lo pendiente (cerrando el modal). A diferencia del de picking, no aplica nada hasta ese momento. Cambia de artículo/pedido si el código es de otro. | Ídem packing. |
| Entradas — recepción de compra | Suma las unidades del código a la línea («Añadidas N unidades al artículo X (P/M uds)»); puede exceder el pedido solo si la empresa lo permite. Si el artículo está en dos líneas, suma siempre a la primera. | Solo la línea. El albarán de compra es siempre manual. |
En el móvil y la tablet, cada uno de estos siete campos lleva además un botón de cámara: lo que lee la cámara hace exactamente lo mismo que un disparo del lector (A.10.7).
Dónde NO funciona el escaneo (para no intentarlo): el buscador global no indexa códigos de barras (sí el código de artículo), y devoluciones no tiene campo de escaneo.
![]()
A.10.3 Lo que un escaneo NUNCA hace
Ni el albarán ni las etiquetas se disparan por escaneo. El primer eslabón siempre es el botón «Finalizar» / «Finalizar pedido» (→ serie → albarán → modal de impresión). El único automatismo de impresión —y solo con el extra de etiquetado— es en pedido individual: tras finalizar el packing, al volver a la ficha se auto-genera la etiqueta de envío.
En el packing dropshipping la finalización es siempre manual, pedido a pedido, con «Finalizar pedido»: así cada pedido sale con un único albarán.
A.10.4 Avisos de escaneo más comunes (literales)
- «EAN no asociado a ningún artículo de esta preparación» / «Código no encontrado en esta preparación» — el código no es de este trabajo (¿ceros iniciales? ¿producto equivocado?).
- «Este artículo ya está completo» / «Artículo ya completamente empaquetado».
- «No hay stock suficiente para este código (aporta N, disponible M).» — el pack no cabe por stock.
- «El pack de N uds excede lo pendiente (M)» — estás escaneando una caja donde caben menos.
- «Código pertenece a otro artículo. Cambiando…» — la app salta sola al artículo correcto.
- «Vas muy rápido: marca un poco más despacio para no saturar el guardado.» (packing).
- «Código no asociado a artículos pendientes de esta preparación» (modal dropshipping).
- «Artículo no encontrado en este pedido de compra» (entrada de almacén).
- «Caja GS1 no dada de alta en ALO (…)», con el GTIN-14 de la caja entre paréntesis — has leído una caja cuyo código no está en ALO: no se suma nada (A.10.6).
A.10.5 El modal «Añadir por código de barras» (la pantalla auxiliar)
Es la pantalla del escaneo múltiple y la que resuelve «piden 5 y el código vale 1». No se invoca desde ningún botón: la abre la app cuando un disparo deja unidades pendientes.
Cuándo se abre (picking): tras localizar el artículo destino,
| Situación | Qué hace |
|---|---|
| El pack cabe y completa la línea | Aplica y se queda en la pantalla principal. No abre el modal. |
| El pack cabe pero quedan pendientes | Aplica el pack y abre el modal (sin preseleccionar el código ya aplicado). Es el caso de «piden 5, el código vale 1». |
| El pack no cabe (excede lo pendiente o el stock) | No aplica nada y abre el modal con el aviso, y ese código sin preseleccionar. |
![]()
- Cabecera: nombre e imagen del artículo y el «EAN inicial», el código que abrió el modal.
![]()
- Cuatro métricas y una barra: Recogidas · Necesarias · Restantes · Tras aplicar (
N/total). «Restantes» y «Tras aplicar» son en vivo: cuentan lo seleccionado y todavía sin aplicar. - «Códigos disponibles»: un renglón por código del artículo, ordenados de menor a mayor pack, con el badge «Uds/código: N» y los botones
−/+. - Al pie, un campo para seguir escaneando dentro del modal, y «Cancelar» / «Aplicar (N)».
![]()
+ se deshabilita si al sumar se pasaría de lo pendiente; un código cuyo pack ya excede lo pendiente al abrir el modal sale en rojo con «Excede pendientes». El + auto- aplica en cuanto lo seleccionado iguala exactamente lo pendiente.
«Necesarias» no siempre es lo que pide el pedido: es el techo real mín(unidades necesarias, stock) salvo que la empresa permita stock negativo. Con stock corto, el modal enseña un número menor que la cantidad pedida.
Los dos modales se parecen, y al escanear dentro cada uno trabaja a su manera:
| Picking | Packing | |
|---|---|---|
| Un disparo dentro del modal | Aplica al momento (queda en el historial) y el modal sigue abierto | Va sumando y aplica todo junto al llegar a lo pendiente |
| Lo que cuenta la selección de cada código | Unidades | Veces escaneado (el total es veces × uds/código) |
| Bajo cada código | — | «Seleccionado: N» |
| «Limpiar selección» y «Limpiar» del campo | — | Sí |
| Lectura en el campo del modal | Se confirma con Enter | Se procesa sola al terminar la lectura |
| Métrica 2ª | «Necesarias» (techo del pedido) | «Empaquetadas» sobre lo recogido en picking |
![]()
A.10.6 Etiquetas GS1: lote, peso y cajas
Muchas etiquetas de proveedor no llevan un EAN suelto sino un GS1-128: un solo código de barras con varios datos encadenados, cada uno detrás de su identificador —el artículo (GTIN), el lote, la fecha de caducidad, el peso, las unidades que contiene…—. En ALO suelen estar dados de alta con los identificadores entre paréntesis, (01)08412345678905(10)L2611; el lector los manda sin paréntesis y con un separador invisible entre campos. almacénALO trocea la lectura, saca el artículo que va dentro y lo casa con lo dado de alta en ALO.
Etiqueta con lote, caducidad o peso. Casa con el artículo por su GTIN, esté dado de alta en ALO como EAN-13, como GTIN-14 o como GS1 completo, con paréntesis o sin ellos. El lote, la caducidad y el peso de la etiqueta no cambian lo que se suma: cuentan las unidades del código de ALO que ha casado. Si en ALO el código está dado de alta con un lote concreto, la etiqueta del mismo artículo con otro lote también casa, porque lo que identifica el artículo es su GTIN.
Cajas. El GTIN de una caja empieza por un dígito del 1 al 8 (el 0 es la unidad suelta), y es también el código de 14 cifras que llevan impreso muchas cajas de cartón. Una caja casa solo con un código de ALO que la lleve a ella:
| Lo que lees | Qué pasa |
|---|---|
| Una caja dada de alta en ALO como código del artículo, con sus unidades | Suma las unidades de la caja: la caja de 12, doce. |
| Una caja que no está dada de alta en ALO | Aviso «Caja GS1 no dada de alta en ALO (…)», con su GTIN-14, y no suma nada. En el campo principal y en el modal de códigos del packing queda además anotado como incidencia, igual que un código desconocido. |
Contar una unidad donde hay una caja entera descuadraría el stock y el albarán, y por eso la caja sin alta no suma. Para trabajar con ella, da de alta en ALO el código de la caja como código del artículo, con las unidades que trae; mientras tanto, escanea las unidades sueltas.
El separador de cada empresa. Hay empresas que separan los campos de sus etiquetas con un carácter propio (por ejemplo, una x) en lugar del separador invisible de la norma. Ese carácter se configura en ALO, en el parámetro SeparadorGrupo del grupo ARTICULOS, y almacénALO lo lee de ALO al entrar en la empresa: no hay nada que configurar aquí. Si en ese momento ALO no contesta, el dispositivo usa el último que conoció de esa empresa.
Algunos lectores mandan el separador escrito como el texto «029» en lugar del carácter invisible. almacénALO lo entiende igual, y el Diagnóstico de escaneo (A.10.8) lo señala para que se pueda configurar el lector como manda la norma.
A.10.7 La cámara como escáner
En el móvil y la tablet, la cámara trasera del dispositivo hace de lector. Es más lenta que un lector dedicado y viene bien para quien no lo tiene a mano o para un código suelto.
- El ajuste está en Configuración → «Escanear con la cámara» y solo aparece en teléfonos y tablets; en un ordenador no se ofrece. Viene encendido en los dispositivos con cámara, y lo que elija el operario se respeta siempre. Es del dispositivo, no del empleado ni de la empresa: vale para cualquiera que entre en ese móvil o esa tablet.
- El botón: con el ajuste encendido, cada campo de escaneo de picking, packing y la entrada de almacén (los siete de A.10.2) lleva al lado un botón con el icono de una cámara. También lo lleva el Diagnóstico de escaneo.
- Al tocarlo se abre la ventana «Escanear con la cámara»: «Apunta al código de barras. Se cierra solo al leerlo.» Lo leído entra en el campo y se procesa al momento, igual que un disparo del lector seguido de Intro, con las mismas reglas de este anexo. «Cancelar escaneo» cierra sin leer nada.
- La primera vez, el navegador pide permiso para usar la cámara.
Si la cámara no se puede abrir, la ventana lo dice con uno de estos avisos:
| Aviso | Qué hacer |
|---|---|
| «No hay permiso para usar la cámara. Concédelo en el navegador y vuelve a intentarlo.» | Dar el permiso en los ajustes del navegador para almacénALO. |
| «Este dispositivo no tiene ninguna cámara disponible.» | Usar el lector. |
| «La cámara la está usando otra aplicación.» | Cerrar la otra aplicación y volver a intentarlo. |
| «La cámara no ha arrancado. Ciérrala y vuelve a intentarlo; si sigue, usa el lector.» | Cerrar la ventana y abrirla de nuevo. |
| «La cámara necesita https (o localhost)…» | La aplicación se ha abierto por una dirección IP: entra por su dirección habitual. El lector sí funciona. |
A.10.8 Cuando un código que existe no se encuentra
El Diagnóstico de escaneo de Configuración (capítulo 21) enseña qué ha llegado de verdad del lector o de la cámara y con qué artículo casa, sin sumar nada ni tocar ningún pedido. Escanea ahí el código que da problemas y lee el resultado:
| Lo que dice | Qué significa |
|---|---|
| Recibido, con «N caracteres» | Lo que ha llegado, con los caracteres invisibles a la vista (␝ es el separador GS1). Una longitud mayor de la esperada delata caracteres de más. |
| Caracteres invisibles | Cada uno con su posición y su nombre: «GS (separador GS1)», «TAB», «CR», «LF». |
| GS1 | Cada campo de la etiqueta con su nombre —«GTIN», «Lote», «Fecha de caducidad»…— y su dato. |
| «Hay un identificador sin catalogar: el análisis se detiene ahí.» | La etiqueta trae un campo poco habitual; lo leído hasta ahí vale. |
| La nota del separador de la empresa | Qué carácter tiene configurado la empresa en ALO como separador de campo (A.10.6): se ha tenido en cuenta al trocear. |
| El artículo en verde, con «Código en ALO» y «N ud. por lectura» | Casa: ese es el código de ALO que se usaría y lo que sumaría cada lectura. Con «(equivalente, no idéntico)», casa por su significado y no letra a letra. |
| «Caja GS1 no dada de alta en ALO (GTIN-14 …): no se sumaría.» | Ver la tabla de cajas de A.10.6. |
| «Ningún artículo tiene este código.» | El código no está dado de alta en ALO para ningún artículo de la empresa. |
| «Buscado solo entre los N artículos que este dispositivo tiene en memoria, no en el catálogo entero.» | La búsqueda no ha sido completa: un «no está» aquí no es concluyente. |
| «El catálogo de artículos no está cargado en este dispositivo…» | El código no se ha llegado a buscar: el dispositivo aún no tiene el catálogo de la empresa. |
|
← Anterior
|
Siguiente →
|